Lens
Data & log explorerOpens a multi-gigabyte log, CSV or JSONL file instantly and lets you interrogate it with a real query language — the results filtering live as you type.
When something breaks, the answer is usually buried in a log — the file a system writes to record every event it produces, which on a busy service grows to gigabytes. General-purpose editors freeze trying to open something that big, and plain find-in-file can only match a word, not answer the question that actually matters: which requests failed, grouped by page, slowest first?
A deliberately UI-free engine does the hard parts — a hand-written query language (its own lexer, parser and evaluator, plus a filter-and-aggregate pipeline) and a memory-mapped index that opens enormous files without ever loading them into memory. The desktop app and a native command-line tool are two thin front ends over that same engine, which was built and proven green before a single pixel of interface existed.
- A query language of its own — filter with real expressions (comparisons, contains / matches, and / or / not, in […]), then pipe into stats, sort, head and field selection. Written from scratch, with no parser library.
- Live, as-you-type filtering — narrow millions of lines instantly, and turn the same view into a live aggregation (“count errors by page, worst first”) just by adding a stats stage.
- Opens files bigger than memory — a memory-mapped line index means a huge file opens in a single pass, and only the rows on screen are ever built, so scrolling stays smooth even on files far larger than RAM.
- A custom-rendered activity timeline — a severity heatmap painted pixel-by-pixel with SkiaSharp, showing at a glance where in the file the errors cluster.
- Proven, not promised — 68 automated tests (including a 200,000-line scale test and headless UI render checks), and it publishes to a roughly 3 MB self-contained native binary. The sample data is generated, so it is honest about being a showcase.