SaaS · Featured · 2023

StealthWriter.

Every word, human.

RoleFull-stack engineer
ShippedMarch 2023
StackNext.js · React · Supabase +4
abdelmaksoud.dev
presents
Admit one
stealthwriter.ai
StealthWriter

Act I

The challenge

The AI models were the easy part, they lived on someone else’s backend. The real work was everything a paying product needs wrapped around them: metering every word fairly, stopping abuse before it ever reached the models, and keeping Stripe and the quota ledger from ever disagreeing about what a user was owed.

Act II

What I built

The web platform behind stealthwriter.ai. The humanization and detection models run on a separate ML backend; this repo is everything around them. I built the product layer: a word-metered quota engine, per-request anti-abuse, async job orchestration, and Stripe subscriptions kept in sync with all of it.

Intermission, the demo

The product, playing itself

Input, AI draftDetector: 98% AI

Leveraging cutting-edge algorithms, our platform seamlessly optimizes content workflows to maximize efficiency and drive impactful outcomes.

Output, humanizedDetector: 96% human

Our platform quietly rewrites the busywork out of your content, so it reads like you wrote it on a good day.

the pass sweeps once on scroll-in · the fuchsia is StealthWriter’s, not ours

The cast

What actually makes it work

Read the card, then flip it to watch the mechanism run.

0x01

Word-metered quota engine

Two point buckets drained in order (monthly first, then purchased) with split-consumption accounting, an RPC audit ledger, and three refund paths for throttle, concurrency rejection, and ML failure.

how it works

Word-metered quota engine

0x02

Per-request anti-abuse

Every rewrite passes an encrypted device fingerprint and device limit, an IP registry with a 10-trials-per-day free cap, a 5-second throttle, and a suspension flag before it ever reaches the models.

how it works

Per-request anti-abuse

0x03

Stripe to quota sync

Webhook events drive welcome / reset / update RPCs (×12 for annual plans) so a subscription change reconciles the quota ledger without a human in the loop.

how it works

Stripe to quota sync
Open live Open in Figma