- Node, see
.tool-versions
and useasdf
or other system such asnvm
ordocker container
ornix shell
to install and manage. - pnpm for package management
- vitest for testing
- jsdoc and jsdoc-tsd for typescript driven type checking using jsdoc in pure vanilla javascript without transpilation from typescript
pnpm install
chmod +x generateTypes.sh runTests.sh
./runTests.sh
./generateTypes.sh
- Atbash Cipher: O(n)
- Braille Encode/Decode: O(n)
- Ceasars Cipher: O(n)
- Encode Base64: O(n)
- Decode Base64: O(n)
- MD5: O(n)
- Morse Code Encode/Decode: O(n)
- Rail Fence Cipher Encrypt: O(n)
- Rail Fence Cipher Decrypt: O(n)
- ROT5: O(n)
- ROT13: O(n)
- ROT18: O(n)
- ROT47: O(n)
- Shift Key Cipher Encrypt: O(n)
- Shift Key Cipher Decrypt: O(n)
- xOR: O(n)
- xOR Encrypt: O(n)
- xOR Decrypt: O(n)
- Vigenère Cipher Encrypt: O(n)
- Vigenère Cipher Decrypt: O(n)
- Generate Key AES-CBC: O(1)
- Encrypt AES-CBC: O???
- Decrypt AES-CBC: O???
- Generte Key AES-CTR: O(1)
- Encrypt AES-CTR: O???
- Decrypt AES-CTR: O???
- Generate Key AES-GCM: O(1)
- Encrypt AES-GCM: O???
- Decrypt AES-GCM: O???
- Generate Private Key RSA-OAEP: O(n)
- Extract Public Key RSA-OAEP: O(1)
- Encrypt RSA-OAEP: O???
- Decrypt RSA-OAEP: O???
- Babylonian Square Root: O(log(n))
- Calculate Pi: O(√n)
- Circle (Area to Circumference): O(1)
- Circle (Area to Diameter): O(1)
- Circle (Area to Radius): O(1)
- Circle (Circumference to Area): O(1)
- Circle (Circumference to Diameter): O(1)
- Circle (Circumference to Radius): O(1)
- Circle (Diameter to Area): O(1)
- Circle (Diameter to Circumference): O(1)
- Circle (Diameter to Radius): O(1)
- Circle (Radius to Area): O(1)
- Circle (Radius to Circumference): O(1)
- Circle (Radius to Diameter): O(1)
- Fake Pi: O(√n)
- Fibonacci Numbers: O(√n)
- Is Prime: O(√n)
- Newtons Square Root: O(log(n))
- Sieve of Eratosthenes: O(n log(log(n)))
- Sphere (Circumference to Volume): O(1)
- Sphere (Diameter to Volume): O(1)
- Sphere (Radius to Volume): O(1)
- Sphere (Volume to Circumference): O(1)
- Sphere (Volume to Diameter): O(1)
- Sphere (Volume to Radius): O(1)
- Binary Search: O(log(n))
- Fibonacci Search: O(log n)
- Interpolation Search: O(log(log(n)))
- Javascript Built In Default Search: O(n)
- Jump Search: O(√n)
- Linear Search: O(n)
- Bubble Sort: O(n²)
- Bubble Sort Non Mutating: O(n²)
- Bucket Sort: O(n+k)
- Bucket Sort Non Mutating: O(n+k)
- Comb Sort: O(n²)
- Comb Sort Non Mutating: O(n²)
- Counting Sort: O(n+k)
- Counting Sort Non Mutating: O(n+k)
- Cycle Sort: O(n²)
- Cycle Sort Non Mutating: O(n²)
- Gnome Sort: O(n²)
- Gnome Sort Non Mutating: O(n²)
- Heap Sort: O(n log(n))
- Heap Sort Non Mutating: O(n log(n))
- Insertion Sort: O(n²)
- Insertion Sort Non Mutating: O(n²)
- Intro Sort: O(n log(n))
- Intro Sort Non Mutating: O(n log(n))
- Javascript Built In Default Sort (Lexicographic): O(n²)
- Javascript Built In Default Sort Non Mutating (Lexicographic): O(n²)
- Max Sort: O(n²)
- Max Sort Non Mutating: O(n²)
- Merge Sort: O(n log(n))
- Merge Sort Non Mutating: O(n log(n))
- Min Sort: O(n²)
- Min Sort Non Mutating: O(n²)
- Quick Sort Iterative: O(n²)
- Quick Sort Iterative Non Mutating: O(n²)
- Quick Sort Merge: O(n²)
- Quick Sort Merge Non Mutating: O(n²)
- Quick Sort Recursive: O(n²)
- Quick Sort Recursive Non Mutating: O(n²)
- Radix Sort: O(nk)
- Radix Sort Non Mutating: O(nk)
- Selection Sort: O(n²)
- Selection Sort Non Mutating: O(n²)
- Shell Sort: O(n²)
- Shell Sort Non Mutating: O(n²)
- Array Average: O(n)
- Array Cumulative Sum: O(n)
- Array Max: O(n)
- Array Merge: O(n)
- Array Min: O(n)
- Array Most Digits: O(n)
- Array of Numbers: O(n)
- Array Random Shuffle: O(n)
- Number Digit At: O(1)
- Number Digit Count: O(1)
- String Random: O(1)
- String Random Binary: O(1)
- String Random Hexidecimal: O(1)
- String Random Numeric: O(1)
- String Reverse: O(n)
- String Truncate: O(1)
- String UII vX: O(1)
- String UII AlphaNumeric: O(1)
- String UII Hexidecimal: O(1)
- String UII Numeric: O(1)
- String UUID v4: O(1)
- String UUID v8: O(1)