Prompt Rocket once — a Next.js route publishes every article.
Rocket.new has no blog API, yet the web apps it generates are Next.js projects wired to your own Supabase project. DraftSEO’s prompt has Rocket add a signature-checked route handler on your app’s domain — deliberately not a Supabase Edge Function — plus dynamic server-component /blog pages, so once the app is launched every article publishes itself.
| Connection | A prompt pasted into the task chat — the real secret is set in Settings → Environment, never in chat |
|---|---|
| What Rocket builds | Route handler + Supabase posts table + /blog — the table is created with a migration |
| Plan | Pro or above to go live — Rocket requires it for production launches and custom domains |
| Secret | Applies from the next build — save it on the Production tab, then Update or relaunch |
| Images | Copied to a public Supabase Storage bucket — uploaded server-side with a key the browser never sees |
| SEO | Dynamic server components + meta fields — new articles render without a rebuild |
Who does what
Paste the prompt into Rocket, launch the app, set DRAFTSEO_WEBHOOK_SECRET under Settings → Environment and update. Once the signed test passes, publishing needs nothing further from you.
Rocket builds the route once; DraftSEO supplies the articles.
Setup
Copy the prompt DraftSEO tailors to Rocket’s Next.js and Supabase stack.
~30 seconds
Rocket adds app/api/draftseo-webhook, a migration for the posts table and server-component /blog pages. Launch the app — on your custom domain if you have one.
~a few minutes
Click the task name, open Settings → Environment, save DRAFTSEO_WEBHOOK_SECRET on the Production tab (and Staging if you test there), then Update or relaunch.
~2 minutes
Trigger the test in DraftSEO; green means the rebuilt app reads the secret and accepts signed requests.
~1 minute
Every article DraftSEO produces is stored in Supabase and rendered on /blog, no rebuild involved.
Ongoing · zero clicks
FAQ
Rocket builds web apps in Next.js, which can run server code. The prompt has Rocket add a route handler that verifies DraftSEO’s signature, stores each article in your Supabase project and renders it on /blog — DraftSEO only has to deliver to that route.
The app has to be launched publicly before it can receive articles, and Rocket keeps production launches and custom domains for its Pro plan and above. If you connect a custom domain, give DraftSEO that address: articles build rankings for the address they are published on.
Rocket can generate Supabase Edge Functions, but by default they answer any call without a Supabase JWT with a 401, before a signature check could run. Rocket’s own payments tutorial places webhooks in a Next.js route on the app’s domain, so the prompt follows that pattern and rules out an Edge Function.
A value saved in Settings → Environment applies from the next build. Click Update or relaunch the app, check the value sits on the Production tab (and Staging if you test there), then send the test again.
No card required. Rocket adds the route; DraftSEO fills /blog.