Skip to content

Latest commit

 

History

5 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Student Productivity Platform

Python FastAPI JavaScript License Last Commit Repo Size

A constraint-driven scheduling system that generates conflict-free exam timetables using Constraint Satisfaction Problem (CSP) techniques, with an integrated academic mode for structured study planning.


Overview

The project models exam scheduling as a formal CSP, where subjects are assigned to time slots under strict conflict constraints derived from shared student enrollments or explicitly defined relationships. The solver guarantees that no conflicting subjects are placed in the same slot, producing a valid timetable whenever a solution exists.

Alongside scheduling, the system includes an academic planning layer that distributes study sessions across available time in a controlled and balanced manner, taking into account exam timelines and subject difficulty.


Deployed Website

Live: https://timetable-ai-cyan.vercel.app/


Approach

The scheduling engine is built around a backtracking search with heuristic improvements. Variable selection is guided by the Minimum Remaining Values (MRV) strategy, while forward checking is used to prune invalid assignments early and reduce the search space. Constraints are enforced incrementally, ensuring consistency at every step of the assignment process.

The academic planner operates on top of this structure, treating study sessions as allocatable slots and applying distribution rules to avoid clustering while maintaining a consistent workload.


System

The backend is implemented using FastAPI in Python, with the CSP solver and graph construction handled as modular components. The frontend is a minimal interface built with HTML, CSS, and JavaScript, focused on clarity and direct interaction with the scheduling engine.


Structure

.
├── app.py
├── csp.py
├── graph.py
├── metrics.py
└── static/
    ├── index.html
    ├── styles.css
    └── app.js

About

Student productivity platform with a CSP-based exam timetable generator and an academic mode for intelligent study planning.

Resources

Stars

1 star

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages