Pulse Commerce OS is a full-stack e-commerce decision intelligence platform built to showcase modern data science, analytics engineering, and product-thinking inside a clean operator-facing application.
Instead of acting like a generic store dashboard, the project is framed as a command center for growth, retention, demand planning, inventory monitoring, and decision support.
This repo is designed as a portfolio-grade build that demonstrates how data science concepts can live inside a real product experience:
- business KPI design
- descriptive analytics and cohort analysis
- customer intelligence and churn-risk storytelling
- demand forecasting and operational alerts
- authentication and protected data workflows
- polished frontend and API-backed architecture
frontend/- Next.js dashboard UI with login/signup, multi-view analytics workspace, and API-driven data loadingbackend/- FastAPI service with auth, dashboard endpoints, CSV upload support, and SQLite persistencedata/- seeded CSVs for revenue, churn watchlist, and demand forecastanalysis/- Python utility script for quick metric validationdocs/- product blueprint and roadmap for future expansion
- Executive KPIs for revenue, margin, retention, and refund health
- Cohort retention and RFM-style customer intelligence
- Churn watchlist and demand forecasting
- Inventory, fraud, and anomaly alerting
- Growth experiment queue and AI recommendation feed
- Local signup/login flow with persisted sessions
- Revenue CSV upload flow through the Data Studio workspace
- Next.js App Router
- TypeScript
- custom dashboard components
- local session persistence in the browser
- FastAPI
- Pydantic schemas
- SQLite for lightweight local persistence
- CSV-backed initial seeding
weekly_revenue.csvcustomer_risk.csvdemand_forecast.csv
These are seeded into the backend and exposed through API responses for the dashboard.
- Create an account or sign in from the frontend.
- Load the dashboard views for overview, customers, demand, growth, risk, AI recommendations, and data studio.
- Upload a revenue CSV from the Data Studio tab.
- Refresh the dashboard to see KPI and trend changes based on the imported data.
cd backend
python3 -m venv .venv
source .venv/bin/activate
pip install -r requirements.txt
uvicorn app.main:app --reload --port 8001In a second terminal:
cd frontend
npm install
npm run devThen open:
http://localhost:3000
If port 8001 is busy, run the backend on 8002 and start the frontend like this:
cd frontend
NEXT_PUBLIC_API_URL=http://127.0.0.1:8002 npm run devGET /health- service health checkPOST /auth/signup- create a local userPOST /auth/login- sign in and receive a bearer tokenGET /auth/me- get the current authenticated userGET /dashboard- load dashboard dataPOST /uploads/revenue- upload a weekly revenue CSV