Skip to content

Latest commit

 

History

History
110 lines (82 loc) · 3.79 KB

File metadata and controls

110 lines (82 loc) · 3.79 KB
easeCHAOS

easeCHAOS

About

easeCHAOS is a modern, user-friendly timetable viewer designed specifically for UMaT students. Born out of the frustration of dealing with complex Excel spreadsheets and hard-to-read class schedules, this project aims to make viewing your class schedule as simple as possible.

Why easeCHAOS?

  • Simplified View: No more squinting at Excel sheets or searching through merged cells
  • Class-Specific: View only your class's schedule, filtered and clean
  • Modern Interface: Intuitive weekly and daily views
  • Exam Schedule Support: Browse the exam period as a month view, agenda, or short-term windows
  • Mobile Friendly: Access your schedule on any device
  • Download Options: Download schedules as PDF, image, or calendar (.ics) files.

Current Progress

The application currently features:

  • ✅ Weekly view with all classes
  • ✅ Daily detailed view
  • ✅ Exam schedule views for All Exams, Today, This Week, and Next Week
  • ✅ Exam month calendar and agenda view
  • ✅ Responsive design with Light and Dark Theme
  • ✅ Lecture and exam export downloads (PDF, Image, and .ics for exam agenda)
  • ✅ Accessible as Progressive Web App (PWA). You can basically save for offline use once your schedule is loaded up

Getting Started

Prerequisites

  • Node.js 18+
  • Python 3.9+
  • Redis
  • Docker (Optional, although preferred for local developement)

Tech Stack

Frontend

  • React.js
  • TailwindCSS
  • TypeScript
  • Vite

Backend

  • FastAPI (Python)
  • Redis
  • Docker

Documentation

For detailed documentation, see the docs/ folder:

Installation (Local without Docker)

  1. Clone the repository
  2. Ensure you have make installed (available on most linux flavored systems)
  3. Copy and rename .env.sample to .env
  4. Ensure you have a Redis instance available and set the connection values in .env
  5. Run make local

Installation (Docker)

  1. Clone the repository
  2. Copy and rename .env.sample to .env
  3. Run make up or docker compose -f docker-compose.dev.yml up
  4. Open the app at http://localhost:5173
  5. API healthcheck is available at http://localhost:8000/api/v1/healthcheck

To stop the Docker stack:

make down

Notes About Source Data

NB: This project is still under development. You might encounter bugs with the processed data. However, issues stem from the drafts, and has nothing to do with the extractor in most cases. Refer to the IT department and respective class reps to resolve clashes and unfamiliar conventions.

  • Lecture and exam accuracy still depends on the source spreadsheets.
  • If a class appears in the lecture timetable but not in the exam timetable, check the exam workbook first.
  • Exam rows may be repeated once per class group in the source file. The frontend groups those rows into a single paper for display.
  • All ExamsAgenda supports export as PDF, PNG, and .ics for importing exam papers into calendar apps.

Current Progress

Light Theme

Dark Theme

Maintainer

Contributors

Acknowledgements