Back to Portfolio
Case Study · 2026

WritexNova

An AI-powered SaaS writing platform built from scratch — enabling users to generate, humanize, and analyze content with 10+ specialized tools.

Solo Full-Stack Developer
April – May 2026
Web SaaS (Vercel + Render)
Live 🟢
WritexNova Write Better · Smarter · Undetectable
10+ AI Tools
4 Plans
40+ Languages

What is WritexNova?

WritexNova is a full-stack AI writing SaaS platform that helps students, professionals, and content creators write undetectable AI content — built entirely by a single developer in under 6 weeks.

🎯

The Goal

Build a production-ready, monetizable AI writing platform with authentication, tiered subscriptions, payment processing, admin controls, and 10+ specialized AI tools — all from scratch.

👤

Target Users

University students needing undetectable essays, freelance writers wanting to speed up workflows, and professionals who need AI-assisted content that passes any detector.

💰

Business Model

Freemium SaaS with 4 subscription tiers (Free → Basic → Pro → Premium), monthly/yearly billing cycles, promo codes, referral rewards, and ad-based usage boosts.

Key Differentiator

Unlike competitors, WritexNova combines generation + humanization + detection in one platform, with GPT-4o on Pro/Premium plans giving industry-leading undetectability scores.

The challenge that needed solving

Students and writers were caught between needing AI assistance and avoiding AI detection — with no single platform offering a complete solution.

The Problem

AI content gets flagged everywhere

AI detectors like Turnitin, GPTZero, and Copyleaks are embedded in every academic institution. Yet students and professionals need the speed of AI. Existing tools either detect or humanize — never both.

  • ChatGPT output scores 85–100% AI on detectors
  • Humanizer tools exist but aren't integrated with generators
  • No single platform handles the full workflow
  • Premium models (GPT-4o) locked behind expensive APIs with no user-friendly interface
The Solution

One platform for the full writing workflow

WritexNova chains AI Generation → Humanization → Detection into a single seamless workflow, with plan-gated model access ensuring Pro users get GPT-4o quality at a fraction of raw API cost.

  • Generate → Humanize → Detect in 3 clicks
  • GPT-4o-mini for Free/Basic, GPT-4o for Pro/Premium
  • Temperature 0.92 + advanced prompting for <25% AI score
  • 10 specialized tools covering every writing need

Built with production-grade tools

Every technology was chosen for reliability, scalability, and developer speed — enabling a full-stack product to be shipped solo in weeks.

🟨
Node.js + Express
REST API backend · Route handling · Middleware
🔥
Firebase Firestore
User database · History · Auth tokens · Referrals
🤖
OpenAI API
GPT-4o + GPT-4o-mini · Generation · Humanization · Detection
💳
Stripe + LemonSqueezy
Subscription billing · Webhooks · Promo codes
Vercel
Frontend hosting · CDN · Instant deploys
🎨
Vanilla JS / HTML / CSS
Frontend · No framework · Pure performance
🚀
Render
Backend deployment · Auto-deploy from GitHub
🔐
Firebase Auth + JWT
Authentication · Session tokens · Auth guards

10+ tools shipped from zero

Every feature was designed and built from scratch — from the auth system to the referral engine to the admin dashboard.

01
AI Content Generator
Multi-type essays, articles, CVs in 40+ languages. Style, tone, length controls. Typing animation output.
02
AI Humanizer
Temperature 0.92 + bypass prompts. GPT-4o on Pro plan. Targets <25% AI score on major detectors.
03
AI Detector
Circular score visualization, reasoning breakdown, signal tags. Detailed analysis per paragraph.
04
Authentication System
Email/password + Google OAuth. JWT tokens (wx_token). Loop-safe auth guards across all pages.
05
Subscription & Payments
4 plans × 2 cycles = 14 Stripe price IDs. Plan middleware, word budgets, usage tracking, promo codes.
06
Dashboard & History
Real-time usage stats, word budget progress, tool cards, recent activity with open/edit/download.
07
Referral System
Unique referral codes. +1000 words per invite. +500 for new user. IP abuse prevention.
08
Admin Panel
User management, manual plan assignment, gift words, promo code creation, revenue overview.
09
More Tools (7)
Paraphraser, Grammar Checker, Summarizer, Translator, Citation Generator, ChatPDF, Article Rewriter.

Four tiers, carefully designed

Each plan was designed around a clear user persona — from casual students to power writers needing unlimited access.

