News for hackers. Stuff that matters.

robhati

Watched a friend paste a confidential contract into ilovepdf to compress it. Built this website so they wouldn't have to. Files never leave your system.
Thanks and I will add this to my todos!
It's a small too nothing great I just figured others might find it useful too. I kept finding myself needing to visualize database schemas, but most tools had the same problems: paywalls, mandatory signups, or sending your SQL to someone else's server.

No backend, no accounts, no data leaving your machine.

A few implementation details that were fun:

* Built on <canvas> instead of DOM/SVG. Tables are rasterized into cached bitmaps with viewport culling, which keeps things smooth even with hundreds of tables on screen.

* The SQL parser tracks source spans for every token. That lets edits stay surgical so a rename a table and only the relevant identifier (and its references) change while comments and formatting remain untouched.

* The URL contains the entire schema. Sharing simply serializes the schema into the URL itself, so there's no backend, no stored state, and no account required.

* I also experimented with a Rust/WASM version because why not? but the parser was ~37% slower because the JS↔WASM boundary cost outweighed the compute savings but The O(n^2) overlap-resolution pass was about 2.2x faster though * In the end I stuck with plain JavaScript. No framework ~32KB gzipped

updated thanks.
I have just updated it. He was right to point that out.
not fully yet but what you can do today is create separate profiles for each Space (ide+browser on one, Fork+server on another,music on a third) and they auto switch as you swipe between desktops. So the per Space part works but what's missing is the "group" bit there's no way to say "these 3 profiles are all part of my Coding workspace, activate them all at once." That's exactly where I want to take this though. The building blocks are mostly there, just need that workspace layer on top. The display switching thing with snapshotting per display config so laptop only vs docked setups just work is a bit PITA to build but I am working on it
right now it shows all safari windows not just the ones on your current space, so the "wrong space" problem could still happen. I'll look into Space aware window filtering.
thanks for the kind words and I might create a discord server for the support but I havent really thought about it.
wish I could solve your menubar mess
they are supported under the hood but the UI for creating them isnt built yet but its on the roadmap.I'll prioritize it (: