TypeScript libraries
I use ts-lib-starter template for my TS libraries which I then publish with kanpai. ncu is nice for updating packages. Rush stack + pnpm are amazing.
tsup is great too for bundling TS libs.
DB
- SchemaRT - Generate TypeScript runtime types from your database schema.
- joist-ts - TypeScript ORM for Postgres.
- atdatabases - TypeScript clients for databases that prevent SQL Injection. (Web)
- Mammoth - Type-safe Postgres query builder for TypeScript.
- Schemats - Postgres to TypeScript Interfaces and Enums. (HN)
- sql-dsl - SQL DSL for your Node App.
- IDB-Keyval - Super-simple-small promise-based keyval store implemented with IndexedDB.
- squid - SQL tagged template strings and schema definitions for JavaScript & TypeScript.
- KVS - Lightweight key-value storage library for Browser, Node.js, and In-Memory.
- Kysely - Type-safe typescript SQL query builder.
- Keydb - Simple Key-value storage module with support for multiple database backends.
- shapes/core - Type-safe DSLs and ORMs for TypeScript.
- pg-magic - TypeScript type generator for PostgreSQL queries.
- Potygen - Postgres SQL Parser and type generator.
- sqltyper - TypeScript types for raw PostgreSQL queries.
- Owl - High-performance, redis-backed job queueing library originally built for Quirrel.
- Cuery - Composable SQL query builder using template literals.
- pg-to-ts - Generate TypeScript interface definitions from your Postgres schema. (Example App)
- gokv - Global Key-Value store for serverless at edge that is built on top of Cloudflare edge network. Druable, low-latency, and easy to use.
- postgres-schema-ts - Convert Postgres schemas into TypeScript interfaces.
- lru-ttl-cache - Super fast Optimized in memory LRU and TTL cache. Can store permanent entries too.
- cachu - Simple, Minimalistic KV Cache.
- IndexedDB KeyStore - In-browser key management with IndexedDB and the Web Crypto API.
- Rapid-CG - Database access layer that relies on code generation to provide a strongly-typed database client.
- TypeORM - ORM for TypeScript and JavaScript. (TypeORM naming strategies) (TypeORM Tutorial)
- Safe-TypeORM - TypeORM helper library enhancing safety in the compilation level.
Web
- tRPC - TypeScript toolkit for building end-to-end typesafe APIs. (Web) (Tutorial) (HN)
- typed-rest-client - Lightweight REST and HTTP client optimized for use with TypeScript with generics and async await.
- Ts.ED - Node.js and TypeScript Framework on top of Express/Koa.js.
- Axios-Fetch - WebAPI Fetch implementation backed by an Axios client.
- Voby - High-performance framework for writing web apps.
- Candid - Unopinionated, frameworkless JavaScript library for building web applications.
- Deepkit - High-Performance TypeScript Framework. (Web) (HN) (Deepkit OpenAPI)
- Chemin - Type-safe pattern builder & route matching library written in TypeScript.
- FRANXX - Vanilla JavaScript router that works everywhere.
- Unrouted - Minimal, composable router built for speed, portability and DX.
- mande - Simple, light and extensible wrapper around fetch with smart defaults.
- swrr - Stale While Revalidated Resources — keeps data fast.
- Presencejs - JavaScript library that allows you to build real-time web applications quickly, the server is built atop of YoMo.
- micromorph - Very tiny library for diffing DOM nodes.
- routing-controllers - Create structured, declarative and beautifully organized class-based controllers with heavy decorators usage in Express / Koa using TypeScript and Routing Controllers Framework.
- ts-elmish - Elmish architecture in Typescript.
- blockdom - Fast virtual DOM library.
- Zodios - TypeScript HTTP client with zod validation.
- teeny-request - Like request, but tiny. Fetch under the hood.
- mini-throttle - Small JavaScript throttle & debounce implementation.
- Express Zod API - Typescript library to help you get an API server up and running with I/O schema validation and custom middlewares in minutes.
- Spot - Concise, developer-friendly way to describe your API contract.
- PostHTML Render - Render PostHTMLTree to HTML/XML.
- Ionic - Enterprise App Development & Delivery Platform. (Code) (Twitter) (Tweet)
- htstream - Streaming HTTP parser.
- Frugal - Web framework with resource sparing in mind. (Web)
- ApiDOM - Semantic parser for API specifications.
- ChiselStrike - Modern backend development framework for JavaScript/TypeScript applications. (Web)
- Boost.ts - DOM, events and animations library for modern browsers.
- gaxios - HTTP request client that provides an axios like interface over top of node-fetch. Super lightweight. Supports proxies and all sorts of other stuff.
- Exegesis OpenAPI Engine - Tools for implementing server-side OpenAPI 3.0.0.
- aspida - TypeScript friendly HTTP client wrapper for the browser and node.js.
- Purity - Declarative State & DOM Manager.
- response-multipart - Standards-inspired multipart/* parsing. It's like response.text() but for multipart bodies.
- uttp - Write your request handlers once, run anywhere.
- ts-liveview - Build hybrid SSG and SSR real time SPA/MPA with Typescript.
- Sunmao - Framework for Developing Low-code Tool.
- waystone - MPAs that feels like SPAs.
- Axentix - Framework mixing fully customizable components and utility-first classes, leaving the design choice to the developer. (Web)
GraphQL
- GraphQL Query Builder - Simple helper function to generate GraphQL queries using plain JavaScript Objects (JSON).
Test
- TS auto mock - Typescript transformer to unlock automatic mock creation for interfaces and classes.
- intermock - Mocking library to create mock objects and JSON for TypeScript interfaces via Faker.
- Typical Data - Test data factory written in TypeScript.
- Nano Spy - Tiny Node.js library to spy and mock methods in tests with great TypeScript support.
- tinyspy - Minimal fork of nanospy, with more features.
- test-data-bot - Generate fake yet realistic looking data for your unit tests.
- Interface-Forge - Graceful mock-data and fixtures generation using TypeScript.
- Axon - Aids developers with Express.js based applications to autogenerate integration tests and Postman Collections by extracting RESTful API endpoints from your source code.
- uncreate - Minimal, type-safe REST client using JS proxies.
- TSArch - Architecture unit test framework for Typescript.
- wait-for-expect - Wait for expectation to be true, useful for integration and end to end testing.
- fs-fixture - Easily create test fixtures at a temporary file-system path.
- hanbi - Small and simple library for stubbing and spying on methods and functions in JavaScript tests.
- user-event - Fire events the same way the user does.
Auth
- jwt-cache - Cache an async function for generating a JSON Web Token.
Animation
- Motion Signals - Wrapper over Motion One.
Math
- Fermat.ts - Mathematics and statistics library for TypeScript.
- matrix-ts - fp-ts style mathematics library featuring: linear algebra, numerical methods, polynomials, and statistics.
CLI
- cmd-ts - Type-driven command line argument parser, with awesome error reporting.
- Pero - Easy to use route-based tool for building large-scale command-line interfaces.
- terminal-columns - Render readable tables in the terminal.
- Soly - Powerful framework for building command-line apps with typescript.
- Clii - Write some functions, JSDoc it, clii automatically turns it into a cli.
Crypto
- noble-ed25519 - Fastest JS implementation of ed25519 / ristretto255. High-security, auditable, 0-dependency EDDSA signatures and public keys.
- Serenity Tools - Collection of tools to build secure Apps.
- opaque-ts - TypeScript library for OPAQUE Asymmetric Password-Authenticated Key Exchange Protocol.
- charm.js - Tiny, self-contained cryptography library, implementing authenticated encryption and keyed hashing.
- noble-bls12-381 - Fastest JS implementation of BLS12-381. Auditable, secure, 0-dependency aggregated signatures & pairings.
- Web Crypto Tools - Set of tools to facilitate and give good defaults for use of the native Web Crypto API.
- zkp-ecdsa - Proves knowledge of an ECDSA-P256 signature under one of many public keys that are stored in a list.
Error
- ts-pojo-error - Type safe pojo error will help you to easily create typed and serializable error.
- retry-ts - Retry combinators for monadic actions that may fail.
- Erreur - Type safe custom errors.
Other
- ow - Argument type validation.
- ts-toolbelt - Higher type safety for TypeScript.
- morphic-ts - Adresses the pain of writing and maintaining derived code for business logic.
- ts-results - TypeScript implementation of Rust's Result object.
- TSDataStructure - Collection of data structures(LinkedList, DoubleLinkedList, Stack, Queue, Dictionary and etc...) for TypeScript.
- fp-ts - Functional programming in TypeScript. (Functional TypeScript With fp-ts) (eslint-plugin-fp-ts) (Cheat Sheet) (Learn fp-ts)
- fp-ts-contrib - Community driven utility package for fp-ts.
- io-ts - Runtime type system for IO decoding/encoding. (Web)
- typescript-utilities-guide - List of typescript helper libraries.
- tsdef - TypeScript common pattern shortcut definitions / utility gist library.
- ts-auto-guard - Generate type guard functions from TypeScript interfaces.
- ts-adt - Generate Algebraic Data Types and pattern matchers.
- ts-mockito - Mocking library for TypeScript.
- class-validator - Validation made easy using TypeScript decorators.
- List - Immutable list with unmatched performance and a comprehensive functional API.
- Photon - Type-safe database client for TypeScript & Node.js (ORM replacement).
- ts-essentials - All basic TypeScript types in one place.
- ts-transformer-keys - TypeScript custom transformer which enables to obtain keys of given type.
- ts-prune - Find unused exports in a typescript project.
- byots - Bring your own TypeScript with more internal definitions.
- is - Type check values.
- sql-ts - Generate TypeScript types from a SQL database.
- Mostly ORMless - Ergonomic Postgres from TypeScript.
- Unionize - Boilerplate-free functional sum types in TypeScript.
- zod - Typescript-first schema validation with static type inference.
- myzod - Schema Validation with typescript type inference.
- utility-types - Collection of utility types, complementing TypeScript built-in mapped types and aliases.
- fetcher-ts - Type-safe wrapper around Fetch API.
- gretchen - Making fetch happen in TypeScript.
- matechs-effect - Fully-fledged functional effect system for typescript with a rich standard library.
- Funval - Minimalist library for data validation using functions interfaces.
- tsParticles - Lightweight TypeScript library for creating particles.
- Clack - Modern keyboard shortcut library written in Typescript.
- fx-ts - Computational environments and effects for TypeScript.
- Gostek - 100% typesafe SQL querybuilder.
- connection-string - Advanced URL Connection String parser.
- Purify - Functional programming library for TypeScript.
- monocle-ts - Functional optics: a (partial) porting of Scala monocle.
- ts-interface-checker - Runtime library to validate data against TypeScript interfaces.
- ts-mysql-plugin - : A typescript language service plugin that gives superpowers to SQL tagged template literals.
- hyper-ts - Type safe middleware architecture for HTTP servers.
- PgTyped - Makes it possible to use raw SQL in TypeScript with guaranteed type-safety.
- Zapatos - Zero-Abstraction Postgres for TypeScript. (Docs)
- tagged-ts - Tagged unions code generation library for discriminating tastes.
- Monads - Type safe Option, Result, and Either types; inspired by Rust.
- typecheck.macro - Easy (and fast) typescript validation library/macro. Automatically generation validation functions for Typescript types.
- typed-assert - Typesafe TS assertion library.
- TS Pattern - Complete Pattern Matching library for TypeScript, with smart type inference.
- TSyringe - Lightweight dependency injection container for TypeScript/JavaScript for constructor injection.
- tslib - Runtime library for TypeScript helpers.
- NeverThrow - Type-Safe Errors for JS & TypeScript. (Chaining Failable Tasks)
- TypeORM fixtures CLI - Allows you to create a ton of fixtures/fake data for use while developing or testing your project.
- ts-union - ADT sum type in typescript.
- Kiss-ORM - ORM for TypeScript with no query-builder, supporting full SQL queries. (HN)
- Decoder - Powerful, well tested, data decoder for Typescript.
- openapi-typescript - Generate TypeScript types from Swagger OpenAPI specs.
- Conditional Type Checks - Types for testing TypeScript types.
- ts-simple-type - Relationship type checker functions for Typescript types. (Fork)
- newtype-ts - Implementation of newtypes in TypeScript.
- fluent-builder - Typed, fluent builder for generating fixtures in Typescript.
- xstate-codegen - Gives you 100% type-safe usage of XState in Typescript.
- useFsmReducer - useReducer for state machine enthusiasts.
- tydoc - TypeScript documenter that meets you where you are.
- Setset - Powerful Incremental Type-driven Settings Engine.
- Suub - Simple pub/sub written in TypeScript.
- typescript-vscode-sh-plugin - TypeScript plugin that proves richer semantic highlighing.
- oazapfts - Generate TypeScript clients to tap into OpenAPI servers.
- pattern-matching-ts - Pattern matching in TypeScript.
- txstate - Effort to statically type xstate.
- RemoteData type - ADT (algebraic data type) for typing remote data.
- Predicate Domain Specific Language - Expressive declarative toolkit for composing predicates in TypeScript or JavaScript. (Docs)
- True Myth - Library for safer and smarter error- and "nothing"-handling in TypeScript.
- appy - Functional wrapper around Fetch API.
- Barrels - Automatic TypeScript barrels (index.ts files) for your entire code base.
- optics-ts - Type-safe, ergonomic, polymorphic optics for TypeScript.
- set-fns - Utility library for working with sets.
- logging-ts - Composable loggers for TypeScript.
- typescript-is - TypeScript transformer that generates run-time type-checks.
- typed-query-selector - Better typed
querySelector
andquerySelectorAll
. - typeofweb/schema - Lightweight and extensible library for data validation with full support for TypeScript.
- Typical - Playground for type-level primitives in TypeScript.
- typelevel-ts - Type level programming in TypeScript.
- Type Zoo - Menagerie of useful type operators for TypeScript.
- REST Services for Typescript - Lightweight annotation-based expressjs extension for typescript.
- elm-ts - Porting of The Elm Architecture to TypeScript featuring fp-ts, RxJS and React.
- ts-union-tools - Set of minimal utilities to work with union types and tagged unions in TypeScript.
- ts-nameof - nameof in TypeScript.
- prex - Asynchronous coordination for JavaScript and TypeScript.
- Purifree - Pointfree type-safe functional programming library for TypeScript - with do notation, HKTs, generic lifts and more.
- valita - Typesafe validation & parsing library for TypeScript.
- Tick-Knock - Small and powerful, type-safe and easy-to-use Entity-Component-System (ECS) library written in TypeScript.
- gridstack.js - Mobile-friendly modern Typescript library for dashboard layout and creation. (Web)
- SheetQuery - Query Builder/ORM for Google Sheets.
- immutability-helper - Mutate a copy of data without changing the original source.
- nom-ts - TypeScript nominal-typing helpers.
- generic-type-guard - Type safe, composable type guards for TypeScript.
- type-plus - Additional types and types adjusted utilities for TypeScript.
- DDD - Domain Driven Design framework for software simplicity in node.
- ts-checked-fsm - TypeScript library providing compile-time checking for state machine transitions.
- resolvers - Validation resolvers: Zod, Yup, Joi, Superstruct, Vest, class-validator, io-ts, and nope.
- json-schema-to-ts - Infer TS types from JSON schemas.
- meros - Fast utility that makes reading multipart responses simple.
- storage - Various implementation of storage which implements API similar to the 'localStorage.'.
- mswjs/data - Data modeling and relation library for testing JavaScript applications.
- WolfECS - Powerful, lightweight Entity Component System framework written in Typescript.
- typed-regex - TypeScript library for type-safe regex for named capture groups.
- JSON bond - Type-safe JSON strings.
- Cockatiel - Resilience and transient-fault-handling library.
- ts-to-zod - Generate Zod schemas from Typescript types/interfaces.
- native - Initiative which aims to make it easy to create complex, light-weight, and performant web applications using modern JS API's.
- prelude-ts - TypeScript library which aims to make functional programming concepts accessible and productive in TypeScript.
- Euclid.ts - Typescript library for 2D geometry.
- Superstruct - Simple and composable way to validate data in JavaScript (and TypeScript).
- async-off - Make asynchronous TypeScript code synchronous.
- Earl - Ergonomic, modern and type-safe assertion library for TypeScript. (Web)
- FS Capacitor - Filesystem-bufferred, passthrough stream that buffers indefinitely rather than propagate backpressure from downstream consumers.
- rustic - TypeScript library providing emulation of Rust's Option and Result types. (Reddit)
- log-editor - Use your editor to inspect the log instead of scrolling the congested terminal.
- text-unicode - Unicode text OT implementation.
- optimistic-state - Optimistic state with rollbacks and race condition handling.
- ts-mixer - Small TypeScript library that provides tolerable Mixin functionality.
- PointerTracker - Track mouse/touch/pointer events for a given element.
- Yield Machine - Define State Machines using Generator Functions.
- KBar - Add a fast, portable, and extensible command+k interface to your site. (Web) (Tweet)
- Postel - Tiny library for building tooltips, flyovers, menus and more in React. (Article)
- pattern-matching - Provides pattern matching features typically found in functional languages like Elixir/Erlang, ML, F#, etc.
- H3 - Minimal HTTP framework built for high performance and portability.
- Zerva - Minimal event driven web service infrastructure. (Module Template)
- Zeed Library - Simple TS/JS Foundation Library.
- UCAST - Universal Conditions AST. (Examples)
- ts - Monorepo of typescript projects.
- urlpack - Pure JavaScript toolkit for data URLs (MessagePack, Base58 and Base62).
- miette - Fancy upgrade to console.log.
- construct-js - Library for creating byte level data structures.
- yieldparser - Parse using JavaScript generator functions — it’s like components for parsing.
- tsafe - Missing TypeScript builtins.
- better-typescript-lib - Better TypeScript standard library.
- class-transformer - Decorator-based transformation, serialization, and deserialization between objects and classes.
- Funfix - Functional Programming Library for JavaScript, TypeScript.
- typeconv - Convert between JSON Schema, TypeScript, GraphQL, Open API and SureType.
- multicloud-jwt - JWT that works both on AWS and GCP's KMS.
- ts-extras - Essential utilities for TypeScript projects.
- Cacheables - Simple in-memory cache written in Typescript with automatic cache invalidation and an elegant syntax.
- Spatial Keyboard Navigation - Visual hierarchy approach to navigate through selectable elements on a page. (Article) (HN)
- OpenCensus - Stats collection and distributed tracing framework.
- Config Validator Policy - Library of constraint templates and sample constraints for Forseti Config Validator.
- safety-match - Rust-style pattern matching for TypeScript.
- tsutils - Utility functions for working with typescript's AST.
- as-typed - Static TypeScript types from a literal JSONSchema type.
- fast-sort - Blazing fast array sorting with TypeScript support.
- NativeScript plugins
- Trie - Fast trie implementation for TypeScript.
- Effect-TS - Fully-fledged functional effect system for typescript with a rich standard library.
- Effect-TS - Query - Efficient pipelining, batching, and caching to any data source (port of zio-query).
- Effect-TS - Schema - Next Gen Data Modelling.
- Typanion - Static and runtime type assertion library with no dependencies.
- maath - Math helpers for the rest of us.
- Typed-Emitter - Strictly typed event emitter interface for TypeScript.
- parser-ts - String parser combinators for TypeScript.
- koan-chunked - Helper functions to create and apply chunks.
- XActor - Actor model implementation for JavaScript and TypeScript, heavily inspired by Akka.
- typescript-monads - Write safer TypeScript using Maybe, List, Result, and Either monads.
- Splide - Lightweight, flexible and accessible slider/carousel written in TypeScript. No dependencies, no Lighthouse errors.
- Decoders - Elegant and battle-tested validation library for type-safe input data for TypeScript.
- B+ tree - B+ trees are ordered collections of key-value pairs, sorted by key.
- Arcsecond - Zero Dependency Parser Combinator Library for JS Based on Haskell's Parsec.
- Freehold - Library to help users gain freehold of their data, using in-browser cryptography coupled with the power of popular crypto wallets.
- cancelable-promise - Simple Cancelable Promise.
- pkg-types - Node.js utilities and TypeScript definitions for package.json and tsconfig.json.
- vscode-textbuffer - Text buffer used in VS Code/Monaco.
- TS-Collection - Performant Algorithms and Data-Structures for the Web & NodeJS. (Docs)
- tldraw/intersect - 2D intersection utilities for TLDraw and maybe you, too.
- typesafe-i18n - Opinionated, fully type-safe, lightweight localization library for TypeScript and JavaScript projects with no external dependencies.
- queueable - Convert streams to async iterables.
- sequelize-typescript - Decorators and some other features for sequelize.
- tiny-invariant - Takes a value, and if the value is falsy then the invariant function will throw.
- tinykeys - Tiny (~400 B) & modern library for keybindings.
- Algebraify - Algebraic effects library for JS and TS using generators.
- defu - Assign default properties, recursively.
- FxTS - Functional library for TypeScript/JavaScript programmers. (Web)
- tsconfck - Utility to find and parse tsconfig files without depending on typescript.
- proxy-compare - Compare two objects using accessed properties with Proxy.
- fnts - Minimal Functional Programming Utilities for TypeScript & JavaScript. (Docs)
- Crunker - Simple way to merge or concatenate audio files with the Web Audio API.
- static-path - Uses the type system to prevent 404s at compile time.
- ts-belt - Fast, modern, and practical utility library for FP in TypeScript. (Docs)
- std - Some Haskell Prelude functions in TS.
- async-sema - Semaphore using
async
andawait
. - Suretype - Typesafe JSON (Schema) validator.
- Already - Utility functions for promises; finally, map, filter, etc.
- Commonly - Modern utility library for JavaScript/TypeScript.
- rian - Effective tracing for the edge and origins.
- Foy - Simple, light-weight, type-friendly and modern task runner for general purpose.
- fp-ts-std - Missing pseudo-standard library for fp-ts. Supports both modern browsers and Node.
- deep-proxy - Deep proxy implementation for TypeScript.
- ts-runtime - Runtime Type Checks for TypeScript. (Playground)
- Dastal - Data structures & algorithms implementations in TypeScript.
- base64-arraybuffer - Encode/decode base64 data into ArrayBuffers.
- ts-shift - Generate efficient, TypeScript-friendly value validators from TypeScript types.
- logger - Zero dependency, light-weight, blazing fast customizable logging library.
- pacote - Box of goodies, in TypeScript.
- refa - Library for finite automata and regular expressions in the context of JS RegExp.
- msagl-js - JavaScript graph layout library.
- Curved Arrows - Draw S-curved arrows between points or shapes.
- ufo - URL utils for humans.
- murmurhash-es - ESM version of murmurhash v2 and v3.
- Repeater.js - Missing constructor for creating safe async iterators.
- pattern-select - Simple pattern matching in Typescript. (Article)
- scanner - Document scanning from scratch.
- penpal - Promise-based library for securely communicating with iframes via postMessage.
- unconfig - Universal solution for loading configurations.
- od - Nice date library.
- memoize - Higher-order memoization function.
- Rallie - Library that helps users implement decentralized front-end micro service architecture.
- tree-visit - Tree traversal library.
- filespy - Spy on files.
- pubble - TypeScript implementation of event-driven proxy state.
- DIGL - JavaScript Directed Graph auto-layout algorithm.
- concurrently.macro - Transforms your async function to be run concurrently much as possible.
- Routz - Define your SPA routes in a single source of truth - use them everywhere.
- predicate - eDSL to write typed predicates.
- Elderform - Form creation made easy, backed by state machines.
- zod-to-ts - Generate TypeScript types from your Zod schema.
- Typed Inject - Type safe dependency injection for TypeScript.
- p - Tools for handling promises.
- Sunflake - Zero dependency, lightweight, snowflake generator.
- glob-bus - 249 byte pub/sub event bus with namespaced wildcard support.
- bar-of-progress - Small, easy & zero-dependency progress bar component.
- Entity - Privacy-aware data layer for defining, caching, and authorizing access to application data models. (Tweet)
- perfect-cursors - Perfect interpolation for animated multiplayer cursors. Used in tldraw.
- reactive-fs - Reactive filesystem interface based on Vue 3 reactivity system.
- Omick - Tiny, type-safe pick and omit functions.
- Publer - Tiny, type-safe pubsub library.
- Typed - Smallest runtime type-checking library ever made.
- rsts - Naive port of Rust's Result and Option types written in TypeScript.
- Union Types - Typescript library for creating discriminating union types.
- spectacles-ts - Practical Optics • Unfancy monocle-ts.
- Falso - All the Fake Data for All Your Real Needs.
- SDF-2D - Graphics library to enable the real-time rendering of 2D signed distance fields on the web.
- Tsconfig Type - Always up-to-date tsconfig.json type, transformed from its JSON Schema Store definition.
- aribb24 - HTML5 subtitle renderer.
- TinyBase - Tiny, reactive JavaScript library for structured state and tabular data. (Web) (HN)
- Danfo.js - JavaScript library providing high performance, intuitive, and easy to use data structures for manipulating and processing structured data. (Docs)
- Algolia Filters Query Builder - Parser for having a structured way for querying algolia similar to well known ODMs or ORMS.
- bitstream - Powerful bitstream library for TypeScript. (HN)
- c12 - Smart Config Loader.
- Dialogic - Manage dialogs and notifications.
- Offset Polygon - Small, no dependency library for offsetting polygons.
- TS Expect - Checks values in TypeScript match expectations.
- observable-fns - Light-weight observable implementation and functional utilities in TypeScript.
- Colormath.js - Color conversion and color manipulation library written in typescript for Node.js, Deno and Browser.
- simplex-noise.js - Simplex noise implementation in JavaScript/TypeScript.
- until - Gracefully handle Promises using async/await without try/catch.
- outvariant - Type-safe implementation of invariant with positionals.
- EventEmitter - Mirror that restricts emitting/handling events other than specified in an interface.
- ts-regexp - Regular expressions matching at compile time with TypeScript.
- sanitize-url
- typescript-rtti - Emits Typescript metadata for use at runtime.
- principia.ts - TypeScript functional programming.
- Behavior Graph - Software architecture and state management library.
- Effection - Framework for Node and the browser that makes building concurrent systems easy to get right.
- Pintora - Extensible JavaScript text-to-diagrams library that works in both browser and Node.js.
- muse-js - Muse 1, Muse 2, and Muse S EEG Headset JavaScript Library (using Web Bluetooth).
- Human-ID - Generates human readable identifier strings by chaning common (short) words of the english language.
- opentelemetry-instrumentations-js - JavaScript extensions for the OpenTelemetry project.
- Resize Observer - Polyfills the ResizeObserver API.
- Effector History - Utility library that implements undo/redo feature for you.
- ts-dependent-types - Experimental collection of dependent type definitions in TypeScript.
- ms - Tiny millisecond conversion utility.
- jsSHA - TypeScript/JavaScript streaming implementation of the complete Secure Hash Standard (SHA) family.
- miniplex - Joyfully minimal riff on ECS with a focus on Developer Experience.
- Telescopic Text - Open-source library to help with creating expandable text.
- ZenJSON - Parse and serialize special types into JSON-compatible data.
- literal-parser - Small library to parse JavaScript array/object literal.
- Simultan - Simultaneously run an async function on any iterable with limited concurrency.
- mrmime - Tiny (2.8kB) and fast utility for getting a MIME type from an extension or filename.
- zod-plugins - Plugins and utilities for Zod.
- unionfs - Use multiple fs modules at once.
- tiny-decoders - Type-safe data decoding for the minimalist.
- js-libp2p-bootstrap - JavaScript libp2p Implementation of the railing process of a Node through a bootstrap peer list.
- expressive-glob - Write glob patterns in super expressive and an easy way.
- exponential-backoff - Utility that allows retrying a function with an exponential delay between attempts.
- Transform a JSON Schema to Yup Schema
- Rimbu - TypeScript library focused on immutable, performant, and type-safe collections and other tools.
- parallel-park - Parallel/concurrent async work, optionally using multiple processes.
- screenshot - Zero-dependency browser-native way to take screenshots powered by the native web MediaDevices API.
- quadtree-ts - Store and retrieve Rectangles, Circles and Lines in a recursive 2D quadtree.
- KitQL - Set of tools, helping you building efficient apps in a fast way.
- dolla bill - Easily work with Apple in-app purchases.
- await-less
- circular_buffer_js - Fast TS/JS implementation of a circular buffer (aka ring queue, cyclic list, etc.).
- Excalidraw Libraries
- pheno - Simple, lightweight at-runtime type checking functions, with full TypeScript support. (Tweet)
- tsm - TypeScript vector and matrix math library.
- boolean - Converts lots of things to boolean.
- magic-string-extra - Extended magic-string with extra utilities.
- Sceneify - Easiest way to control OBS from JavaScript.
- event - Strictly typed event emitter with asynciterator support.
- ultimate/vault - Typed localStorage and sessionStorage utility with data structure and prefix support.
- ESP-TypeScript - Transpile TypeScript to Espruino flavor of JavaScript for ESP8266/ESP32 microcontrollers template project.
- Viselect - Simple and lightweight library to add a visual way of selecting elements, just like on your Desktop.
- secure-webhooks - Secure signature-based authentication helper for webhooks.
- BlueLibs - Collection of open-source software solutions designed for the modern web and enterprise scale.
- proto-arrows - Utility functions for drawing beautiful arrows using cubic bezier paths.
- Squirrelly - Modern, configurable, and blazing fast template engine implemented in JavaScript.
- Quagga2 - Advanced barcode-scanner written in JavaScript and TypeScript.
- Freezeframe.js - Library that pauses animated .gifs and enables them to animate on mouse hover / mouse click / touch event, or triggered manually.
- Iti - 1kB IoC container for Typescript/JavaScript with a focus on async flow.
- Optimal - Build, validate, and transform values with immutable typed schemas.
- collectable - High-performance, persistent, immutable, functional data structures.
- Guards - Comprehensive collection of type guards for JavaScript and TypeScript; Inspired by Elixir.
- striff - Real simple string diffing.
- io-ts-strings - String types for io-ts.
- Event Bus - Typesafe cross-platform pubsub event bus ensuring reliable communication.
- Tiny WASI - Tiny WASI runtime written in TypeScript. (HN)
- unimport - Unified utils for auto importing APIs in modules.
- JSON Schema Typed - JSON Schema TypeScript definitions with complete inline documentation.
- device-detector-js - Precise user agent parser and device detector written in TypeScript.
- tswhy - Community effort to enrich TypeScript diagnostics.
- vConsole - Lightweight, extendable front-end developer tool for mobile web page.
- Boxed - Utility types for functional TypeScript.
- Cucumber Screenplay - Library to ease implementation of the Screenplay pattern with CucumberJS.
- DeepmergeTS - Deeply merge 2 or more objects respecting type information.
- cursor-chat - Lightweight cursor chat à la Figma for digital co-existing + presence.
- streaming-iterables - Swiss army knife for async iterables. Designed to replace your streams.
- dom-chef - Build DOM elements using JSX automatically.
- Javelin - TypeScript ECS and multiplayer game development toolkit.
- Got Scraping - HTTP client made for scraping based on got.
- Adze - Library for shaping your JavaScript logs.
- vk-js - VK shared JS libs.
- ast-node-finder - AST Node Find api automatically generated from code.
- tst-reflect - Advanced TypeScript runtime reflection system.
- parse-openapi - OpenAPI v3 parser.
- node-interval-tree - Interval Tree data structure.
- Floggy - Universal structured event-oriented logging for libraries & applications.
- Functionless - TypeScript plugin that transforms TypeScript code into Service-to-Service (aka. "functionless") integrations.
- get-tsconfig - Find and parse the tsconfig.json file from a directory path.
- user-flow - CLI to write and run user-flows in typesript without boilerplate.
- ts-bus - Lightweight JavaScript/TypeScript event bus to help manage your application architecture.
- transformer-open-graph - Extracts Open Graph metadata from a URL and create an HTML preview.
- Merge anything - Merge objects & other types recursively. Fully TypeScript supported.
- is What? - Simple & small JS type check functions. It's fully TypeScript supported.
- Case anything - 14 case changing functions.
- TS Plus std lib
- expressive-ts - Functional programming library designed to simplify building complex regular expressions.
- graphics-ts - Functional bindings for the HTML Canvas API.
- Effect-TS - Printer
- Json Function - Allows you to use methods such as schema, innerJoin, where, limit, select, orderBy on JSON data.
- astx - Structural search and replace for JavaScript and TypeScript.
- psd - Blazing fast, zero-dependency PSD parser for the web and Node.js.
- Redo - Set of devtools that make it easier to build and test JS/TS. (Docs)
- Immerhin - Send patches around to keep the system in sync.
- typed-struct - TypeScript utility library for creating objects that store their properties in a buffer for serialization/deserialization.
- remote-ui - Allows you to create custom component APIs in JavaScript that can be used to render UI from a context other than the UI thread, like a web worker.
- martha - Tiny collection of convenient JavaScript utilities.
- tson - Type Safe Object Notation & Validation.
- TypeStream - Next-generation data transformation framework for TypeScript that puts developer experience first.
- unmeta - Simple tools for interacting with HTML metadata tags.
- Scene.js - JavaScript & CSS timeline-based animation library.
- Scena - Component that represents the timeline of Scene.js. You can control time, properties, and items.
- egjs-agent - Extracts browser and operating system information from the user agent string or user agent object(userAgentData).
- Qufl - JWT authentication library that supports refresh tokens.
- ts-macros - Custom typescript transformer which implements function macros.
- CronosJS - Cron based task scheduler for node and the browser, with extended syntax and timezone support.
- Schemawax - Tiny typed data decoder—get to the DNA of your data.
- hmans/signal - Signals represent distinct signals -- or events -- that allow interested parties to add callbacks to them that will be evoked whenever the signal is emitted.
- fly-node-api - Type safe API client for the Fly.io Graphql API.
- Struct Vec - JavaScript array-like containers for multithreading.
- mem - Memoize functions - An optimization used to speed up consecutive function calls by caching the result of calls with identical input.
- paintkit - UI components and utilities for graphics editors or similar apps.
- Monadic Event Stream - High-performance reactive event stream programming that powers Most.
- lazy - Small, useful set of methods for lazy iteration of iterables.
- untyped - Generate types and markdown from a config object.
- scroll-snap - Snap page when user stops scrolling, with a customizable configuration and a consistent cross browser behavior.
- Google Maps JavaScript API Loader - Load the Google Maps JavaScript API script dynamically.
- sum-types - Safe, ergonomic, non-generic sum types in TypeScript.
- tsPEG - PEG Parser Generator for TypeScript.
- InversifyJS - Powerful and lightweight inversion of control container for JavaScript & Node.js apps powered by TypeScript.
- flocky - Utility library with clarity and efficiency at the core. 0 dependencies.
- trace-mapping - Trace the original position through a source map.
- TypeScript-JSON - 2x faster JSON stringify function with only one line.
- Delta - Simple, yet expressive format that can be used to describe contents and changes.
- Result - TypeScript result type taking cues from Rust's Result and Haskell's Either types.
- OpenRPC Client JS - Browser-compatible JSON-RPC client with multiple transports.
- LZ-UTF8 - High-performance JavaScript string compression library.
- flat-drop-files - Normalize the DataTransferItems interface from a drop event.
- Injectable TS - Purely-functional strictly-typed IoC/DI for TypeScript.
- Scrollex - Build beautiful scroll experiences using minimal code.
- TypeScript JSON Decoder - Library for decoding untrusted data as it comes in to your system, inspired by elm-json-decode.
- Network Idle - Detect when the browser's network requests are idle.
- immer-yjs - Combine immer & y.js.
- InfluxDB JS
- ts-case-convert - Convert between camelCase and snake_case while preserving typescript information.
- Starbeam - New kind of reactive library. It makes reactive programming simple and fun, and it works with your existing JavaScript framework. (HN)
- factoria - Simplistic model factory for Node/JavaScript.
- oxide.ts - Rust's Option\<T> and Result\<T, E>, implemented for TypeScript.
- typesafe-utils - Collection of a few small lightweight typesafe utilities.
- Layr - Dramatically simplify full‑stack development.
- ZXing - Multi-format 1D/2D barcode image processing library, usable in JavaScript ecosystem.
- YFS - Synchronize text files between the browser and the file system using the File System Access API and Yjs.
- spring-easing - Quick and easy spring animation.
- copycat - Generate deterministic fake values: The same input will always generate the same fake-output.
- Optionals - Rust-like error handling and options for TypeScript and Deno.
- Turbo Query - Lightweight asynchronous data management.
- hi18n - Message internationalization meets immutability and type-safety.
- FortuneSheet - Drop-in JS spreadsheet library that provides rich features like Excel and Google Sheets.
- Yooda - 600b validation library with custom handlers and messages.
- TypePipe - Library to create pipelines with contexts and strong type checking.
- AutoAnimate - Zero-config, drop-in animation utility that adds smooth transitions to your web app. (Web)
- AMQP-client.js - AMQP 0-9-1 TypeScript client both for Node.js and browsers (using WebSocket).
- Hilbert.ts - TypeScript library for expression parsing, simplification, and MathML rendering.
- QR Code Styling - Automatically generate your styled QR code in your web app. (Web)
- StableLib - Stable library of useful TypeScript/JavaScript code.
- JSON Infer Types - Infers the type and format of JSON values.
- TSTL - Standard Template Library, migrated from C++.
- munum - Micro 3D Math Library for JavaScript and WebAssembly.
- Scroll Snap Carousel - Helper to enhance the native CSS Scroll Snap experience.
- QR Scanner - Lightweight JavaScript QR Code Scanner.
- vali-guard - Somewhat flexible validation library that guarantees TypeScript type-safety.
- proxy-hooks - Zero dependency JS proxy wrapper for ease of use with first class TS support.
- Emery - Polish for the rough parts of TypeScript.
- jsx-view
- better-ajv-errors - Human-friendly JSON Schema validation for APIs.
- iterate-all - Converts an iterable, iterable of Promises, or async iterable into a Promise of an Array.
- convert-units - Elegant way to convert quantities between different units.
- timsy - Agnostic functional state machine with epic type support.
- sim-ecs - Type-based, Components-first ECS, which is optimized for simulation needs. Will run in NodeJS and the browser.
- h3-typebox - Schema validation utilities for h3, using typebox & ajv.
- p-props - Like Promise.all() but for Map and Object.
- ts-poet - TypeScript code generator that is a fancy wrapper around template literals.
- WRP - TypeScript Implementation of Webview/Worker Request Protocol.
- JSON BinPack - Open-source binary JSON serialization format with a strong focus on space efficiency.
- Tinkoff Utils - Fast, small and purely functional utility library.
- lexure - Parser and utilities for non-technical user input.
- fn.obs - Tiny (750B minzipped) library for creating reactive observables via functions.
- fastest-levenshtein - Fastest implementation of Levenshtein distance in JS/TS.
- JSON-LD Streaming Parser - Fast and lightweight streaming JSON-LD parser for JavaScript.
- Cookies - Manage request/response cookies in the environments where those are not supported.
- Sigma - TypeScript parser combinator library for building fast and convenient parsers.
- ffmpeggy - Minimal yet powerful wrapper for FFmpeg and FFprobe.
- jsonup - Zero dependency compile-time JSON parser written in TypeScript.
- p-signal - Simple way to cancel promises.
- Atlasify - GPU friendly assets packer using max-rects algorithm.
- ioc - Lightweight (<1kb) inversion of controlJS library for dependency injection.
- Transmat - Share data beyond the browser boundaries. Enable users to transfer data to external apps, and open your web app to receive external data.
- Cron-Time - Cron Time Expression Generator/Builder written in Typescript.
- evalish - Slightly safer-ish wrapper around eval Function constructors.
- Spartan Schema - Ultra-minimal JSON schemas with Typescript inference. (HN)
- fast-array-diff - Node module to find the same/diff of two arrays.
- settle-it - Like Promise.allSettled() but for sync and async functions.
- good-try - Tries to execute sync/async function, returns a specified default value if the function throws.
- esfx - Suite of packages designed to provide low-level APIs for interoperable libraries.
- Nominal - Nominal and refinement types. (Reddit)
- Poppinss - Collection of reusable scripts used by AdonisJS core team.
- Alge - Type safe fluent API library for creating Algebraic Data Types (ADTs) in TypeScript.
- Behavior-Graph - Open, extensible, small and simple behavior-graph execution engine.
- TypeScript Tuple - Generics to work with tuples in TypeScript.
- npx-import - Runtime dependencies, installed as if by magic.
- client-zip - Concatenates multiple files (e.g. from multiple HTTP requests) into a single ZIP, in the browser.
- Async-Mutex - Mutex for synchronizing async workflows in JavaScript.
Links
- TypeScout - Search TS types. (Code)
- TypeSearch - Search TS types. (Code)
- TypeScript library starter - Starter kit with zero-config for building a library in TypeScript, featuring RollupJS, Jest, Prettier, TSLint, Semantic Release, and more.
- check-dts - Unit tests for TypeScript definitions in your JS open source library.
- LiTScript - Documentation generation tool that draws inspiration from literate programming.
- tsup - Bundle your TypeScript library with no config, powered by esbuild. (Web)
- Awesome Template Literal Types
- docs-ts - Zero-config documentation tool for TypeScript projects.
- tsd - Check TypeScript type definitions.
- Grok - Turns a TypeScript declaration file into a beautiful, readable, web page.
- my-ts-lib - Minimal TypeScript library starter.
- typescript-npm-package-template - Template to kickstart creating a Node.js module using TypeScript and VSCode.
- typedoc-plugin-markdown - Plugin for TypeDoc that enables TypeScript API documentation to be generated in Markdown.
- TypeScript Module Loader
- bunchee - Zero config bundler for JavaScript/TypeScript/JSX library. (Article)
- Generate readme from TypeScript - Generate API documentation straight into the readme file from TypeScript typings.
- TSDX Monorepo Example/Playground
- npm-dts - Generates single dts file for bundling TypeScript NPM packages.
- ts2ocaml - Generate OCaml bindings from TypeScript definitions via the TypeScript compiler API.
- Tangerine monorepo - Fast TypeScript-based Node.js monorepo setup powered by esbuild.
- What would you use to publish/build a TypeScript package (i.e. publish on npm) today? (2021)
- Type-Safe Event Emitter in TypeScript (2021)
- type-predicates-generator - Tool to automatically generate type predicates functions from type definitions.
- OpenAPI Typescript Codegen - Node.js library that generates Typescript clients based on the OpenAPI specification.
- DefinitelyTyped-tools - Infrastructure for DefinitelyTyped.
- ts-lib-starter - Finest quality ts-lib-starter with insane defaults.
- ts-node-starter
- structured-types - Collection of libraries using the Typescript Compiler API to generate "structured" type information from jsdoc and typescript files.
- typejuice - Documentation generator for TypeScript Declaration Files inspired by godoc.
- kanpai - Better way to publish npm packages.
- unpkg origin server
- eszip - Utility that can download JavaScript and TypeScript module graphs and store them locally in a special zip file.
- syncpack - Manage multiple package.json files, such as in Lerna Monorepos and Yarn/Pnpm Workspaces.
- TypeScript Internal Types - Expose TypeScript internal types by simply adding a development dependency.
- TS Creator - Code generator to generate TypeScript code generator from TypeScript code.
- dotalias - Single configuration for path aliases to reuse across all your tools (TypeScript, webpack, Jest, etc.).
- ts-standard - Typescript style guide, linter, and formatter using StandardJS.
- get-packages - Get packages from a monorepo (pnpm, yarn, npm, lerna).
- tsync - Synchronize rust and typescript types.
- run-ts - Tools to use Typescript files as npm scripts.
- convert-to-dts - Converts the source code for any .js or .ts file into the equivalent .d.ts code TypeScript would generate.
- publib - Unified toolchain for publishing libraries to popular package managers.
- ts-eager - Fast TypeScript runner using esbuild for eager compilation.
- ts-starter - Starter template for typescript with node.
- JSON to TS - Convert JSON object to typescript interfaces.
- docx - Easily generate .docx files with JS/TS. Works for Node and on the Browser. (Docs)
- Stardazed Web Streams Implementation
- Tsify - Library for generating TypeScript definitions from rust code.
- query-registry - Query the npm registry for packuments, manifests, packages and download counts.
- Easiest way today to build a library in typescript and publish it on npm in all formats people use (2022)
- dtsgenerator - TypeScript d.ts file generate from JSON Schema file.
- package-bundler - CLI for compiling and bundling your TypeScript to ESM & CJS, with deep exports support.
- package-check - Quality score checker for npm packages.
- TypeScript Definitions to Markdown - VS Code extension that helps you to export your TypeScript definitions in Markdown format.
- rev-dep - File dependency debugging tool for TypeScript projects.
- Semantic Versioning for TypeScript Types Spec (Code)
- npx link - Safer version of npm link.
- Anton Gilgur's TS library template
- FP-TS resources
- SemVer for TS in Practice
- Wireit - Upgrades your npm scripts to make them smarter and more efficient.
- Misusing TypeScript Assertion Functions for Fun and Profit (2022)
- pkgroll - Zero-config JS bundler for ESM, CommonJS, and .d.ts outputs.
- tsukuru - Build a TypeScript package that's compatible with both CommonJS and ES Modules.
- changelogd - Aggressively find a packages changelog (or releases) between versions.
- module-extractor - Extract a JS/TS module and its dependencies into a new package.
- DocGraph - Topological documentation generator for JavaScript with first-class support for React.
- TypeScript SQL tagged template plugin - TypeScript server plugin that adds type checking for SQL queries tagged with an sql function.
- suppress-ts-errors - CLI tool to add comments to suppress typescript type errors.
- TypeScript Module Toolkit - Toolkit for developing pure ESM TypeScript packages that target any platform (browser, Node, etc.).
- Typehead - Thin wrapper around ESBuild that makes it refreshingly simple to develop NPM packages using TypeScript.
- mkdist - Lightweight file-to-file transpiler.
- Template: TypeScript Module
- detective-typescript - Get the dependencies of a TypeScript module.
- ts-serve - Transpile TypeScript on the fly and deliver it from your server as ES Modules.
- typescript-type-def - Generate TypeScript type definitions for Rust types.
- Levitate - Tool for helping to understand APIs exported and consumed by NPM packages (or any TypeScript code).
- pkg-exports - Get exports of an local npm package.
- remark-typescript-tools - Two remark plugins to use TypeScript code with remark, to generate better documentation.
- clean-pkg-json - Script to remove unnecessary properties from package.json on prepublish hook.
- pridepack - Zero-config CLI for building Typescript packages.
- core-dts - TypeScript will support all proposals above stage-3.
- git-publish - Publish your npm package to a Git branch.
- Tanu - Simplified abstraction of the TypeScript Compiler API for defining and generating source files.
- Transformer - Takes an input (ex: TS) and ouputs to destination format (ex: Zod/JSON/Open API Schemas). (Code)
- OpenAPI Zod Client - Generate a zodios (typescript HTTP client with Zod validation) from a (JSON/YAML) OpenAPI spec.