Skip to content

Repository files navigation

Algebra 1 EOC Practice Platform

Algebra 1 EOC Practice Platform

An AP Classroom-style practice platform for Algebra 1 End of Course exam preparation

View Live Demo

TypeScript React Express PostgreSQL Tailwind CSS


Overview

A full-featured educational platform designed to help students prepare for the Algebra 1 End of Course (EOC) exam. Built with a modern full-stack architecture, the platform supports both student and teacher workflows with AI-powered feedback, unlimited practice questions, timed exams, analytics, and more.

Key Highlights

  • Unlimited, Non-Repeating Questions -- Dynamically generated math questions with fingerprint tracking ensure students never see the same problem twice across any activity
  • AI-Powered Micro-Mistake Detection -- Together AI integration analyzes student work and provides detailed, targeted feedback on specific algebraic errors
  • Timed EOC Exam Simulations -- Full practice test mode with countdown timer, question flagging, and navigation grid mimicking real exam conditions
  • Cumulative Analytics -- Performance tracking aggregates data from all activities (practice, tests, quizzes, assignments) into unified dashboards and charts
  • Role-Based Experience -- Separate dashboards and workflows for students and teachers

Features

For Students

Feature Description
Topic Practice Practice questions across all 9 Algebra 1 domains with instant feedback, hints, and step-by-step explanations
Practice Tests Timed EOC exam simulations with configurable question counts (10-50), countdown timer, question flagging, and detailed score reports
AI Mistake Detection Submit written work for AI analysis that identifies specific error types, provides severity ratings, and suggests corrections
Micro Pop-up Quizzes Quick 5-question quizzes per topic with a 60-second time limit for rapid self-assessment
Performance Analytics Interactive charts showing daily performance trends, topic mastery radar, accuracy breakdowns, and identified strengths/weaknesses
Progress Tracking Mastery levels per topic, cumulative statistics, and visual progress rings
Messaging Direct communication with teachers for questions and feedback
Progress Reports Exportable/printable progress reports with certificate of completion for 80%+ mastery

For Teachers

Feature Description
Class Dashboard Overview of total students, daily activity, class average progress, and total questions solved
Student Analytics Individual student performance data with mastery levels, accuracy rates, and activity history
Custom Assignments Create targeted assignments by selecting topics, question counts, and due dates
Assignment Tracking Monitor student completion rates, scores, and submission status
Messaging Send feedback, encouragement, and guidance to individual students

Algebra 1 Topics Covered

All 9 core Algebra 1 EOC domains are fully supported with topic-specific question generators:

  1. Linear Equations and Inequalities -- Solving single-variable equations, graphing inequalities
  2. Systems of Linear Equations -- Substitution and elimination methods
  3. Quadratic Functions and Equations -- Quadratic formula, factoring, graphing parabolas
  4. Polynomials and Factoring -- Expanding, factoring trinomials, difference of squares
  5. Exponential Functions -- Growth/decay, solving exponential equations
  6. Radical Expressions -- Simplifying radicals, solving radical equations
  7. Rational Expressions -- Simplifying, operations with rational expressions
  8. Functions and Relations -- Function evaluation, domain/range, function notation
  9. Statistics and Data Analysis -- Mean, median, mode, data interpretation
  10. Probability -- Basic probability, compound events, expected value

Tech Stack

Frontend

  • React 18 with TypeScript
  • Wouter for client-side routing
  • Shadcn UI + Radix UI for accessible components
  • Tailwind CSS for styling with dark mode support
  • Recharts for interactive performance charts
  • TanStack Query (React Query) for data fetching and caching
  • React Hook Form + Zod for form validation

Backend

  • Node.js with Express
  • Drizzle ORM for type-safe database operations
  • PostgreSQL (Neon) for data persistence
  • Replit Auth (OpenID Connect) for authentication
  • Together AI API for micro-mistake detection

Design

  • Educational blue color scheme (HSL 220, 85%, 45%)
  • Inter font for UI, JetBrains Mono for math expressions
  • Responsive layout with mobile support
  • Dark mode with smooth transitions

Architecture

client/                    # React frontend
  src/
    components/            # Reusable UI components (Shadcn)
    hooks/                 # Custom React hooks
    lib/                   # Utilities (API client, query config)
    pages/                 # Page components
      student-dashboard    # Student home with topic grid & stats
      teacher-dashboard    # Teacher home with class overview
      practice             # Individual topic practice
      practice-test        # Timed EOC exam simulation
      assignments          # Teacher create / student submit
      analytics            # Performance charts & insights
      messages             # Teacher-student messaging
      progress             # Progress tracking
      progress-report      # Exportable reports & certificates

server/                    # Express backend
  routes.ts                # API endpoint definitions
  storage.ts               # Database operations (Drizzle ORM)
  questionGenerators.ts    # Topic-specific math question generators
  replitAuth.ts            # Authentication middleware
  db.ts                    # Database connection
  vite.ts                  # Vite dev server integration

shared/
  schema.ts                # Database schema & Zod validation types

Database Schema

Table Purpose
users User accounts with role (student/teacher)
topics Algebra 1 topic definitions
attempts Individual question attempts with answers
progress Per-topic mastery tracking
quiz_sessions Micro pop-up quiz data
practice_tests Timed exam simulation records
assignments Teacher-created assignments
assignment_submissions Student assignment completions
messages Teacher-student communications
mistake_analyses AI-generated mistake analysis results

Getting Started

Prerequisites

  • Node.js 18+
  • PostgreSQL database
  • Together AI API key (for AI features)

Environment Variables

DATABASE_URL=postgresql://...
SESSION_SECRET=your-session-secret
TOGETHER_API_KEY=your-together-ai-key

Installation

# Install dependencies
npm install

# Push database schema
npm run db:push

# Start development server
npm run dev

The app will be available at http://localhost:5000.


API Endpoints

Authentication

  • GET /api/auth/user -- Get current user
  • POST /api/user/role -- Set user role (student/teacher)

Practice

  • GET /api/topics -- List all topics
  • GET /api/questions/generate/:topicId -- Generate unique question
  • POST /api/attempts -- Submit answer attempt

Practice Tests

  • POST /api/practice-test/start -- Start timed test
  • POST /api/practice-test/submit -- Submit completed test
  • GET /api/practice-test/history -- Get test history

Assignments

  • GET /api/assignments -- List assignments
  • POST /api/assignments -- Create assignment (teacher)
  • POST /api/assignments/:id/submit -- Submit assignment (student)

Analytics

  • GET /api/stats -- Cumulative user statistics
  • GET /api/analytics -- Detailed performance analytics
  • GET /api/progress -- Per-topic progress data

Communication

  • GET /api/messages -- Get messages
  • POST /api/messages -- Send message

Question Uniqueness System

The platform ensures students never encounter the same question twice through a multi-layer approach:

  1. Fingerprint Tracking -- Every question shown to a user is stored in the database across all activity types (practice, tests, quizzes, assignments)
  2. Seen Set Construction -- Before generating new questions, the system loads all previously seen question fingerprints for that user
  3. Unique Generation -- The generator retries with different random parameters until a unique question is produced
  4. Cross-Activity Deduplication -- Questions are tracked across all contexts, so a question seen in practice will never appear in a test or assignment

License

MIT License. See LICENSE for details.


Built with React, Express, PostgreSQL, and Together AI

About

AP Classroom-style Algebra 1 EOC Practice Platform with AI-powered micro-mistake detection, unlimited practice questions, timed exams, analytics, and teacher tools

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages