DevX AI
An AI SaaS with six tools (article writer, blog titles, image generation, background/object removal, resume review), with Clerk auth and a free-tier limit.

Overview
I built this by following a tutorial to learn the React + Express + Clerk stack, then changed and deployed it myself. There are six tools: article writing, blog titles, text-to-image, background removal, object removal, and PDF resume review. Free users get 10 generations in total.
Approach
Gemini is called through the OpenAI SDK using Google's OpenAI-compatible URL. The free-tier counter lives in Clerk's privateMetadata, with a 60s in-memory cache so I'm not calling Clerk on every request.
Architecture / how it works
- Two rate limits: 105 requests per 15 min in general and 25 per 15 min on AI routes, with
trust proxyset so Vercel's forwarded IP is used. - Zod validates request bodies, and HTML is stripped from prompts before they reach any AI API.
- Image editing uses Cloudinary's
background_removalandgen_remove. ClipDrop handles text-to-image.
Tech stack
Outcomes
Deployed as two Vercel projects (client and server). After the tutorial part was done, I came back and fixed the CORS, security and rate-limit problems that only showed up once it was running on serverless.