Complete NumPy implementation for TypeScript and JavaScript.
- 📊 Extensive API — 476 of 507 NumPy functions (93.9% coverage)
- 🏃🏽♂️ Fast — 1.13x faster than NumPy on average across 7,200 benchmarks, thanks to Zig-WASM SIMD kernels
- ✅ NumPy-validated — 20,000+ tests compared against Python NumPy
- 🔒 Type-safe — Full TypeScript type definitions
- 🌳 Tree-shakeable — Import only what you use (
np.add()-> ~10kB bundle) - 🌐 Universal — Zero dependencies, works in Node.js, Deno, Bun and browsers
Docs • Playground • Examples • Coverage • Benchmarks
npm install numpy-tsimport * as np from 'numpy-ts';
// Array creation with dtype support
const A = np.array([[1, 2], [3, 4]], 'float32');
const B = np.ones([2, 2], 'int32');
// Broadcasting and chained operations
const result = A.add(5).multiply(2);
// Linear algebra
const C = A.matmul(B);
const trace = A.trace();
// Reductions with axis support
const colMeans = A.mean(0); // [2.0, 3.0]
// NumPy-style slicing with strings
const row = A.slice('0', ':'); // A[0, :]
const submatrix = A.slice('0:2', '1:'); // A[0:2, 1:]Interested in supporting numpy-ts? Become a sponsor.
Issues and PRs are welcome: https://github.com/dupontcyborg/numpy-ts
MIT © Nicolas Dupont