Case study 01
Affpilot
The generation and publishing flows behind 1M+ AI-written articles.
Top contributor to the platform frontend: ~920 of 1,860 commits. Founding frontend engineer of Flippium: 79% of commits.
Context
Affpilot is an AI auto-blogging SaaS: users pick keywords, configure tone and language, and the platform researches, writes, and publishes SEO articles to their sites. When I joined it was an early-stage product; over the next two years it grew to 100k+ registered users and more than a million generated articles.
I built and maintained the React component architecture (290 reusable components across 92 routed pages, integrating 138 REST endpoints) as top contributor with roughly 920 of the codebase's 1,860 commits.
What I built
Generation workflows
The flows that produced the platform's core output.
- Form-driven interfaces for 16 AI article generators with tone, point-of-view, and 20-language controls.
- Bulk-generation tables with per-account batch validation caps, live success/failure status, and failed-keyword recovery.
- These workflows produced 1M+ articles (2B+ words), sustaining 2,000+ articles a day at peak.
Write-to-publish pipeline
From editor to a live post on the user's own site.
- Tiptap rich-text editor connected through a central dialog registry to WordPress, Blogger, Medium, and Shopify publishing.
- API-key-secured webhook channel with site verification, category and author mapping, draft/publish states, and post scheduling.
Checkout & billing
The revenue path, end to end on the frontend.
- Mobile-first pricing tables wired to Stripe, SSLCommerz, PayPal, and bKash/Nagad, with a word-credit ledger and coupon / lifetime-deal redemption.
- Processed ~$390K across 11,000+ transactions from 4,200+ paying customers.
- Built the redemption flow for an 8-tier AppSumo launch with 570+ redemptions.
SEO toolkit
- Country-aware keyword explorer, keyword clustering from CSV or pasted lists, and sitemap title extraction, feeding research directly into bulk generation.
Flippium: founding frontend engineer
Affpilot's website-flipping marketplace, built as a second product (Next.js 14 App Router, GraphQL, shadcn/Radix).
- Multi-step listing wizard, marketplace filtering, and offer negotiation.
- Buyer, seller, and moderator messaging with optimistic updates, infinite scroll, and image/emoji support.
- Facilitated 100+ site sales at up to $3K each; I authored 79% of commits.
Adjacent products, built solo
- A React 19 + TypeScript billing back-office: CRUD modules, Zod-validated forms, URL-synced server-side tables, and a CLI feature scaffolder.
- A 13-tool free AI-writing microsite rendering server-defined dynamic forms, used as a signup funnel.
Decisions & trade-offs
A central dialog registry instead of scattered modals
Publishing to four platforms from anywhere in the app meant dozens of modal flows. A single registry keyed by dialog ID kept them consistent and lazily loaded: one pattern to maintain instead of thirty ad-hoc ones.
Validation caps before bulk generation
A malformed keyword list could burn a user's entire word-credit balance in one bulk job. Per-account batch validation with failed-keyword recovery made bad rows retryable instead of billed-and-lost.
RTK Query as the single data layer
138 endpoints with tag-based cache invalidation instead of hand-rolled fetching, so generation status, credit balance, and publishing state stay consistent across 92 pages without manual refetch choreography.
Outcome
- The generation and publishing flows I built carried the platform to 1M+ articles for 100k+ registered users.
- Billing I implemented processed ~$390K across 11,000+ transactions.
- Flippium shipped and closed 100+ site sales at up to $3K each.