Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

4 Commits
Β 
Β 

Repository files navigation

Unified Room Manager - Demo

Demonstration repository for a full-stack classroom reservation management system built with React, TypeScript, Express.js and MySQL.

Note: This repository showcases the project through documentation and a demonstration video. The complete source code is maintained in a private repository.

πŸ“Œ Project Overview

The Unified Room Manager System is a full-stack web application designed to simplify the management of classrooms and academic reservations in educational institutions. The application provides administrators with an intuitive interface to manage classrooms, schedule reservations, and prevent scheduling conflicts through backend validation. It was developed following a modular client-server architecture to provide a secure and maintainable solution for classroom reservation management. The application allows administrators to:

  • Register and manage classrooms.
  • Register and manage reservations.
  • Prevent duplicate reservations for the same room and schedule.

Source code is private. This repository showcases the project, technologies, and functionality. A demonstration video is available below.


✨ Main Features

🏫 Classroom (Rooms) Management

  • Create new classroom.
  • Update classroom information.
  • Delete classrooms.
  • View all registered classrooms.
  • Name, room type, capacity and availability status.

πŸ“… Reservation Management

  • Register reservation.
  • Update reservation information.
  • Delete reservations.
  • Associate reservations with existing classrooms.
  • Prevent schedule conflicts through backend validation.
  • Prevent overlapping reservations for the same room and schedule.
  • Display validation messages for scheduling conflicts

πŸ—οΈ System Architecture

+-----------------------+
|   React + TypeScript  |
|      (Frontend)       |
+-----------+-----------+
            |
            | HTTP Requests
            β–Ό
+-----------------------+
|    Express REST API   |
|      (Backend)        |
+-----------+-----------+
            |
            β–Ό
+-----------------------+
|        MySQL          |
|      Database         |
+-----------------------+

The frontend communicates exclusively with the REST API. Business logic, validations and database operations are handled by the backend.


πŸ› οΈ Technology Used

Frontend

  • React
  • TypeScript
  • Vite
  • Bootstrap 5
  • Fetch API

Backend

  • Node.js
  • Express.js

Database

  • MySQL

Development Tools

  • Git
  • GitHub
  • Visual Studio Code
  • Postman

πŸ“ Business Rules

The application currently implements the following rules:

  • A classroom cannot be reserved for overlapping schedules (same time and date).
  • CRUD operations validate resource existence.
  • RESTful responses use appropriate HTTP status codes such as:
    • 200 OK
    • 201 Created
    • 404 Not Found
    • 409 Conflict
    • 500 Internal Server Error

🚧 Project Status

This project is currently under active development.


πŸŽ₯ Project Demonstration

πŸ“Ί Demo Video:
https://youtu.be/wt78C31ubZI


βœ… Current Features

  • Classroom (Rooms) CRUD.
  • Reservation CRUD.
  • Reservation conflict validation.
  • Responsive React frontend.
  • RESTful API integration.

πŸ”’ Source Code Availability

The complete source code is maintained in a private GitHub repository. If you are a recruiter or potential collaborator interested in reviewing the implementation, feel free to contact me.


About

Demonstration repository for a full-stack classroom reservation management system built with React, TypeScript, Express.js, and MySQL.

Resources

Stars

Watchers

Forks

Releases

Packages

Contributors