Package Exports
- @daiso-tech/core/async
- @daiso-tech/core/cache
- @daiso-tech/core/cache/adapters
- @daiso-tech/core/cache/contracts
- @daiso-tech/core/cache/test-utilities
- @daiso-tech/core/collection
- @daiso-tech/core/collection/contracts
- @daiso-tech/core/event-bus
- @daiso-tech/core/event-bus/adapters
- @daiso-tech/core/event-bus/contracts
- @daiso-tech/core/event-bus/test-utilities
- @daiso-tech/core/lock
- @daiso-tech/core/lock/adapters
- @daiso-tech/core/lock/contracts
- @daiso-tech/core/lock/test-utilities
- @daiso-tech/core/serde
- @daiso-tech/core/serde/adapters
- @daiso-tech/core/serde/contracts
- @daiso-tech/core/serde/test-utilities
- @daiso-tech/core/utilities
Readme
@daiso-tech/core
Installation
npm install @daiso-tech/core
Description
The library provides modular solutions for the essential features needed in modern web applications. Stop wasting time searching for packages or reinventing the wheel — this framework-agnostic library, built on adaptable components, works well with popular frameworks like Express.js, Fastify, Next.js, Nuxt.js, SvelteKit, and Remix.
Current Library Features:
- Immutable collection components:
- Immutable IterableCollection that simplifies working with Iterable.
- Immutable ListCollection that simplifies working with Array.
- Immutable AsyncIterableCollection that simplifies working with AsyncIterable.
- LazyPromise with support for:
- Aborting it manually by using AbortSignal.
- Aborting it by timeout.
- Easily retrying when it fails
- Cache component with support for pluggable adapters.
- Lock component with supports for pluggable adapters.
- EventBus component with support for pluggable adapters.
In the future the following components will be added:
- Command bus
- Semaphore component
- SharedLock (ReaderWriterLock) component
- RateLimter component
- CircuitBreaker component
- MessageQueue component
- TaskScheduler component
- Notification component
- Abstract file system component
NOTE !!: This library only supports ESM (ecmascript) module.
NOTE !!: This library is under construction and breaking changes can occur.
Inspiration
This library is inspired by Laravel and built with a modular design, so you can use only the parts you need.
It also integrates ideas from other libraries:
- Symfony components, PHP
- Verrou, TypeScript
- Distributed lock, C#
- Bento cache, TypeScript
- Fusion cache, C#
- Polly, C#