About Builds AI Portfolio Lab Tools Blog Contact
All Posts

I Rewrote 328 Lines and Added Zero Features

Star Map kept growing. The spec got left behind. So I spent an evening doing the work nobody calls a feature.

2 min read
toolsdesignweb-devportfolio

I keep a visual spec for the tools section of my site. Not a design system with tokens and a Figma file, just a reference I can point at when something looks wrong.

The tools are browser-native: Profile Ring Creator, QR Code Generator, Color Picker, Handwriting Font Matcher, Star Map. No servers, no uploads. Each one is a single HTML file in the public directory, built to a shared aesthetic. Dark surfaces, consistent spacing, the same font stack. They should feel like they belong together.

Star Map is one of the newer ones. You pick a place, pick a moment, and it renders the night sky exactly as it looked from that spot at that time. 200+ stars, 29 constellations including all 12 zodiac signs, stereographic projection from zenith. Nine print sizes, five themes, seven occasion presets for birthdays and anniversaries and the moments worth keeping. Moon phase and zodiac sign panels. Shareable URLs. It’s a lot.

That’s kind of the problem.

I kept adding to Star Map because the features were natural extensions of each other. Spectral-type star coloring on the dark themes. A decorative frame toggle. Independent font-size overrides for the message blocks. Each one made sense in isolation. Collectively they pushed the layout in directions it wasn’t built for.

Last night I pulled up Star Map next to Color Picker. Color Picker is tight and obvious. Star Map had card padding that was slightly off, button heights that didn’t match the rest of the suite, spacing that had drifted from the spec one addition at a time. The tool worked fine. It just didn’t look like it belonged.

I spent the evening fixing it.

The commit message was “Star Map: align look-and-feel with system spec.” It touched nearly the whole file. 328 insertions, 246 deletions in 574 lines. Close to half the file rewritten. No new features. Nothing a user would notice on first glance.

Here’s the thing about that kind of work: it doesn’t feel productive while you’re doing it. Nothing new ships. The feature count doesn’t change. The behavior is almost identical. But the work matters more than most of the additions that caused the drift in the first place.

I used to skip this. My instinct when something works is to leave it alone and move on. Good enough is good enough. Good instinct for shipping. Bad instinct for a portfolio. When every tool looks like it was built by a different person, you lose the thing that makes the collection more than a list of utilities.

Don’t get me wrong, all the features are still there. All nine print sizes, all five themes, all seven occasion presets. Star Map still does exactly what it did before last night. It just looks like it belongs now.

There’s something else in it too. If someone uses one of my tools and later finds another, I want the second one to feel familiar before they’ve done anything. Not because they remember me, but because the visual decisions match. That’s the trust transfer. It only works if the spec holds.

Younger me wanted credit for the feature count. Where I am now is knowing that the spec is a feature too. Keeping it is the work.