Skip to content

Saza-dev/Time-Table-Scheduling-App

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 

History

17 Commits
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation

๐Ÿ—“๏ธ Timetable Scheduling App

Welcome to the Timetable Scheduling App! This project is a full-stack web application that allows users to generate and manage schedules using a genetic algorithm for optimization. Built with a modern tech stack, the app provides a user-friendly interface for a seamless experience.

๐ŸŒŸ Features

  • Genetic Algorithm: Efficiently generates optimized timetables.
  • React: A dynamic and responsive front-end.
  • Node.js & Express: A robust backend to handle requests and manage data.
  • SQL & Sequelize ORM: A relational database with Sequelize for efficient data handling.
  • React Toastify: User-friendly notifications for a better UX.
  • Responsive Design: Works on all device sizes.
  • Error Handling: Robust error management for a smoother user experience.

๐Ÿ› ๏ธ Technologies Used

  • Frontend:

    • React
    • Tailwind CSS
    • React Toastify
    • formik
    • yup
    • axios
  • Backend:

    • Node.js
    • Express.js
    • cors
    • express-async-handler
  • Database:

    • SQL
    • Sequelize ORM
  • Algorithm:

    • Genetic Algorithm for scheduling

๐Ÿš€ Getting Started

Prerequisites

  • Node.js
  • npm
  • SQL Database

Installation

  1. Clone the repository:

    git clone https://github.com/Saza-dev/Time-Table-Scheduling-App.git
    
  2. Install dependencies to frontend:

    cd timetable-scheduling-app
    cd frontend
    npm install
  3. Install dependencies to backend:

    cd timetable-scheduling-app
    cd backend
    npm install
  4. Set up the database:

  • Create a new SQL database.
  • Update the .env file with your database credentials in backend folder.
     DB_NAME=yourdbname
     DB_USER=yourdbuser
     DB_PASS=yourdbpassword
     DB_HOST=yourdbhost
     PORT=yourPORTnumber
  1. Start the server:
     npm start

About

A university timetable scheduling app that automatically generates conflict-free class schedules based on faculty, subjects, rooms, and time slots using optimization algorithms.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages