Problem
I work as a backend dev and I run into large json, csv, dat and what ever format files I need to open , format and edit. My typical ide's or text editors all froze or hang on my macbook m3 pro 18gb (VSCode even say straight out 100MB json is too big to format..).
So i decided to make a difference for myself. its available and latest version offers to open , format and edit datasets in hundreds to thousands of megabytes of dataset files.
It's called Inkline, built in Swift and AppKit for macOS. Version 1.6 is out now, with improvements to selection, switching between files and stability.
Most of my everyday files are around 1 to 300 MB. API responses, exported datasets, configuration files and logs. I usually want to open something, format it, find what I need, make a change and save it. I've spent a lot of time on keeping scrolling, searching and editing responsive after loading too.
Some numbers from benchmarking on my M3 Pro MacBook Pro with 18 GB RAM:
- 100 MB JSON: open in 168 ms, format in 84 ms. Peak memory (RSS): 0.49 GiB.
- 300 MB JSON: open in 393 ms, format in 262 ms. Peak memory (RSS): 1.44 GiB.
- 1.07 GB JSON: open in 1.237 seconds, format in 1.604 seconds. Peak memory (RSS): 4.31 GiB.
These are the median of 3 isolated Release runs, with files held in memory. “Open” means the editor is ready. These measurements are from 1.4; the current release is 1.6. It's due for an updated benchmark, any day now.. But it's improved since 1.4.
I also threw a ~10 GB CSV at the newer file-backed code and it opened in around 23 ms with roughly 119 MB peak RSS while working with the document. Not really the normal use case (for me but I read about others with this need), but nice to know there is some headroom.
There are also built-in tools for formatting and minifying JSON and XML, converting between JSON, JSON Lines, CSV and TSV, and filtering matching lines in or out of logs. I use the log tools to remove noise and highlight errors and warnings. There’s regex find and replace, split views, tabs, session restore, themes and custom shortcuts too.
Files are processed locally on your Mac, with no analytics or telemetry.
Comparison:
- BBEdit: an established Mac editor with extensive search, scripting and HTML tools. It has a free mode, and the full license costs $59.99. Inkline is a less expensive option focused on the large exports and logs I work with, with JSON/XML formatting, data conversions and log filtering built in.
- Sublime Text: a cross-platform editor with a package ecosystem, including tools like Pretty JSON. A personal license costs $99. With Inkline, the formatting, JSON/CSV/TSV conversions and log tools are included from the start. The advantage for my workflow is having those tools ready in a native Mac app, at a lower purchase price.
Pricing
149 SEK on the Swedish Mac App Store. One time purchase, no subscription.
Get Inkline on the Mac App Store
For more apps and web demo, check out :
https://viktornyberg.com
Web demo (WIP)
https://inkline.viktornyberg.com/?returnTo=app-inkline