Skip to main content
Deno 2 is finally here 🎉️
Learn more

good-js

My Generic Javascript Toolbox

import DateTime from "https://deno.land/x/good@1.2.0.3/date.js"
import { zip, enumerate, count, permute, combinations, wrapAroundGet } from "https://deno.land/x/good@1.2.0.3/array.js"
import { intersection, subtract } from "https://deno.land/x/good@1.2.0.3/set.js"
import { stats, sum, spread, normalizeZeroToOne, roundedUpToNearest, roundedDownToNearest } from "https://deno.land/x/good@1.2.0.3/math.js"
import { capitalize, indent, toCamelCase, digitsToEnglishArray, toPascalCase, toKebabCase, toSnakeCase, toScreamingtoKebabCase, toScreamingtoSnakeCase, toRepresentation, toString, escapeRegexMatch, escapeRegexReplace } from "https://deno.land/x/good@1.2.0.3/string.js"
import { generateKeys, encrypt, decrypt, hashers } from "https://deno.land/x/good@1.2.0.3/encryption.js"
import { deferredPromise, recursivePromiseAll } from "https://deno.land/x/good@1.2.0.3/async.js"
import { Event, trigger, everyTime, once } from "https://deno.land/x/good@1.2.0.3/events.js"
import { recursivelyAllKeysOf, get, set, remove, merge, compareProperty } from "https://deno.land/x/good@1.2.0.3/object.js"
import { deepCopy, allKeyDescriptions, deepSortObject, shallowSortObject, isGeneratorType } from "https://deno.land/x/good@1.2.0.3/value.js"
import { iter, next, Stop, Iterable, zip, count, enumerate, permute, combinations, slices, asyncIteratorToList, concurrentlyTransform, forkAndFilter } from "https://deno.land/x/good@1.2.0.3/iterable.js"
import { parseCsv, createCsv } from "https://deno.land/x/good@1.2.0.3/csv.js"

How to use

Use intellisense, view the docs, or take a look at the tests for how to use

Versioning

1.2.3.4

  • 1st number is API overhaul
  • 2nd number is breaking change
  • 3rd number is new (backwards compatible) feature
  • 4th number is patch/bugfix