TSDX is a zero-config CLI for TypeScript package development that streamlines the creation, testing, and publishing of TypeScript libraries.
The tool solves the complexity of setting up a modern TypeScript package by providing sensible defaults and automating common development tasks. Rather than requiring developers to manually configure bundlers, test runners, linters, and formatters, TSDX handles this configuration automatically. The approach uses a curated stack of modern, high-performance tools: bunchee for bundling, vitest for testing, oxlint for linting, and oxfmt for formatting. The tool automatically generates dual ESM and CommonJS builds with proper TypeScript declarations and exports field configuration, eliminating the need for manual module format management.
TSDX suits developers building TypeScript libraries who want to avoid build configuration overhead. It works well for both basic TypeScript libraries and React component libraries, with templates available for each. The tool is particularly valuable for teams prioritizing development speed, as its Rust-powered linting runs fifty to one hundred times faster than ESLint and formatting runs thirty-five times faster than Prettier. It requires Node.js 20 or later and uses bun for package management. The project represents a complete rewrite from its earlier version, incorporating modern tooling throughout.
Development activity shows consistent focus on modernization and performance. The codebase has undergone a comprehensive rewrite using Rust-based tools rather than JavaScript equivalents. The project maintains active support for contemporary development practices, including native bun integration and TypeScript-first design. The tool stack reflects deliberate choices favoring speed and reduced configuration burden over maximum flexibility.