App Factory
Spec a web app in Slack. Get a live, deployed Vercel URL. No code editor needed.
How It Works
Chief, build me a small dashboard that shows our top 10
customers by Stripe revenue this quarter. Refresh nightly.Chief will:
- Ask 1-2 clarifying questions (visual style, who can access it).
- Generate a Next.js app — components, data layer, styling.
- Wire up your Stripe integration as the data source.
- Deploy to your Chief-linked Vercel project.
- Reply with the live URL.
Total time: usually 2-5 minutes for a simple app.
What You Get
- A real Next.js 14 codebase (App Router, TypeScript, Tailwind).
- Hosted on your Vercel account (Chief uses your Vercel token).
- Branded to match your brand if registered.
- A unique subdomain like
acme-customers.hirechief.app.
Iterating
Apps aren’t one-shot. You keep talking to Chief about the app.
Chief, can you add a search bar at the top? And make the
table sortable by column.Chief edits the code, redeploys, and replies with the new URL. The conversation thread is the version history — you can scroll back and revert with “Chief, go back to the version before the search bar”.
Auth on Generated Apps
By default, generated apps are gated to your Slack workspace. Visitors are redirected to sign in with Slack and only members of your workspace can view.
Other auth options:
- Public — no login (use for marketing or public dashboards).
- Custom emails — list specific email addresses or domains.
- API token — for machine-to-machine access.
Limitations
- Chief deploys to Vercel only. No support for AWS / GCP / self-hosting at this time.
- Apps run on Vercel’s free or Pro tier (yours). Chief doesn’t manage your Vercel billing.
- Database support: read-only against your Convex deployment, or external DBs through the integration vault. Chief doesn’t spin up new databases for you.
- Each tenant can have up to 10 active apps on Pro, 50 on Enterprise.
Cleanup
Apps you no longer want: “Chief, delete the customer dashboard app”. Chief tears down the Vercel project and removes the subdomain.