As a developer, I regularly find myself searching for small online utilities.
Format some JSON.
Decode a JWT.
Test a regex.
Generate a UUID.
Convert a timestamp.
Format an SQL query.
Calculate a CIDR subnet.
None of these tasks individually justify installing another application. But over time, I ended up with a collection of bookmarks to different websites, each solving one small problem.
There was also another issue: privacy.
Sometimes the data I'm working with isn't something I necessarily want to paste into an unknown third-party website.
So I decided to build an alternative.
The constraint: one HTML file
I wanted the entire application to exist as a single file.
No backend.
No npm install.
No CDN dependencies.
No external API calls.
No account.
No telemetry.
You download the HTML file, open it in a modern browser, and everything runs locally.
The final file ended up at approximately 133 KB and contains 31 developer tools.
What's inside?
The tools are organized into six categories.
Encode / Decode
JSON Formatter & Validator
Base64 Encode / Decode
URL Encode / Decode
HTML Escape / Unescape
JWT Decoder
Number Base Converter
Generators
UUID Generator
Password Generator with entropy estimation
Hash Generator
Slug Generator
Lorem Ipsum Generator
Random Data Generator
Converters
Timestamp Converter
CSV ↔ JSON
JSON ↔ YAML
CSS Unit Converter
Case Converter
Cron Expression Parser
CSS Tools
Color Picker & Converter
Gradient Generator
Box Shadow Generator
Border Radius Generator
CSS Filter Generator
Text Tools
Regex Tester
Markdown Preview
Text Diff
Character Counter
Text Sort & Dedupe
String Inspector
SQL Formatter
Network Tools
IPv4 Address and CIDR/Subnet Calculator
Everything happens inside the browser.
Making a single HTML file feel like an application
I didn't want the result to feel like 31 unrelated forms dumped onto one page.
So I added some application-level functionality.
There's a Ctrl+K / Cmd+K command palette for quickly jumping between tools.
The sidebar organizes tools into collapsible categories and includes search, favorites, and recent tools.
Input state is automatically saved to localStorage, so closing the file doesn't necessarily mean losing what you were working on.
There's also:
Dark and light mode
Keyboard shortcuts
Persistent state
Import/export of settings
Drag-and-drop JSON files
Responsive mobile navigation
Breadcrumb navigation
The entire application still remains a single HTML file.
Why offline?
The main motivation wasn't simply working without internet access.
It was reducing unnecessary data movement.
If I want to format JSON, there isn't really a technical reason that JSON needs to leave my computer.
The same applies to:
JWT payloads
Base64 data
SQL queries
Regex test data
CSV files
Hash inputs
Modern browsers are capable enough to perform most of these operations locally.
So the toolbox follows a simple rule:
If the browser can do it locally, the data shouldn't need to go anywhere else.
That also means the application doesn't depend on me keeping a server online.
Once you have the file, you have the software.
The distribution experiment
I also wanted to experiment with whether a very small, local-first developer product could work without becoming another SaaS subscription.
So I created two versions.
The Lite version is free and contains nine tools:
JSON Formatter
Base64 Encode / Decode
URL Encode / Decode
UUID Generator
Hash Generator
Timestamp Converter
Color Picker
Regex Tester
Character Counter
It's intended to be genuinely useful rather than just a disabled demo.
👉 Try Developer Toolbox Lite: https://thesyllog.gumroad.com/l/offline-developer-toolbox-lite
There's also a full version with all 31 tools available for a one-time $9 purchase.
No subscription. You download the file and keep it.
👉 Developer Toolbox — Full Version: https://thesyllog.gumroad.com/l/offline-developer-toolbox
I'm particularly interested in feedback from other developers.
What small developer utility do you currently search for online that you'd prefer to have running entirely locally?
That question will probably determine what I add next.
Top comments (0)