Example build / Feedback Dock
A SaaS-shaped MVP, not a dashboard mockup
The example is useful only when two teams can use it without seeing each other's records. The proof is the permission boundary, not the number of screens.
The records need a durable home. Adios can attach persistent data through managed databases for your app.
Accounts
An owner and member can sign in.
Tenancy
Every project belongs to one team.
Workflow
Members create and resolve feedback.
Evidence
Cross-team access tests fail safely.
Before you prompt
Decide the tenant boundary before asking for screens
A SaaS prompt needs more than colors and features. Write down who owns a workspace, who can join it, and which records must never cross that boundary.
One paying-worthy job
Choose the single result a customer should finish. Leave secondary workflows for later.
Named roles
Start with owner and member unless the product truly needs another role.
Tenant-owned records
Mark every project, feedback item, invitation, and plan record with the owning team.
Billing boundary
Model the plan now. Connect test billing only after identity and the core workflow pass.
If this is your first prompt-led project, begin with build your first app with AI and return once its review loop feels familiar.
Scope before source
Ask the agent to turn the idea into a bounded SaaS plan
Fill in the five bracketed fields. The agent must inspect the current workspace and wait, so you can correct the user journey or tenant model before files change.
Help me plan a small SaaS MVP in this Adios workspace. Do not edit any files yet.
The product:
- Name: [SAAS NAME]
- Customer: [ONE TYPE OF CUSTOMER]
- Problem: [ONE COSTLY OR FRUSTRATING PROBLEM]
- Core result: [WHAT THE CUSTOMER CAN FINISH]
- Roles: [OWNER, MEMBER, OR OTHER REQUIRED ROLES]
For the first version, include only:
- account sign-in;
- one workspace or team per customer;
- [THE ONE CORE WORKFLOW];
- an owner view and a member view;
- a simple plan field, without live billing; and
- a clear empty state and sample data for testing.
Leave these for later:
- [FEATURE 1];
- [FEATURE 2]; and
- live subscription charging.
First inspect the current source, framework, tests, database setup, and adios.yaml. Then give me:
1. a plain-language user journey;
2. the smallest data model;
3. the tenant and permission boundaries;
4. the pages or API routes you would change;
5. the checks you will run; and
6. any decision you need from me.
Wait for my approval before editing.What a useful response contains
- One primary customer journey
- A tenant-aware data model
- Explicit owner/member permissions
- A list of deliberately deferred features
Build the approved slice
Generate the workflow and prove the team boundary
Paste this only after the plan matches the product you want. It keeps live billing out of the first implementation and asks for a cross-team access test.
Implement the SaaS MVP from the plan I approved.
Requirements:
- Keep the current framework, package manager, health route, and Adios deployment setup.
- Preserve adios.yaml and explain any required change before making it.
- Use the project's established authentication approach. Do not invent password storage or cryptography.
- Enforce the team boundary in server-side data access, not only by hiding interface controls.
- Store persistent records in the configured database and add reversible migrations when the project uses migrations.
- Give new accounts a useful empty state and provide clearly labelled development seed data.
- Treat the plan field as product state only. Do not connect live payments in this increment.
- Keep secret values out of source. Refer to required values by environment-variable name.
- Do not invent testimonials, customer logos, usage numbers, revenue, or security certifications.
- Add or update tests for the core workflow and for one user attempting to access another team's data.
- Run the existing formatter, lint, test, and build commands.
When finished, show me:
1. the changed files;
2. the data and permission model;
3. the test results;
4. environment variables I must configure in Adios; and
5. a manual Preview checklist.
Do not deploy to production.What a useful response contains
- Real persistent records rather than static cards
- Server-side permission enforcement
- Seeded Preview paths for both roles
- Automated checks plus a manual test list
Add billing separately
Plan test-mode subscriptions without hiding the obligations
Billing is its own increment. This prompt asks for provider-specific design, signed webhooks, idempotency, and the business decisions code cannot make for you.
Plan a separate test-mode billing increment for this SaaS. Do not edit or deploy yet.
Use the payment provider I confirm: [PROVIDER]. Use its current official SDK and hosted checkout or billing portal where appropriate. Never collect or store raw card details in this app.
The plan must cover:
- the product and price identifiers stored as configuration;
- test-mode checkout;
- signed webhook verification;
- idempotent event handling;
- subscription state transitions and failed payments;
- which features, if any, are gated by server-side authorization;
- cancellation and billing-portal behavior;
- secret names to configure in Adios; and
- automated and manual test cases.
List the tax, refund, privacy, support, and pricing decisions that remain my responsibility. Wait for my approval before changing files.What a useful response contains
- Test mode stays separate from live credentials
- Webhook verification and replay behavior
- Server-side entitlement decisions
- A list of unresolved business obligations
Review before release
Ask for evidence, remaining risks, and a stop before deploy
Run this after Preview works. It turns the important permission and configuration checks into a release decision you still control.
Perform a final release review of this SaaS MVP. Fix only confirmed problems and do not deploy.
Verify:
- a new customer can create an account and finish the core workflow;
- team data cannot be read or changed by another team;
- owner-only actions are enforced on the server;
- empty, loading, validation, forbidden, and error states are understandable;
- database migrations and seed behavior are safe for the target environment;
- no token, password, private key, or connection string is committed;
- the health route and existing Adios deployment configuration still work;
- the existing formatter, lint, tests, and production build pass; and
- live billing is disabled unless I separately approved and configured it.
Return the evidence, remaining risks, required Adios secrets, and a manual production checklist. Stop before deployment for my approval.What a useful response contains
- Evidence for tenant isolation
- Passing repository checks
- Named secrets without their values
- A human-controlled deployment decision
Test the result
A passing build is the start of the review
Open Preview and perform the important journeys yourself. Ask the agent for evidence, but do not confuse its summary with your approval.
Tenant access
- A member of Team A cannot read, guess, update, or delete Team B records.
- Only an owner can invite members or change the team's plan field.
- A removed member loses access on the next protected request.
Product journey
- A new team sees a helpful empty state and can create its first project.
- A member can add, update, and resolve feedback in the intended order.
- Validation and failed requests leave the user with a clear next step.
Release evidence
- Migrations apply to a clean test database.
- Formatter, lint, tests, build, and health checks pass.
- Logs explain failures without recording secrets or private content.
Human approval gate
Deploy the MVP only after the boundary holds
A polished pricing page cannot rescue a broken tenant model. Review the agent's evidence, rerun the two-team test yourself, configure named secrets in Adios, and approve only the version you saw in Preview.
host and deploy the finished AI-built SaaS- 01Preview the exact release candidate with two separate team accounts.
- 02Confirm migrations, health, and all repository checks pass.
- 03Configure required values through Adios secrets, never committed files.
- 04Keep test billing disabled unless its separate increment passed.
- 05Approve the release, then verify sign-in and the core workflow on the live URL.
Questions before you start
What this guide does—and does not—promise
Can a non-developer build a SaaS MVP with AI?
A non-developer can direct a bounded MVP, but must still define the customer, test permissions and failure paths, and own billing, privacy, support, and launch decisions. The prompts in this guide make those review points explicit.
Why does the guide delay live billing?
Identity, tenant isolation, and the core workflow should work before payment state adds more failure modes. Billing is planned and tested as a separate increment with hosted checkout, signed webhooks, and human approval.
How should tenant data be separated?
Every tenant-owned record should carry its team or workspace ownership, and every protected server operation should enforce that boundary. Hiding another team's records in the interface is not sufficient.
Can I keep changing the SaaS after launch?
Yes. Continue in the source-backed workspace, make one bounded change, test it in Preview, review the diff and checks, and then approve a new release without replacing the current live version first.