CampaignPulse
CampaignPulse: ViralIQ helps creators and marketers predict if their Reddit posts will go viral before publishing.
Core trick
Scores draft Reddit posts on timeliness, novelty, clarity, and emotion using subreddit activity and timing heatmaps.
Tags
Description
CampaignPulse: ViralIQ helps creators and marketers predict if their Reddit posts will go viral before publishing. It analyzes subreddit insights, generates campaign plans, and gives a viral score based on timeliness, novelty, clarity, and emotion. This saves time, avoids low-engagement posts, and boosts impact.
https://github.com/shankasf/viral_checker
README excerpt
# Reddit Marketing Insights Toolkit Full-stack reference implementation that surfaces Reddit-native marketing insights and post variants. ## Features - Aggregates subreddit activity via the public Reddit API (new, hot, top listings) - Calculates timing recommendations (hourly + weekday activity heatmap) - Surfaces community vocabulary (keywords, flairs) and engagement benchmarks - Generates multiple post variants tuned for Reddit culture (uses OpenAI Responses API when available) - Builds a comprehensive campaign plan (overview, audience signals, timing, variants, next steps) - Enriches insights with Mastodon trending tags and exemplar posts for broader cultural context - React dashboard with Material UI components for quick exploration ## Project Structure ``` backend/ # FastAPI application exposing insights + variant endpoints frontend/ # Vite + React dashboard consuming backend APIs ``` ## Prerequisites - Python 3.10+ - Node.js 18+ - OpenAI API key (Responses API) for all AI generation ## Backend Setup ```bash cd backend python -m venv .venv # On Windows . .venv\Scripts\activate # On macOS/Linux source .venv/bin/activate pip install -r requirements.txt # Optional: configure environment copy .env.example .env # create manually if command unavailable ``` `.env` options: ``` OPENAI_API_KEY=sk-... OPENAI_MODEL=gpt-4.1-mini MASTODON_INSTANCE=https://mastodon.social ``` Run the API server: ```bash uvicorn app.main:app --reload --port 8000 ``` ## Frontend Setup