badii.studio · 2026 Launch audit for AI-built apps
35.76°N 10.81°E CET (UTC+1)

From almost works to launched.

Your AI-built app, secured, finished and launched. Fixed price.

Illustration: a mountain range drawn in text characters, with a flag planted on the highest summit.

7+ Years shipping

12 Companies since 2019

The problem

Almost works is the expensive part.

  • Demo works, production does not
  • Real users, real money, real data
  • No one has read the code

Illustration: an unfinished highway bridge, its two sections not yet joined.

  1. 01

    “It's 80% done. The last 20% won't move.”

    > The easy parts are generated. The hard parts need decisions.

  2. 02

    “Every fix breaks something else.”

    > Duplicated logic and no tests, so each prompt fixes one copy.

  3. 03

    “I can't read my own code anymore.”

    > Thousands of lines no one has reviewed.

  4. 04

    “Payments go through, but nothing updates.”

    > Stripe webhooks missing, unverified or failing quietly.

  5. 05

    “Anyone can read my database.”

    > Row-level security off, or too open on key tables.

Launch Audit scope

What I check.

Seven areas where AI-generated apps break once real users and real money arrive. I read the code and the configuration by hand, then test the flows.

Illustration: a stack of balanced stones.

  1. 01

    Row-level security and authorization

    Can user A read or change user B's data? I check every table policy and every API route, not just the ones the UI calls.

    Supabase · RLS
  2. 02

    Auth flows

    Sign-up, login, password reset, email change, session expiry, OAuth redirects and role checks, in production, not just on localhost.

    Sessions · OAuth
  3. 03

    Exposed secrets

    API keys in the client bundle, in the repo history or in public env files. Service keys that should never leave the server.

    Keys · Env
  4. See all 7 checks

Sample report

What you get back.

Every finding has a severity, the fix and what changes after it. The audit finds them, a Sprint fixes them. This sample uses a fictional demo app, so you can see the format before you buy.

Audit report · demo-app

sample Fictional demo app, used to show the format. Not a client.

Lovable · Supabase · Stripe

Illustration: a beetle, as in a bug found in the code.

  • 2 critical
  • 1 high
  • 1 medium
  • 1 low
Fixed in the Sprint 5/5
  1. F-01 critical RLS

    Profiles table readable by anyone

    Before
    RLS disabled on public.profiles. The anon key returns every row, including emails.
    Fix
    Enable RLS. Add select and update policies scoped to auth.uid() = id.
    After
    Anon select returns 0 rows. Users only see their own profile.
  2. F-02 critical Stripe

    Webhook accepts unsigned events

    Before
    The webhook handler trusts the request body. A forged event can mark an order as paid.
    Fix
    Verify the Stripe signature. Store event ids and skip duplicates.
    After
    Forged events get a 400. Replays are ignored.
  3. See all 5 findings

Pricing · USD

Fixed prices. Published.

Start with the audit. Everything after it is scoped and quoted before I start, so the price never moves.

Illustration: an ibex standing sure-footed on a cliff ledge.

  1. 00

    Free Teardown

    A 5 to 10 min recorded review of your live app's public surface.

    • Screen recording with voice-over
    • What a stranger can see and break from the outside
    • Max 5 per week

    Free

    48h

  2. 01b

    Quick Fix

    One defined blocker, fixed and deployed.

    • Agreed scope before I start
    • Fix deployed to production
    • Short note on what changed

    $750

    3 business days

    Buy · $750

    Secure checkout via Stripe · Refund policy

02+

After the audit

Quoted from the audit findings, so the price is fixed before I start.

  • Fix & Launch Sprint from $2,500 1–3 weeks
  • Care from $750 per month
  • MVP Build from $8,000 4–6 weeks
  • Due-Diligence Audit $1,500 For funded startups
See all services and payment terms

The audit guarantee

If the audit doesn't find at least 5 concrete, actionable issues, it's free.

Illustration: a calm sea drawn in text characters, slowly moving.

