🎯 Admin Dashboard - Grading Webapp Project Tracker

Project overview, milestones, code structure, and monetization roadmap

📊 Project Progress

65% Complete

Phase 2 of 3: Core features implemented, working on advanced features

✓ Completed

12 features

⏳ In Progress

3 features

🎯 Current Sprint Focus

  • ✅ Interactive assignment builder
  • ✅ Class & student management
  • ✅ Standards dropdown with grade filtering
  • 🔄 Student preference UI (up next)
  • 📋 Support profile builder (queued)

💡 Key Metrics

Backend: 8 routers, 45+ endpoints

Frontend: 12 sections, 6 JS modules

Data Models: 15+ Pydantic models

Features: Writing workflow, AI coaching, rubrics, assignments

AI Integration: OpenAI GPT-4o-mini for guidance

🏆 Feature Milestones

Phase 1: Core Writing Workflow ✓

Completed

• 4-stage writing process (Brainstorm → Outline → Draft → Revise)
• Support profiles with 20+ differentiation toggles
• AI guidance at each stage
• Evidence cards and version control
• 3 writing modes: CER, Paragraph, Structured Paragraph Outline

Phase 2: Assignment Creation & Management ✓

Completed

• Teacher assignment creator with stage toggles
• AI assignment generator with standards alignment
• Interactive assignment builder with templates
• Class & student roster management
• Due dates and assignment distribution
• Rubric builder
• Standards dropdown (15 CCSS standards across grades 6-12)

Phase 2.5: Student & Teacher Preferences 🔄

In Progress

• Student preference toggles for default stages
• Support profile builder UI for teachers
• Reading assignment integration
• Student performance tracking

Phase 3: Interactive Slide Decks (Planned)

Planned

• Teachers project slides while students interact
• Student responses auto-save to writing stages
• AI slide generation based on standards
• Real-time sync with WebSockets
• See FUTURE_FEATURES.md for full specification

📁 Code Structure Overview

grading-webapp/ ├── grading_webapp/ │ ├── backend/ │ │ ├── app.py # Main FastAPI application │ │ ├── writing_workflow_router.py # 4-stage writing system (400+ lines) │ │ ├── assignments_router.py # Assignment CRUD operations │ │ ├── ai_router.py # AI generation endpoints │ │ ├── submissions_router.py # Student submission management │ │ ├── llm_client.py # OpenAI API wrapper │ │ ├── auth_supabase.py # Authentication (Supabase) │ │ └── models.py # Pydantic data models │ │ │ └── frontend/ │ ├── index.html # Main UI (1000+ lines, 12 sections) │ ├── admin.html # This admin dashboard │ └── static/ │ ├── writing-workflow.js # Staged writing logic (900+ lines) │ ├── assignments.js # Assignment management (900+ lines) │ ├── student-editor.js # Student AI assistance │ └── auth.js # Authentication flow │ ├── FUTURE_FEATURES.md # Phase 3 slide deck specification └── README.md # Project overview

🔌 API Endpoints Reference

Writing Workflow (10 endpoints)
GET /api/writing-workflow/tasks
List all writing tasks
POST /api/writing-workflow/tasks
Create new writing task
POST /api/writing-workflow/ai-guidance
Get AI guidance for current stage
POST /api/writing-workflow/save-version
Save draft version with auto/manual flag
Assignments (8 endpoints)
GET /api/assignments/
List teacher's assignments
POST /api/assignments/
Create assignment with rubric
POST /api/assignments/{id}/push
Push assignment to students
DELETE /api/assignments/{id}
Delete assignment
AI & Generation (3 endpoints)
POST /api/ai/generate-assignment
Generate assignment from standard
POST /api/ai/student-editor
Student AI assistance with guardrails
POST /api/ai/quick-analyze
Quick text analysis for grading

🗄️ Data Models

WritingTask Model
Field Type Description
id str Unique task ID
title str Assignment title
mode WritingMode CER, Paragraph, Essay, etc.
template WritingModeTemplate Structured template with sections
stage_requirements StageRequirementSettings Which stages are required/optional
available_profiles List[str] Support profile IDs
StudentSubmission Model
Field Type
student_id str
task_id str
current_stage WritingStage
stages Dict[str, StageContent]
evidence_cards List[EvidenceCard]
draft_versions List[DraftVersion]
active_profile_id str

💰 Monetization Roadmap

Free Tier (Student & Teacher Accounts)
  • Up to 3 classes per teacher
  • 25 students per class (max 75 students total)
  • Basic writing workflow (CER, Paragraph)
  • 5 AI guidance requests per student per day
  • Standard support profile only
  • 30-day data retention
Pro Tier - $15/month per teacher
  • Unlimited classes and students
  • All writing modes (essays, research papers, narratives)
  • Unlimited AI guidance
  • Custom support profiles (create & save)
  • Advanced rubric builder
  • Student performance analytics
  • Export student data (CSV, PDF)
  • 1-year data retention
  • Priority support
School/District - $500/year (50 teachers)
  • Everything in Pro
  • Admin dashboard for district oversight
  • Shared lesson library across school
  • Standards alignment reports
  • Data integration with SIS (Student Information Systems)
  • SSO (Single Sign-On) with Google/Microsoft
  • Dedicated account manager
  • Custom branding
  • On-premise deployment option
  • Unlimited data retention
Future Revenue Streams
  • Content Marketplace: Teachers sell lesson plans, rubrics, assignments ($2-10 each, 70/30 split)
  • Professional Development: Webinars on teaching writing with AI ($99/session)
  • Premium AI Models: Access to GPT-4 instead of mini ($5/month add-on)
  • Parent Portal: Real-time progress updates ($3/month per family)
  • White Label: License platform to other ed-tech companies ($10k+ annual)

🚀 Production Deployment Checklist

  • Set up Supabase authentication
  • Configure OpenAI API integration
  • Deploy to Railway with staging environment
  • Migrate from in-memory to Supabase database
  • Add user data privacy policy
  • Implement rate limiting for AI endpoints
  • Add email notifications for assignments
  • Set up error monitoring (Sentry)
  • Configure CDN for static assets
  • Add automated testing (Pytest + Playwright)
  • Set up CI/CD pipeline (GitHub Actions)
  • Implement backup strategy
  • Security audit & penetration testing
  • FERPA compliance review
  • Set up customer support system

🔒 Security & Compliance Notes

FERPA Compliance:

  • Support profiles NOT tied to individual students
  • Student data encrypted at rest
  • Teacher-only access to submissions
  • Parental consent for data collection (under 13)

Data Privacy:

  • Student essays NOT used to train AI models
  • OpenAI API set to NOT store prompts
  • Anonymize student data in logs
  • Right to deletion upon request

AI Safety:

  • Student AI has hard guardrails (no writing FOR students)
  • All interactions logged for teacher review
  • Response validation prevents plagiarism
  • Refusal templates for disallowed requests

🛠️ Technology Stack

Backend

  • Framework: FastAPI (Python 3.9+)
  • Data Validation: Pydantic
  • AI: OpenAI API (GPT-4o-mini)
  • Auth: Supabase Auth
  • Database: Supabase PostgreSQL
  • Deployment: Railway

Frontend

  • Framework: Vanilla JS (no framework)
  • UI: Custom CSS with Tailwind-inspired utilities
  • Editor: Quill.js (rich text editing)
  • State: Global JS objects + localStorage
  • API Calls: Fetch API

🔗 Quick Links & Resources

📝 Writing Workflow Router 🤖 AI Router ⚙️ Frontend Logic 🔮 Phase 3 Spec 📚 Documentation 🏠 Back to App