From a tech radar to a roast
How a serious tech radar turned into RoastMyStack, where my ~20 hours went, and what launch day actually looked like.
RoastMyStack.dev is live. Paste a public GitHub repo or a package.json and you get a health score, a radar of your dependencies, and a roast you can share on X.
It took about 20 hours over 13 days, mostly evenings, a couple of hours at a time. This post is the whole story: what I was thinking, where the hours went, what I learned, and the launch numbers. Including the bad ones.
The problem I wanted to solve
Because of AI, new models, tools and frameworks ship every week. I can’t keep up, and I don’t know anyone who can. The classic answer is a tech radar: rings like Adopt, Trial, Assess and Hold, where a team tracks what they use and what’s worth a look.
So the first idea was simple: a radar that keeps itself up to date.
How the idea changed
Version 1: a radar for me. The day the site went up, I built Tech Pulse, a small pipeline that reads tech news every morning and writes me a briefing plus a radar. It showed the idea had legs, and I still use it every day.
Version 2: the big product. On September 28 I started the real thing. Accounts, your own radar, a review inbox, weekly AI research, a catalog that grows on its own. I spent most of the day on the landing page and it got busier with every version. Then I looked at the idea again. It was pretty niche, and not that exciting. I decided to aim for simplicity. Aimed to get something out there faster.
Version 3: Stack Check. On September 29 I wrote a much smaller brief. Paste a package.json, no signup, get a radar of your stack in a few seconds. Each dependency gets a verdict from fixed rules: Rising, Stable, Fading or At risk.
One rule mattered most: the AI never decides a verdict and never invents a number. Verdicts come from npm downloads, release dates, deprecations, archived repos and security advisories. The AI only suggests alternatives, and every suggestion is checked against npm before it’s shown.
Version 4: RoastMyStack. By October 5, Stack Check worked. The verdicts were fair and the numbers held up. But when I pictured someone sharing it on X, I couldn’t see it. “My stack is 82% healthy” isn’t something anyone posts.
So I kept the engine and changed the attitude. An AI-written roast of your stack. A doneness level next to the score, from “Still mooing” to “Thoughts & prayers”. A share card built around the roast. The radar is still at the center. It’s just not the pitch anymore. The roast gets you to click, the radar is what you stay for.
Where my ~20 hours went
I measured it from my Claude Code sessions: 21 sessions, 13 days, active time only (gaps over 15 minutes don’t count).

| Area | Share |
|---|---|
| Design polish | 30% |
| Building it (scanner, radar, rankings) | 28% |
| Launch & infra (Railway, email, security) | 21% |
| Marketing (launch video, X, this blog) | 16% |
| Making the roasts actually funny | 5% |
The verdict: more time picking pixels than building the thing. Classic dev.
The core build took less than a third of the time. The scanner, the rules, the radar, the leaderboard, 90 commits in the end. Writing code is not the slow part anymore. It’s knowing what you want and how you are giving your intent to the models.
The day before launch was the big one: about 6 and a half hours. Launch video, final UI pass, a security review with 7 fixes, then the deploy. Every other day was 1 to 3 hours.
The ~3.5 hours I burned
I also went looking for time I didn’t need to spend. About 3.5 hours, almost a fifth of the total:
- 70 minutes on design loops I threw out. A thermometer for the score, three times. A full “roast night” redesign, loud marigold poster style. I hated it. I like modern and calm with a bit of spice, and I should have said that on day one.
- 55 minutes watching renders. The launch video renders in about 10 minutes. I asked “how much time remaining?” more than once. The answer was always: about 10 minutes.
- 25 minutes on the share image, again. Reworked in 4 different sessions.
- 25 minutes on the roast prompt, again. Fixed on 3 different days.
- 15 minutes on copy back-and-forth. Change it. No… roll back.
- 15 minutes asking “what’s left?” Four times. Plus “url?” and “start the server”.
Sometimes you need to try things before you know what you want. But sometimes slowing down and thinking can actually make you save time.
What I learned
Deciding what to build is the real work. Going from a big radar to Stack Check to RoastMyStack took more thinking than any feature. And I only figured out “correct isn’t shareable” by building the correct version first.
Know your taste before you start. My biggest time sink wasn’t code. It was trying design directions I could have ruled out in one sentence.
Production has its own bugs. Railway’s config-as-code is deprecated, so the deploy settings live in the dashboard now. Cloudflare’s proxy made every visitor share the same IP, which breaks rate limits. And the minifier quietly turned every handled error into a 500. None of that showed up locally.
Your visitors are on their phone. (Duh!) More on that below.
Launch day
I revealed it on X on October 11 around 10am: a short post with a 1:1 video, link in the reply, and a cross-post in the Build in Public community.
Here’s how it went, with no filter:
- My own timeline: the launch post got 54 impressions, 0 likes and 1 reply. Barely anyone saw it.
- The Build in Public community: much better. A simple “Hey everyone, I’m kinda new here” post did best: 95 impressions, 4 likes, 6 replies. The video version got 59 impressions and 3 likes, and the time breakdown got 46 and 1. Talking to people beat announcing to them.
- The video: 39 views in 48 hours, watched for 9 seconds on average. It’s 32 seconds long. Only 4% made it to the end. Earlier I learned to open on the visual instead of text, and I did. Turns out that’s not enough.
- Followers: 7 on October 7, 21 the day after launch.
- On the site: the first 24 visitors ran zero roasts. (pwah pwah pwah)
Zero. People came from X, on their phones, landed on the page, and left. The famous-repo examples, the one-tap way to try it, were below the fold on mobile. On desktop it looked fine, and desktop is where I tested.
I moved the famous-repo chips above the fold that afternoon. In the next couple of hours, real people ran 6 roasts.
Not crazy numbers (and far from it lol) but better than 0 and that’s the point of building in public. I’d rather know that 24 people bounced because of a layout than guess why nobody tried it.
What’s next
- Monitor the usage and adapt based on data.
- Post a few real roasts of famous repos on X. The roast is the hook, so it should go first.
- Start the next project. I started exploring a potential idea, and I’m currently refining it before actually jumping on the build. This one is a real utility so hopefully I can do better with numbers.
If you want to see how your stack holds up, try it at roastmystack.dev. And if you want to follow along, pull up a chair.