Skip to content

danyalahmed1995/OpsPilot

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

🚀 OpsPilot

Next.js FastAPI PostgreSQL Supabase TypeScript Material UI Status

OpsPilot is a full-stack operations command center for workshops, agencies, and small teams. It combines project management, task assignment, server-side time tracking, file uploads, client records, team reporting, and audit logs inside a polished Material UI dashboard.

Built to demonstrate production-grade full-stack SaaS architecture using Next.js, FastAPI, Supabase PostgreSQL, role-based access control, and responsive dashboard design.


🎬 Demo Preview

Dashboard

Features

  • Premium dark Material UI dashboard with metrics, charts, leaderboard, alerts, and audit activity
  • Interactive projects, clients, tasks, team, files, reports, settings, and worker-focused routes
  • Create/edit/archive flows for projects and clients, task create/edit/delete/status/priority/assignee actions, and task detail drawer
  • FastAPI backend with CRUD APIs, dashboard summary, server-side timers, manual time entries, weekly reports, CSV export, settings, and audit logs
  • Supabase-ready PostgreSQL schema with RLS enabled, indexes, constraints, storage metadata, notifications, and seed data
  • Dev-only demo auth flow that can be upgraded to Supabase Auth without reshaping the database
  • Command Timeline dashboard section combining tasks, timers, files, and project audit events

Demo Workflow

  1. Switch to Maya Chen demo admin from the top-right user menu.
  2. Create a new client from /clients.
  3. Create a project for that client from /projects.
  4. Create and assign a task from /tasks.
  5. Start a timer on the task row or from /time-tracker.
  6. Stop the timer from the time tracker or sticky topbar widget.
  7. Register project/task file metadata from /files.
  8. Open /reports and export CSV.
  9. Open /audit-log or the dashboard Command Timeline to see recorded activity.

What Works Now

  • Visible action buttons either perform an action, navigate, submit a form, or show a disabled tooltip.
  • Mutations show Material UI toast feedback.
  • Destructive actions use confirmation dialogs where appropriate.
  • Reports default to a seeded-data-friendly range and include top tracked tasks.
  • Settings persist through the backend and create audit log events.
  • File registration works as a metadata-first workflow; Supabase Storage upload can be connected once local Storage keys are configured.

Tech Stack

  • Frontend: Next.js App Router, TypeScript, Material UI, Framer Motion, Recharts, TanStack Table-ready structure, React Hook Form/Zod-ready dependencies, Lucide React
  • Backend: FastAPI, Pydantic, SQLAlchemy, pytest, CSV StreamingResponse
  • Database/Auth/Storage: local Supabase, PostgreSQL, Supabase Auth-ready profiles, Supabase Storage metadata workflow

Local Setup

Install Supabase CLI and Docker, then run:

supabase start
supabase db reset

supabase start prints the local API URL, DB URL, Studio URL, anon key, and service role key. Copy those values into frontend/.env and backend/.env from the example files.

Backend:

cd backend
python -m venv .venv
.\.venv\Scripts\Activate.ps1
pip install -r requirements.txt
uvicorn app.main:app --reload

Frontend:

cd frontend
npm.cmd install
npm.cmd run dev

Open http://localhost:3000.

If another local app already owns port 3000, run:

npm.cmd run dev -- -p 3002

Demo Users

  • Maya Chen: admin
  • Owen Patel: manager
  • Leah Brooks: manager
  • Nadia Stone, Jon Rivera, Priya Shah, Marcus Reed: workers
  • Sofia Grant, Ethan Cole: client viewers

The MVP includes a documented dev-only demo login. In production, map Supabase Auth user IDs to profiles.id and enforce policies through RLS.

Testing

cd backend
python -m pytest
python -m compileall app

cd ../frontend
npm.cmd run lint
npm.cmd run typecheck
npm.cmd run build

Current local validation also includes a dev-server smoke test at http://127.0.0.1:3002/dashboard.

About

A full-stack operations command center for workshops, agencies, and small teams.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors