Package Exports
- @commonify/steno
- @commonify/steno/lib/index.js
This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (@commonify/steno) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.
Readme
Steno

Specialized fast async file writer
Steno makes writing to the same file often/concurrently fast and safe.
Used in lowdb.
https://en.wikipedia.org/wiki/Stenotype
Features
- Fast (see benchmark)
- Lightweight (~6kb)
- Promise-based
- Atomic write
- No race condition
- TypeScript definitions
Usage
import { Writer } from 'steno'
// Create a singleton writer
const file = new Writer('file.txt')
// Use it in the rest of your code
async function save() {
await file.write('some data')
}
Benchmark
npm run benchmark
(see src/benchmark.ts
)
Write 1KB data to the same file x 1000
fs : 62.303ms
steno : 1.384ms
fs.txt = steno.txt ✓
Write 1MB data to the same file x 1000
fs : 2.300s
steno : 5.444ms
fs.txt = steno.txt ✓
License
MIT - Typicode