Turnkey ID Utils Typescript
Common Utilities
- Find
- Find with query (based on sift)
- Typeguards
- Date Helpers
- Deepmerge (based on deepmerge-ts)
- EnvLoader
- Model Validator
- Zod Model Validator (based on zod)
- Model Factory
- Normalize Float (precise calculation)
- Randomize / Generate UUID and ObjectID
- String Union Type
- AsyncAwaitMap / ParallelLimit (better parallelism handling)
- isEmpty (with typeguards)
- LoopingCertainTime (advanced setInterval with break point)
- Password Utility
- Currency Utility (based on dinero.js)
- ObjectRecurseImmutable (object nodes walker)
- RetryAsync
- TextFormatting (based on mustache)
- Measuring Performance Util
- Clone Immutable - to prevent any mutation of target object
- ...
Utils
Most of utils won't work on web browser, since it's designed for backend usage.
- EasyFile (read, write)
- PrettyLogger
- EasyExcel
- SecureJWT - JWE Nodejs, easier approach than JOSE.
- Configurator Util
- LokiJS Database Repository Base
- MikroOrm Database Base Util
- typeorm Database Base Util (still in dev)
- Cache Util
- Dataloader Util
- Custom FP Approach HTTP Client Util (based on axios)
Authors
Support
For support, email developer@turnkey.id or join our Discord Channel
or create issue on repository
Build on
- NodeJS: 16.17.0
- TS: 4.9
Compatibility Matrix
Typing | Unit Test | Status | |
---|---|---|---|
Node v14 | ❌ | ❌ | unsupported |
Node v16 | ❌ | ❌ | unsupported |
Node v18 | ✅ | ✅ | OK |
Node v20 | 🚀 | 🚀 | development |
Typescript 4.5 | ❌ | ❌ | unsupported |
Typescript 4.6 | ❌ | ❌ | unsupported |
Typescript 4.7 | ❌ | ❌ | error |
Typescript 4.8 | ✅ | ✅ | OK |
Typescript 4.9 | ✅ | ✅ | OK |
Typescript 5.0 | 🚀 | 🚀 | development |
Typescript 5.1 | 🚀 | 🚀 | development |
Web Browser Support
If you are using web browser or frontend purposes, please use import webUtils from '@turnkeyid/utils-ts/web'
instead.
It may not have all the utils.
Issue
If you find any issue, please create an issue on this repo.
Changelog
Show your support
Give a ⭐️ if this project helped you!