fiux-0.5.2 is not a library.
fiux
The fastest multi-format file converter CLI tool.
-
Supports NDJSON, JSON, CSV, PSV, TSV, TOML formats and more!
-
Support for more formats will be added soon.
Features
- Convert between NDJSON, JSON, TOML, CSV, TSV, PSV and more!
- Validate files quickly with detailed logs for debugging
- The fastest thanks to being written in highly optimized Rust
- Highly memory efficient for low resource environments through streaming architecture and optimized allocations.
- Intuitive and easy to use out of the box, built in 100% pure Rust which makes it easy to install.
Installation
- And that's it! You've installed fiux!
Usage
# conversion
# validation
# options (flags)
benchmarks
Benchmarks were done with a 100k line CSV converted to other formats for consistency across benchmarks
| Benchmark | fiux | Node.js | Miller / jq (C) |
|---|---|---|---|
| CSV → JSON | ~95ms | ~1.29s | Miller: ~603ms |
| CSV → TOML | ~101ms | ~1.6s | No native TOML support |
| JSON → TOML | ~888ms | ~8.7s | No native TOML support |
| TOML → JSON | ~862ms | ~9s | No native TOML support |
| CSV → NDJSON | ~97ms | ~1.2s | Miller: ~2.85s |
| JSON → NDJSON | ~750ms | ~6s | jq: ~2.77s | Miller: ~2.92s |
| TOML → NDJSON | ~921ms | ~12s | No native TOML support |
| NDJSON → JSON | ~310ms | ~6.2s | jq: ~2.65 | Miller: ~2.88s |
| NDJSON → TOML | ~820ms | ~10.8s | No native TOML support |
As you can see from these benchmarks, fiux is much faster than most industry-standard file conversion tools, fiux scales even better on better / server hardware! (using SSH)
Note: TOML conversions are generally slower than other formats since TOML is very limited when it comes to streaming and parsing is slower as it is more complicated than other formats.
Notes
- fiux is licensed under the MIT license.
- For specifics about contributing to fiux, see CONTRIBUTING.md.
- For changes, see CHANGELOG.md.