🚀 Production-ready MVP demonstrating full-stack AI engineering with LLM integration, real-time trend analysis, and scalable API design.
A full-stack, trend-aware AI content generation platform built for marketing teams. Generate blogs, ads, social captions, and emails — powered by OpenAI and real-time Google Trends data.
🔗 Watch here: https://www.loom.com/share/a56b1c6c68cc462881ba4011fd32d72f
- 4 Content Types — Blog posts, Ad copy, Social captions, Marketing emails
- 5 Tone Modes — Professional, Casual, Witty, Inspirational, Urgent
- 10 Industries — Technology, Fashion, Fitness, Finance, Healthcare, and more
- Live Google Trends — Real-time trending keywords injected into every generation
- Trend Score — 0–100 relevance score based on how trend-aligned your content is
- Rewrite / Expand / Shorten — One-click content transformations
- 3 Variations — Generate multiple angles on the same prompt
- SEO Analysis — AI-powered score, title suggestion, meta description, and tips
- Copy to Clipboard — One click to copy generated content
- Save Projects — Persistent dashboard to store and reload your work
- User Authentication — Secure signup/login with JWT tokens and bcrypt passwords
| Layer | Technology |
|---|---|
| Frontend | React 18 + Vite |
| Backend | FastAPI (Python) |
| AI | OpenAI (LLM API) |
| Trends | Pytrends (Google Trends) |
| Database | SQLite + SQLModel |
| Auth | JWT + bcrypt (python-jose, passlib) |
| Frontend Deploy | Vercel |
| Backend Deploy | Render |
The system follows a full-stack client-server architecture with AI integration.
-
Frontend (React + Vite)
- Provides the user interface for content generation
- Collects user inputs (content type, tone, industry, keywords)
- Sends API requests to the backend
- Displays generated content, variations, and SEO insights
-
Backend (FastAPI)
- Handles authentication using JWT tokens
- Processes user requests and routes them to appropriate services
- Integrates with OpenAI for content generation
- Fetches real-time Google Trends data using Pytrends
- Applies business logic (trend injection, scoring, transformations)
-
AI Layer (OpenAI API)
- Generates high-quality, context-aware marketing content
- Supports multiple content formats and tone variations
-
Trends Engine (Pytrends)
- Fetches trending keywords based on selected industry
- Enhances prompts with real-time market signals
-
Database (SQLite + SQLModel)
- Stores user accounts and saved projects
- Enables dashboard functionality for content retrieval
-
Deployment Layer
- Frontend deployed on Vercel
- Backend deployed on Render
- Environment variables used for secure configuration and API communication
User → Frontend → Backend → (OpenAI + Trends) → Backend → Frontend → User
ai-content-generator/
├── backend/
│ ├── main.py
│ ├── auth/
│ ├── content_generator/
│ ├── requirements.txt
│ ├── Procfile
│ ├── runtime.txt
│ └── .env
├── frontend/
│ └── src/
│ └── App.jsx
├── .gitignore
└── README.md
- Frontend deployed on Vercel
- Backend deployed on Render
- Environment variables configured for secure API access and CORS handling
- Python 3.11+
- Node.js 18+
- OpenAI API key
cd backend python -m venv venv venv\Scripts\activate pip install -r requirements.txt
Create backend/.env:
OPENAI_API_KEY=your_key_here
SECRET_KEY=your_secret_here
ACCESS_TOKEN_EXPIRE_MINUTES=10080
Run backend:
uvicorn main:app --reload --port 8000
cd frontend
npm install
npm run dev
- User logs in → receives a JWT token
- User fills the content form
- Backend fetches Google Trends data
- Trends are injected into prompt
- OpenAI LLM generates content
- Trend score is calculated
- User can edit, optimize, or save content
- Pytrends rate limiting
- Render free tier sleep delay
- SQLite resets on redeploy
- PostgreSQL integration
- Bulk content generation
- Content scheduling
- Export features
- Team collaboration
- Analytics dashboard
- Multi-model support (OpenAI, Claude, Gemini)
Built by Saurabh Singh Bhandari
AI Engineer | Generative AI | LLM Applications
Focused on building scalable AI-powered products and real-world systems