INSPIRATION
AI made it easier to ship a product quickly. It did not make the uncomfortable product questions go away.
ShipCheck came from that gap. Builders can now deploy a working app in a weekend, but many still skip the questions that decide whether anyone will care: who is this for, what do they do today, why is the problem urgent, how will the first ten users find it, and what behavior proves it is working?
ShipCheck is a fast pre-launch review for that moment. Before submitting, I ran ShipCheck on ShipCheck. It scored 67: Almost Ready. The distribution section came back RED, so I tightened the submission story and first-user plan before calling the project done. That self-check is the point of the product.
WHAT IT DOES
ShipCheck asks 20 focused questions across five areas:
- Your User
- The Problem
- Your Solution
- Getting Users
- Measuring Success
The builder starts with product context: name, category, stage, and one-line description. Then each answer is evaluated against that context, not against generic startup advice.
The final output is a shareable readiness report with:
- a 0-100 score
- RED / AMBER / GREEN answer tiers
- section-level feedback
- specific notes for weak answers
- a public report URL
Try it here: https://shipcheck-three.vercel.app
ShipCheck evaluating itself: https://shipcheck-three.vercel.app/report/00000000-0000-4000-8000-000000000067
HOW I BUILT IT
Stack: Next.js 14 App Router, TypeScript, Tailwind CSS, Supabase Postgres, OpenAI / NVIDIA API Catalog evaluation, Novus.ai / Pendo analytics, Server-Sent Events, and Vercel.
The evaluation route runs section by section instead of waiting for one giant response. Each completed section streams back to the browser, so the user starts seeing useful feedback while the rest of the report is still being evaluated.
Production currently uses the NVIDIA API Catalog path because the OpenAI path hit quota during final testing. The app still supports both providers, but the submitted live build should be judged by the working deployed path, not by a provider claim that was not active at submission time.
Supabase stores anonymous sessions, completed reports, drop-off events, and feedback reactions. Reports persist as public URLs, which is why the ShipCheck-on-ShipCheck report is not a mock screenshot.
Novus.ai is installed and connected to the repo. The dashboard screenshot is included with the submission.
CHALLENGES
Generic AI feedback. Early versions produced feedback that sounded like a PM blog post. The fix was adding a product context screen before the questions and passing that context into each section evaluation.
Provider reliability. The OpenAI path worked structurally, but production report generation hit quota during final testing. I added a NVIDIA API Catalog provider and kept the evaluation path provider-aware instead of pretending one model was always available.
Streaming report state. The first architecture waited until all evaluations finished. That made the product feel slower than it was. Moving to Server-Sent Events meant the report could appear section by section.
Analytics proof. Novus/Pendo integration needed more care than just installing a snippet. I fixed the visitor initialization path so ShipCheck creates a real anonymous session id before analytics initializes.
WHAT I AM PROUD OF
The strongest part is the self-check. ShipCheck evaluated itself, exposed a real weakness, and produced a public report judges can inspect.
I am also proud that the deployed app is not just a landing page. A visitor can start the check, answer real questions, get streamed AI feedback, and open a persisted report without creating an account.
WHAT I LEARNED
Fast shipping creates a new failure mode: the product can look done before the thinking is done.
ShipCheck is built around that tension. It does not tell builders to slow down forever. It asks the few questions that are expensive to ignore before launch.
The technical lesson was similar: a feature is not real because the code path exists. The deployed path, persisted report, dashboard screenshot, and production checks matter more than the story I wanted to tell.
WHAT IS NEXT
- Team mode, so two founders or a PM/design pair can answer the same 20 questions and compare gaps.
- Retrospective mode, so builders can compare what they believed before launch against what happened after launch.
- Better Novus follow-through: keep the dashboard screenshot current and use live visitor/drop-off data only when the dashboard supports it.
- Score history, so a product can rerun ShipCheck over time and see whether its readiness is improving.
Built With
- next.js
- novus-ai
- nvidia-api-catalog
- openai
- pendo
- postgresql
- server-sent-events
- supabase
- tailwind-css
- typescript
- vercel


Log in or sign up for Devpost to join the conversation.