Compare

Fewer, smaller, auditable dependencies

Every @lacspace package ships zero runtime dependencies, runs isomorphically, and outputs dual ESM + CJS with types. Search the table, switch your package manager, and copy the install.

0runtime deps
63packages
ESM+CJSdual output
100%TypeScript
Isonode · edge · browser
Freelicence
16 of 16
Reach forInstead ofCategoryWhyInstall
@lacspace/validatezodValidationSame parse / safeParse ergonomics, zero dependencies.
npm i @lacspace/validate
@lacspace/moneydinero.js · currency.jsMoneyInteger minor units — no floating-point cent bugs.
npm i @lacspace/money
@lacspace/jwtjsonwebtokenAuth tokensStrict expiry / issuer / audience by default, over Web Crypto.
npm i @lacspace/jwt
@lacspace/cryptocrypto-jsCryptographyReal AES-256-GCM via SubtleCrypto, not a JS reimplementation.
npm i @lacspace/crypto
@lacspace/mailernodemailerEmail (SMTP)Tiny SMTP client over raw net/tls, no dependency tree.
npm i @lacspace/mailer
@lacspace/storezustandReact state~1KB, selector-based, no provider — built on useSyncExternalStore.
npm i @lacspace/store
@lacspace/queryswr · react-queryData fetchingShared cache + dedupe + SWR in a fraction of the size.
npm i @lacspace/query
@lacspace/xlsxexceljsSpreadsheetsWrite real .xlsx with zero deps and no headless browser.
npm i @lacspace/xlsx
@lacspace/pdfpdfkit · puppeteerPDFGenerate invoices & receipts without a headless browser.
npm i @lacspace/pdf
@lacspace/markdownmarked · markdown-itMarkdownSafe MD → HTML with GFM, no plugin sprawl.
npm i @lacspace/markdown
@lacspace/iduuid · nanoidIDsUUID v4/v7, nano-id-style and short codes in one package.
npm i @lacspace/id
@lacspace/cachelru-cacheCachingLRU + TTL + stale-while-revalidate + memoize wrapper.
npm i @lacspace/cache
@lacspace/humanizepretty-bytes · ms · numeralFormattingBytes, durations, relative time and ordinals in one.
npm i @lacspace/humanize
@lacspace/seonext-seoSEOTyped metadata AND schema.org JSON-LD from one config.
npm i @lacspace/seo
@lacspace/rate-limitexpress-rate-limitRate limitingFramework-agnostic, fixed / sliding window & token bucket.
npm i @lacspace/rate-limit
@lacspace/retryp-retryResilienceBackoff + jitter, per-call timeouts and a circuit breaker.
npm i @lacspace/retry
Honest framing: these aren't drop-in clones of the libraries they replace — they're smaller, focused takes with zero dependencies. Reach for them when the extra surface area (and supply chain) of the bigger library isn't worth it. When you need the full feature set of a mature library, use it.