all posts
the stack and the approach

How hash is built

The AI runs the whole build loop: from a request to a working, tested version behind a preview. A person decides what to build, and approves it before it goes live.

Built with AI, approved by a person

Almost none of the code here is typed by hand. The work is described in plain words, the AI writes it, tests it, and puts it behind a test version. Design works the same way: screens start as quick mock pages, get checked on a real phone, and only what survives is kept.

The decisions stay human. What to build, what feels right, what goes live. The work in between mostly runs on its own.

How a change happens

The stack is chosen for one reason: so any change can run end to end on its own. From a request, a fix or a whole new feature, to a working test version, each step happens without a person in the loop.

  1. 01Someone asks for a fix or a new feature.
  2. 02A fresh copy of the data is made, so real data is never touched.
  3. 03The change is built and proven against that copy.
  4. 04The change is applied and written up for review.
  5. 05Vercel builds a test version of the change.
  6. 06The test version is checked and the tests run. If a single check fails, nothing goes out.
  7. 07A person approves the change, once everything holds.

That last approval is the only step that waits for a person.

How the work goes

The stack

Tooling
TypeScriptGitHubVercelBiomeTurbopnpmBun
UI
Next.jsReactshadcn/uiTailwindRecharts
API
oRPCZod
Data
NeonPostgresDrizzle
Testing
VitestPlaywright
AI
Vercel AI SDKClaude Code

The stack is boring on purpose. That is the point.