RLRoman Levchenko
WorkHow it's builtAI workflow
Get in touch
← All work

W05 / Case study

Turning an AI writer into a managed service

A Done-For-You workflow, bulk AI generation in background jobs, and inline AI suggestions in the editor.

Client
Cuppa
Role
Full-stack engineer
Period
2023 — 2025
Stack
  • Next.js
  • Supabase
  • Inngest
  • Vercel AI SDK
  • TipTap

01 / Summary

Summary

Cuppa is an AI tool that writes SEO articles. I built its Done-For-You system in about three months: an agency-style workflow where staff produce articles for client teams, with projects, drafts, bulk generation sessions and a separate client view. I also added inline AI suggestions to the editor, article search and tagging, and author profiles.

02 / Key decisions

Key decisions

  • Suggestions as accept-or-reject edits

    The model is forced to return pairs of old and new text, and the editor turns each pair into a suggestion the writer accepts or rejects.

    Trade-off Matching paragraphs by text is fragile, but it avoids building a diff engine.

  • Prompts in the database

    Prompt templates live in the database with placeholders for tone and language, so admins change them without a deploy.

    Trade-off Prompt changes skip code review, so they need their own care.

  • Long work off the request path

    Bulk generation, search processing and publishing run as background functions, not inside page requests.

    Trade-off Users watch progress instead of getting an instant result.

← PreviousOne deployment, many artist storefrontsNext →An honest null result

© 2026 Roman Levchenko · Warsaw, EU

Built with Next.js, NestJS and Postgres on Railway. See how it's built

  • LinkedIn
  • GitHub
  • Upwork