TurboGears /
tg2
Python web framework with full-stack layer implemented on top of a microframework core with support for SQL DBMS, MongoDB and Pluggable Applications
76/100 healthLoading repository data…
ArjoSugnik / repository
A full-stack web application that simulates digital ad campaigns and automatically diagnoses performance issues using a rule-based diagnostic engine — built with Python (Flask), SQLite, and vanilla HTML/CSS/JavaScript.
A transparent discovery signal based on current public GitHub metadata.
This score does not audit code, security, maintainers, documentation quality, or suitability. Verify the repository and its current documentation before adoption.
A full-stack web application that simulates digital ad campaigns and automatically diagnoses performance issues using a rule-based diagnostic engine — built with Python (Flask), SQLite, and vanilla HTML/CSS/JavaScript.
You enter ad campaign data (budget, impressions, clicks, conversions) and the system:
| Dashboard | Diagnostics | Analytics |
|---|---|---|
| Health score cards + alert panel | Issue detection with root causes | CTR, Conversion & Budget charts |
ad-campaign-simulator/
├── backend/
│ ├── app.py # Flask server — all API routes
│ ├── database.py # SQLite setup and connection
│ ├── campaigns.py # Create / Read / Delete campaigns
│ ├── diagnostics.py # Rule-based diagnostic engine ⭐
│ ├── reports.py # PDF report generator
│ ├── seed_data.py # 6 example test campaigns
│ └── requirements.txt # Python dependencies
└── frontend/
├── index.html # Single-page app (5 tabs)
├── css/
│ └── style.css # Dark professional theme
└── js/
├── api.js # All fetch() calls to backend
├── charts.js # Chart.js chart renderers
└── app.js # UI logic & tab navigation
cd backend
pip install -r requirements.txt
python app.py
Server runs at
http://localhost:5000
Open frontend/index.html in your browser.
Tip: Use the Live Server extension in VS Code for best experience.
Click the 🌱 Load Demo Data button in the sidebar to populate 6 example campaigns.
| Method | Endpoint | Description |
|---|---|---|
GET | /api/campaigns | List all campaigns |
POST | /api/campaigns | Create a new campaign |
GET | /api/campaigns/:id | Get one campaign |
DELETE | /api/campaigns/:id | Delete a campaign |
GET | /api/diagnose/:id | Run diagnostics on a campaign |
GET | /api/insights | Health summary for all campaigns |
GET | /api/report/:id | Download PDF report |
POST | /api/seed | Load example campaigns |
The core of this project is diagnostics.py — a rule-based system that evaluates campaigns against industry-standard thresholds:
| Issue | Trigger | Severity | Health Deduction |
|---|---|---|---|
| Low CTR | CTR < 0.5% | 🔴 Critical | -25 pts |
| Low CTR | CTR < 1.0% | 🟡 Warning | -10 pts |
| High CPC | CPC > $10 | 🔴 Critical | -20 pts |
| High CPC | CPC > $5 | 🟡 Warning | -8 pts |
| Low Conversion Rate | Conv < 1% | 🔴 Critical | -25 pts |
| Low Conversion Rate | Conv < 2% | 🟡 Warning | -10 pts |
| Tracking Failure | Clicks > 100 & Conv = 0 | 🔴 Critical | -30 pts |
| Budget Exhausted | Remaining < 5% | 🔴 Critical | -15 pts |
Health Score starts at 100 and deductions are applied per issue:
| Layer | Technology | Why |
|---|---|---|
| Backend | Python + Flask | Simple REST API, readable syntax |
| Database | SQLite | Zero-config file-based database |
| Frontend | HTML + CSS + JS | No framework needed, beginner-friendly |
| Charts | Chart.js | Easy to use, beautiful visuals |
| PDF Export | ReportLab | Professional PDF generation in Python |
| Campaign | Issue Simulated |
|---|---|
| Spring Sale - Google Search | ✅ No issues (healthy baseline) |
| Brand Awareness - Display Network | 🔴 Low CTR Critical |
| Competitor Keywords - Search | 🔴 High CPC Critical |
| Black Friday - Retargeting | 🔴 Tracking Failure |
| Holiday Rush - Facebook | 🔴 Budget Exhausted |
| New Product Launch - Broken Campaign | 🔴 Multiple Critical Issues |
This project demonstrates skills directly relevant to Product Support Engineering and Ad Tech roles:
MIT License — free to use, modify, and distribute.
Built as a portfolio project for a Product Support Engineer role.
Feel free to fork, star ⭐, or reach out with questions!
Selected from shared topics, language and repository description—not editorial ratings.
TurboGears /
Python web framework with full-stack layer implemented on top of a microframework core with support for SQL DBMS, MongoDB and Pluggable Applications
76/100 healthboylegu /
A example demo base Sanic with vueJS2.x + webpack2.x as new python full stack web practice
72/100 healthwebsauna /
Websauna is a full stack Python web framework for building web services and back offices with admin interface and sign up process
angineering /
A Template for Creating a Full Stack Web Application with Python, NPM, Webpack and React
54/100 healthsfermigier /
A curated list of awesome Python Web Frameworks (micro, full-stack, REST, etc.)
69/100 healthTrainingByPackt /
Develop a full-stack web application with Python and Flask
45/100 health