fixed-len-array
v1.12.0
Published
A tiny and type-safe TypeScript utility to create and work with fixed-length arrays (tuples).
Downloads
1,382
Maintainers
Readme
✨ Features
- ✅ Enforces fixed-length array types (tuples)
- 🧠 Type-safe construction
- 🔧 Automatically trims or pads at runtime
- 🔄 Pads with a custom value or falls back to
nullif not provided - 📦 Tiny, no dependencies
- 🔁 Works in both Node.js and browser environments (ESM only)
🚀 Usage
npm install fixed-len-arrayimport { toFixedLengthArray, FixedLengthArray } from "fixed-len-array";
// Pads to a fixed length of 3 with custom default
const vec3 = toFixedLengthArray([1], 3, 0);
// Result: [1, 0, 0]
// If no default is provided, pads with `null`
const paddedWithNull = toFixedLengthArray([1], 3);
// Result: [1, null, null]
// Trims if input is longer
const trimmed = toFixedLengthArray([1, 2, 3, 4, 5], 3, 0);
// Result: [1, 2, 3]
// Full type support
type Vec3 = FixedLengthArray<3, number>;🧪 API
toFixedLengthArray<T, N>(input: T[], fixedLength: N, defaultValue?: T): FixedLengthArray<N, T>
Creates a fixed-length array by trimming or padding the input. If defaultValue
is omitted, null will be used for padding.
type FixedLengthArray<N, T>
A recursive type that represents a tuple of length N, with all elements of
type T.
🤝 Contributing
We welcome contributions! Please see our Contributing Guide for details.
Development Setup
# Clone repository
git clone https://github.com/ptprashanttripathi/fixed-len-array.git
cd fixed-len-array
# Install dependencies
npm install
# Build TypeScript
npm run build
# Run tests
npm test📄 License
This project is MIT licensed.
