logo
Technology

How a non-engineer built the tool 1000+ people at Cars24 now use

Manvi Mehrotra
May 5, 2026
8 minutes

It started with something I kept noticing in our team slack

Every week, someone on the analytics team would drop an HTML file with a one-line caption — "fraud dashboard, please review." A week later it was gone. Two weeks later, someone asked for it again. Nobody knew where the latest version was. Half the team was making things in Claude. The other half was making things in ChatGPT. None of it had a home.

I'm Manvi. I lead AI Tech Investment Strategy at Cars24 — which is a fancy way of saying I spend a lot of time thinking about where Cars24 should put its money on tooling, where the leverage is, and which bets are likely to compound. My background is commerce, not computer science. I have never written production code in my life.

This is the story of how I shipped HTMLHub, anyway.

The thing I noticed

We are riding the AI wave and with that happening, everyone's shippping through AI. Analysts were spinning up dashboards in Claude. PMs were writing RFCs in ChatGPT. Ops folks were generating reports.The output was real and good.

But the distribution was a mess.

Everything was being shared as Slack DMs that died inside 24 hours. "Ignore the file I sent yesterday." "Use this version, not the one from Tuesday." "Anyone got the latest pricing model?"

Half the conversations I was in were people re-asking for things that already existed


I kept thinking the same thought: what if all this had a home?

How I validated the idea (without writing code)

I didn't write a single line of code that first week. I opened Claude and argued with it.

Was this a real problem or just an annoyance dressed up as a problem? What are different ways to solve it? What would an mvp look like? Would people actually use it or just say they would?

I went back and forth — pushing on every assumption I had, asking it to play devil's advocate, asking it to imagine the version where this didn't work. By the end of the week I had a working spec. Not a product spec — a working document of "what does this thing actually do, and what does it cost to host."

That document became the brief I handed to the AI agents I'd build with.

I also had a much longer list — things I needed to learn before I could ship anything. Cloudflare. GitHub. R2. D1. Workers. Pages. Most of these were words I had heard in standups but couldn't have explained over coffee.

The first three days of the build were just me clearing the basics. Not so I could write the code — I knew I wouldn't be writing it — but so I could read what was being written and know if it was wrong. There's no version of this story where a non-engineer ships a real product without first putting in the hours to understand the rails it runs on. There's no other way.

v0 — the version I shipped to Slack with one message

The first version was almost insultingly basic.

Upload an HTML file. Get a link. That's it. No accounts, no spaces, no comments, no nothing. I shipped it to Slack with a single message: "if you've got an HTML you keep re-sharing, try this."

Thirty people uploaded something in the first week. Then the feature requests started. Most of them came as Slack messages and in-person nudges in the hallway: "can it have comments?" "what about access control?" "can a team have its own area?" "can I update the file without breaking the link?"

And that feedback helped a ton. Every Monday I'd come in with a list of things to ship that week - shared entirely by the people using the tool. The product was writing itself.

The feature I'm personally proud of

Is the one nobody notices but makes and breaks the usage of the tool

So, when you re-upload an HTML file, the share link doesn't change.

That sounds trivial. It isn't.

The naive version: every upload gets a fresh token, the old link breaks, you re-share with the twelve people you sent it to last week. We had this for the first two months. It was the single biggest complaint we got. "I updated the file and now nobody can find the dashboard."

The version that worked: when you upload a file, the system fingerprints it, recognises that it's a new version of an existing artifact (same project, same author, similar enough content), and updates the existing record in place. The share token persists. The original link keeps working. The twelve people who had it bookmarked never know there was an update.



It took three rewrites to get this right. The first version detected the wrong file as "the same." The second was too strict — every minor edit looked like a new artifact. The third (the one in production now) uses content hashing plus author plus project context, and finally feels invisible.

Which is exactly what I wanted.

The other things HTMLHub does now

After the share-link worked, the rest of the product came together. Comments and @mentions anchored to the document itself, so discussion stops scattering across Slack threads. A CLI for engineers who'd rather upload from a terminal than a browser. Markdown rendering, because half the team writes in Markdown and was frustrated that they couldn't. Per-project download whitelists, so finance can host models without worrying about leaks. Dark theme. Admin controls. None of it would have worked without Spaces underneath.

Building with AI — the honest version

People keep asking me what it's like to ship a product as a non-engineer using AI. The honest answer is that the work is different, not less.

On day one, I thought building was the hard part. It isn't. The hard part is figuring out whether the problem you've spotted is actually a problem. Today I never write a spec without first arguing the problem out loud with Claude — pushing on assumptions, asking for the version where this fails, asking what I'm missing. Most ideas don't survive that conversation. The ones that do are the ones worth building.

The other thing that's now second nature: multi-agent debugging. When something breaks in HTMLHub and things do break, I rarely debug alone. I launch three agents at the same problem from different angles. One reads the logs. One reads the code. One reads the recent diffs and asks what changed yesterday. It's faster and less stressful because there are more than one set of eyes on the problem :P

This wouldn't have happened without the leaders at Cars24 who pushed for an AI-first culture early to us and who, when I showed up with a half-built prototype and a lot of confidence and very little code experience, said keep going.

Thank you to the founders for refusing to treat AI as a side project and for trusting people closest to the problem to build the tools to solve it. Thank you to every teammate who shared a feature request in the hallway, broke something useful by accident, or paused Friday afternoon to tell me what they'd actually use HTMLHub for. The product is yours as much as it is mine.

Five things I learned

  1. AI is a junior engineer with perfect recall. It will execute exactly what you ask for, including the wrong thing. Your taste, your sense of "this is off," your refusal to ship something that feels weird, that's the entire job.
  2. Specs are the new code. The most leveraged thing I did was write better specs. Every clear sentence in my spec saved me three hours of agent debugging.
  3. Learn the stack before you ship on it. I spent three days on Cloudflare basics before writing a single agent prompt. Best three days I spent on this project.
  4. Ship the mvp. Then listen. v0 was a single-page upload form. The product wrote itself once people started using it.
  5. The boring features are the moat. Stable links. Working comments. Predictable permissions. All of them are why people stay.


What's next

Secure external sharing, without losing the version control, the comments, the audit trail is the other half of the bet.

After that: making AI tools push directly to HTMLHub, so a dashboard generated in Claude or ChatGPT lands in the right space without anyone copy-pasting anything. We're calling that MCP integration internally. It feels less like a feature and more like the natural shape for the product.

In week one of March, I deployed 25 changes. None of them broke production. The tool has gotten popular enough internally that we're now getting requests, unprompted, to open it up for external sharing. That's the strongest product signal I know.

If you're an autonaut reading this, whether or not you're an engineer, I'd love to compare notes. Find me on Slack (Manvi Mehrotra) :)

Loved this article?

Hit the like button

Share this article

Spread the knowledge