Show HN: Glance – Fast CSV inspection for the terminal (SIMD-accelerated)


I built this because I got tired of waiting for pandas to load just to peek at a CSV file. Glance handles multi-million row files in under a second with lazy parsing and SIMD optimizations.

Key features:
– Instant schema inference (detects int64, float64, currency, dates, enums)
– SQL-like filtering with numeric comparison support
– Interactive pager (like less, but CSV-aware) with search
– Auto-detects delimiters (comma, tab, pipe, semicolon)
– Multiple output formats (table, CSV, TSV, JSON)

Performance on 5M rows (307 MB):
– Display + schema: 0.09s (lazy parsing + SIMD line counting)
– Full filter + sort: 0.88s

Technical bits:
– mmap for zero-copy file access
– Flat row storage (single vector with stride, no per-row allocations)
– ARM NEON / x86 SSE2 for newline counting
– memchr fast-path for quote-free lines, state machine fallback for RFC 4180 edge cases

Built in C++20 with comprehensive tests. Works on macOS and Linux.

GitHub: https://github.com/AveryClapp/glance


Comments URL: https://news.ycombinator.com/item?id=46929364

Points: 1

# Comments: 0



Source link

Leave a Reply

Your email address will not be published. Required fields are marked *