v0.1.0
First public release of Tachys.
Tachys is a high-performance virtual DOM library with a React-compatible API. On the Krausest js-framework-benchmark, it matches Inferno on click-to-paint time (1.007x geomean) and is ~18% faster on script time (0.823x geomean). Core runtime is ~36KB minified, ~11KB gzipped, zero dependencies.
Packages
| Package | Description |
|---|---|
tachys |
Core runtime: VDOM, hooks, Suspense, ErrorBoundary, streaming SSR, hydration, concurrent scheduler |
babel-plugin-tachys |
Compiles JSX components to markCompiled + _template form, skipping the VDOM at runtime |
swc-plugin-tachys |
Same compile pipeline, parsed via @swc/core for SWC-based toolchains |
compiler-core-tachys |
Shared portable IR + emitter used by both compiler frontends |
tachys-aeon |
Aeon FRP integration: Behavior and Event as first-class UI primitives via hooks |
What's in core
- Function components and hooks:
useState,useReducer,useEffect,useLayoutEffect,useMemo,useCallback,useRef,useContext,useTransition,useDeferredValue,useId,useSyncExternalStore,use memo,forwardRef,lazy,createPortal,createRefSuspense+ErrorBoundary(works withlazy()anduse(promise))- Streaming SSR (
renderToReadableStream) with selective hydration - Concurrent scheduler with priority lanes
- React compatibility shim (
tachys/compat) so existing React code can import from Tachys - Lean entry points (
tachys/sync,tachys/sync-core) that drop the concurrent scheduler and Suspense for apps that don't need them
Install
pnpm add tachysJSX setup, full API, and architecture notes: https://joshburgess.github.io/tachys/
Notes
- Dual-licensed under MIT or Apache-2.0
- Requires Node.js >= 18
- 962 tests passing across 55 files