All stories
Article

Vibe-coded a business app? Check these 7 things before launch

Built a business app with AI? Check permissions, private keys, backups, mobile usability, and maintenance before inviting customers to use it.

Getting an app to work for the first time feels great. You describe a quoting tool, booking system, or customer portal, and suddenly you can click through something that looks like the idea in your head.

Before you send customers the link, give yourself one more job: prove that the app can handle real business use.

My recommendation is to check seven things: the business rules, customer permissions, private keys, failure cases, backups, mobile experience, and maintenance plan. A working demo is a useful starting point. These checks help you decide what still needs attention before launch.

This applies whether you're building a tool for a shop in McAllen or a service business working across Texas. The technology matters, but so does a basic question: what happens to your customers when something goes wrong?

1. Write down what the app must get right

Start with the job you built it to do. For a quoting app, that might mean calculating a price, saving the customer's request, and letting your team find it later.

Write a few specific rules before asking AI to test anything:

  • A customer can't change the approved price of an existing quote.

  • Required information stays attached to the right customer.

  • Submitting the same request twice doesn't create two jobs.

  • A staff member can tell whether the request actually saved.

Those are example requirements, not rules every app must share. Yours should come from your business process.

Ask someone to walk through the workflow using those written expectations. If the only test is “the screen looks right,” you're leaving the most important behavior undecided.

2. Check what each account can access

A login screen doesn't answer every permissions question. A customer might be signed in correctly and still be able to open someone else's invoice if the app doesn't check ownership.

Use two test customer accounts and a staff account. Confirm that each sees only the records and actions intended for that role. Have a developer verify the server checks those permissions too; hiding an edit button in the browser is insufficient.

OWASP's authorization guidance recommends checking permissions on every request and denying access unless it's allowed. For a business owner, the practical question is straightforward: can the app explain why this person is allowed to see this record?

3. Keep private keys out of the browser

Email services, payment providers, and AI tools often use credentials to identify your application. A private key can grant access or allow charges, so it needs a deliberate home.

Have the developer check the browser code, repository, logs, and deployment settings for exposed secrets. Store private credentials on the server using the hosting platform's appropriate secret storage. A variable named “secret” doesn't protect anything if the build includes its value in downloaded JavaScript.

Some services also provide public keys designed for browser use. Check the provider's documentation instead of assuming every key has the same rules. An exposed private credential needs revocation or rotation; removing it from the latest file alone doesn't invalidate copies. OWASP explains that credential lifecycle in its secrets management guidance.

4. Test the awkward situations

The normal path is easy to demonstrate: fill in the form, click submit, and see a success message.

Now try a slow connection. Submit with missing information. Let a session expire. Use a long business name. Click the button twice. If a connected service fails, check whether the app tells the customer what happened and preserves work where appropriate.

These scenarios should be tested in a controlled environment with test accounts and payment-provider test mode where relevant.

AI can help generate test ideas, but someone should review what the tests actually prove. GitHub's guidance for Copilot suggestions calls for reviewing and validating generated code, including checking its security. A confident explanation from a coding tool isn't evidence that a workflow passed.

5. Restore a backup before you need one

For a customer-facing app, ask where the records live, how they're backed up, and how much recent work could be lost if the main database failed.

Then restore a backup into a separate test environment and check the result. Can you open a saved quote? Are uploaded files available? Are the restored records actually the ones you expected?

Keep the recovery instructions somewhere your team can find them. Include who handles the problem and which business process you can use while the app is unavailable. Even a temporary manual intake form can be useful if you've agreed on it beforehand.

6. Finish a real task on a phone

Open the app on a phone and complete the main workflow from beginning to end. Don't stop after checking the homepage.

Try entering a phone number, correcting a mistake, opening the keyboard, uploading a file, and finding the confirmation. Check whether labels and error messages still make sense on a small screen.

If your Rio Grande Valley customers use both English and Spanish, include both languages in the review when your app supports them. The confirmation and error messages deserve the same care as the welcome screen. Our mobile design introduction explains the broader approach; this check is about completing the actual task.

7. Decide who maintains it

Before launch, name the person responsible for updates, broken integrations, support requests, and recovery. Confirm that the business controls its domain, hosting account, code, and necessary service accounts.

Ask for a short handover document: how to run the app, release a change, find errors, and restore the previous version. Have a developer review the packages the AI introduced. OWASP's AI coding guidance specifically addresses checking dependencies and reviewing changes that go beyond the requested task.

You don't need to turn a small tool into a massive project. You do need enough understanding to keep it running when the original chat session is gone.

Make the launch decision concrete

Mark each check as passed, needs work, or not applicable, and write down the evidence. Resolve issues that could expose customer data, lose records, or apply the wrong business rules before inviting customers in.

If you've built a prototype and need help deciding what comes next, talk with RGV Web Design. Bring the app, a description of the problem it solves, and the workflow you want customers to complete. That's a useful starting point for a development conversation.