Free
$0
forever
  • 2,500 word budget
  • 5 uses/day limit
  • Generator, Detector, Grammar
  • GPT-4o-mini
  • Ads shown
Basic
$4.99
/month
  • 10,000 words/month
  • Unlimited daily uses
  • + Humanizer added
  • GPT-4o-mini
  • No ads
Premium
$24.99
/month
  • 120,000 words/month
  • All 10 tools
  • GPT-4o — best quality
  • Unlimited input length
  • No ads ever

How it's all wired together

A clean separation between frontend, backend, and external services — with every piece communicating through authenticated REST APIs.

Frontend — Vercel (writexnova.vercel.app)
Auth Guard
auth-guard.js → checks wx_token → redirects
API Layer
api.js → apiFetch() → all backend calls
Payment Modal
payment-modal.js → Stripe checkout links
Typing Effect
typing-effect.js → typewriterEffect()
Theme System
6 color themes × dark/light mode
Backend — Render (writexnova.onrender.com)
server.js
Express app · CORS · Rate limit · Routes
Plan Middleware
plan.js → validateAndConsume() → word budget
AI Routes
ai.js → callOpenAI() → model per plan
Payment Webhook
payments.js → Stripe/LS webhook → plan update
User Model
User.js → PLANS config → getUser / createUser

Problems solved in production

Every real project has hard bugs. Here are the most significant technical challenges encountered and how they were resolved.

01
Bug

Webhook returning 500 error — all payments failing

LemonSqueezy webhooks were failing with {"error":"Webhook error"} causing all subscription activations to break silently.

Solved

express.json() middleware order conflict

express.json() was registered before express.raw(), pre-parsing the webhook body so HMAC signature verification always failed. Fixed by reordering middleware — raw before json.

02
Bug

Basic plan users blocked from tools they paid for

Plan middleware was incorrectly blocking Basic plan users from Humanizer and other features they were entitled to.

Solved

wordLimit vs wordBudget field mismatch

Usage counter was checking wordLimit in Firestore but the field was named wordBudget. Normalized field names across User.js and plan middleware, restoring correct access.

03
Bug

Deploy failing — Router.use() requires middleware function

Render deploy crashed with TypeError: Router.use() requires a middleware function but got a Object — crashing the entire server.

Solved

Duplicate module.exports in user.js

user.js had module.exports = router on line 156 AND line 288. The first export cut the file in half, returning an incomplete object. Removing the duplicate fixed the crash.

04
Challenge

AI output still detected at 70–80% after humanization

Default temperature 0.7 produced predictable, AI-patterned text even with humanization attempts, consistently failing detectors.

Solved

Temperature 0.92 + 10-rule bypass prompt

Rewrote humanizer system prompt with explicit rules: kill AI phrases, vary sentence length, force contractions, add human openers. Raised temperature to 0.92. Result: 15–25% on GPT-4o-mini, ~5–10% on GPT-4o.

What was shipped

A complete, production-ready, monetizable SaaS platform — built solo in under 6 weeks.

10+
AI Tools Shipped

Generator, Humanizer, Detector, Paraphraser, Grammar, Summarizer, Translator, Citation, ChatPDF, Rewriter — all connected to plan-gated model access.

4
Revenue Tiers Live

Free, Basic ($4.99), Pro ($9.99), Premium ($24.99) — with Stripe checkout, webhook processing, promo codes, and referral system fully functional.

~5%
AI Score Achievable

With GPT-4o on Pro/Premium + the custom humanizer prompt, users consistently achieve 5–15% AI detection scores on GPTZero and similar tools.

What building this taught me

Shipping a real SaaS alone is a different game than tutorial projects. These are the most important things this build taught me about engineering and product thinking.

🧩

Middleware order matters

The Stripe webhook bug — express.json() before express.raw() — taught me that Express middleware execution order is critical and silently destructive when wrong. Always put raw body parsers before JSON parsers.

🔑

Name fields once, use everywhere

The wordLimit/wordBudget mismatch showed me that inconsistent field naming across schema, middleware, and frontend causes bugs that are hard to trace. Define a schema contract and stick to it.

Prompt engineering is engineering

Getting humanized output below 25% AI score required iterating on the system prompt like debugging code — testing hypotheses, measuring outputs, refining rules. It's a real technical skill, not a trick.

🚀

Ship first, polish later

The entire platform was built and deployed in under 6 weeks by focusing on working features over perfect code. Real user feedback is more valuable than hypothetical optimizations.