JSPM

  • Created
  • Published
  • Downloads 250
  • Score
    100M100P100Q90724F
  • License Apache-2.0

The library offers flexible, framework-agnostic solutions for modern web applications, built on adaptable components that integrate seamlessly with popular frameworks like Next Js.

Package Exports

  • @daiso-tech/core/backoff-policies
  • @daiso-tech/core/cache
  • @daiso-tech/core/cache/contracts
  • @daiso-tech/core/cache/kysely-cache-adapter
  • @daiso-tech/core/cache/memory-cache-adapter
  • @daiso-tech/core/cache/mongodb-cache-adapter
  • @daiso-tech/core/cache/no-op-cache-adapter
  • @daiso-tech/core/cache/redis-cache-adapter
  • @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/contracts
  • @daiso-tech/core/event-bus/memory-event-bus-adapter
  • @daiso-tech/core/event-bus/no-op-event-bus-adapter
  • @daiso-tech/core/event-bus/redis-pub-sub-event-bus-adapter
  • @daiso-tech/core/event-bus/test-utilities
  • @daiso-tech/core/hooks
  • @daiso-tech/core/lock
  • @daiso-tech/core/lock/contracts
  • @daiso-tech/core/lock/kysely-lock-adapter
  • @daiso-tech/core/lock/memory-lock-adapter
  • @daiso-tech/core/lock/mongodb-lock-adapter
  • @daiso-tech/core/lock/no-op-lock-adapter
  • @daiso-tech/core/lock/redis-lock-adapter
  • @daiso-tech/core/lock/test-utilities
  • @daiso-tech/core/namespace
  • @daiso-tech/core/resilience
  • @daiso-tech/core/semaphore
  • @daiso-tech/core/semaphore/contracts
  • @daiso-tech/core/semaphore/kysely-semaphore-adapter
  • @daiso-tech/core/semaphore/memory-semaphore-adapter
  • @daiso-tech/core/semaphore/mongodb-semaphore-adapter
  • @daiso-tech/core/semaphore/no-op-semaphore-adapter
  • @daiso-tech/core/semaphore/redis-semaphore-adapter
  • @daiso-tech/core/semaphore/test-utilities
  • @daiso-tech/core/serde
  • @daiso-tech/core/serde/contracts
  • @daiso-tech/core/serde/no-op-serde-adapter
  • @daiso-tech/core/serde/super-json-serde-adapter
  • @daiso-tech/core/serde/test-utilities
  • @daiso-tech/core/shared-lock/contracts
  • @daiso-tech/core/shared-lock/kysely-shared-lock-adapter
  • @daiso-tech/core/shared-lock/memory-shared-lock-adapter
  • @daiso-tech/core/shared-lock/mongodb-shared-lock-adapter
  • @daiso-tech/core/shared-lock/no-op-shared-lock-adapter
  • @daiso-tech/core/shared-lock/redis-shared-lock-adapter
  • @daiso-tech/core/shared-lock/test-utilities
  • @daiso-tech/core/time-span
  • @daiso-tech/core/time-span/contracts
  • @daiso-tech/core/utilities

Readme

npm version NPM Downloads Static Badge ES Modules License

@daiso-tech/core

@daiso-tech/core is a TypeScript-first backend library for building web apps and API servers. It includes an ecosystem of official packages designed to work seamlessly together.

Get started now

  • Type safe: We pay a closer look at type-safety, seamless intellisense, and support for auto imports when designing library APIs.

  • ESM ready: @daiso-tech/core leverages modern JavaScript primitives, including ES modules

  • Easily testable: @daiso-tech/core includes built-in vitest helpers for custom adapters and in-memory adapters for all components, enabling testing without Docker.

  • Supports standard schema: Integrated seamlessly with standard schema allowing you to use libraries like zod to ensure both compile time and runtimte typesafety.

A growing collection of officially maintained components

  • Cache: Speed up your applications by storing slowly changing data in a cache store.

  • EventBus: Easily send events accross different applications or in-memory.

  • Distributed lock: Synchronize the access to a shared resource to prevents several processes, or concurrent code, from executing a section of code at the same time.

  • Distributed semaphore: A semaphore is a concurrency control primitive used to limit the number of processes or systems that can access a shared resource of code concurrently.

  • Distributed shared lock: A shared lock (a.k.a reader writer lock) is a concurrency primitive offering better concurrency than a lock by coordinating a reader semaphore for concurrent access and an writer lock for mutual exclusion, strictly preventing conflicting simultaneous access and maintaining data consistency.

  • Serde: Add custom serialization and deserialization logic that seamlessly integrates with all other components.

  • Collection: Effortlessly work with Arrays, Iterables, and AsyncIterables. Filter and transform with precision.

  • Hooks: Extend any sync and async function with agnostic hooks.@daiso-tech/core includes predefined retry, fallback, timeout and hedging hooks to easily allow handling transient failures.