Portrait of Badii Boutar, drawn in text characters.

About

Built with AI. Finished by an engineer.

I'm Badii Boutar, a senior full-stack engineer with 7+ years of experience. I work alone, so the person you talk to is the person who does the work.

I led a platform migration for Clyso, a German tech company, added AI features to 1000cookbooks, and built Peeps, one of the most popular apps on Overwolf. I also built my own e-commerce platform that ran live stores with checkout and payments.

I use Claude Code every day. That's how I know where AI-generated code breaks: auth and session edge cases, missing row-level security, unverified Stripe webhooks, leaked keys and the same logic written three times.

  • 12 Companies since 2019
  • Built with
Location
Tunisia · CET (UTC+1)
Online
09:00 to 20:00 CET
Overlap
Full EU day · US East Coast mornings
Billing
Registered business · USD or EUR invoices

How I work with your code

Safe to say yes.

Illustration: a bee gathering pollen on yellow flowers.

  • 01

    Fixed scope

    You know what is included and what it costs before I start.

  • 02

    Code stays in your GitHub

    I work in your repo, on branches you can review.

  • 03

    IP assigned on payment

    Everything I write for you is yours once the invoice is paid.

  • 04

    Read-only access first

    The audit needs read access only. Write access comes later, if at all.

  • 05

    NDA on request

    Ask, and I sign one before you share anything.

FAQ

Questions.

Illustration: a statue of a seated man, deep in thought.

01 Do you need my passwords?

No. I never ask for your personal logins. You invite me as a collaborator on GitHub and your backend, with the lowest access that works. For the audit, that is read-only.

I only get write access when we start fixing, and you can remove it at any time.

02 What do you need from me to start?

For the audit: a read-only invite to your code (GitHub) and to your backend (for example your Supabase project), plus a few lines on what the app does and what worries you.

No passwords. Anything else I need, I ask by email.

03 What if my app isn't built with Lovable or Bolt?

That is fine. The audit covers web apps on a modern JavaScript or TypeScript stack, such as React, Next.js, Node.js, Supabase, Firebase or PostgreSQL, whether they were written by hand or with any AI tool.

Not sure your stack fits? Email me before you buy and I will tell you.

04 Lovable already scans my app. Why do I need this?

Built-in scanners are a good first pass. They look for known patterns. They do not know your business rules: who should see which rows, what happens when a Stripe webhook arrives twice, or whether a reset link works in production.

I read the code and the configuration by hand and test the flows that matter for your app.

05 Will you rebuild my app?

No, not by default. I fix what you have. If part of it cannot be saved, the audit says so and explains why, with a price, before any work starts.

06 Who owns the code?

You do. The code stays in your GitHub, and all IP is assigned to you once the invoice is paid.

07 What happens after launch?

Every Sprint ends with a handover doc, so you or another developer can take over. If you want me to keep it running, a monthly Care plan covers monitoring, backups, updates and fixes.

08 How do payments work?

Audits are paid 100% upfront. Sprints are 50% to start and 50% at launch. Care is billed monthly in advance. MVPs are paid 30% / 40% / 30%.

Payments are processed by Stripe, and show on your card statement as BADII.STUDIO. Invoices are issued by Pan African Center for Entrepreneurship, in USD, EUR on request. Refunds follow the refund policy at badii.studio/refunds.

09 What time zone are you in?

I am based in Tunisia, CET (UTC+1), and online 09:00 to 20:00 CET. That is a full overlap with Europe and the morning on the US East Coast.

Start

Find out what stands between you and launch.

Buy the audit and get a prioritized list and a fixed quote in 3 business days. Not ready yet? Ask for a free teardown.

Prefer to talk first? Book 30 min or email badii@badii.studio

Free teardown

48h · max 5 / week

A 5 to 10 min recorded review of your live app's public surface. No access needed, just the URL.

I use these details only to reply and record your teardown, and delete them after 12 months. Privacy