📌 About the Project

💡 Inspiration

On campus, finding an available study space can be frustrating—students often walk around searching for open rooms, only to find them occupied or unused but “claimed.” We wanted to solve this inefficiency by creating a centralized system that shows real-time availability and allows instant reservations.


🛠️ How We Built It

We developed a full-stack application using a Node.js + Express backend connected to a PostgreSQL database.

  • Designed a relational schema with students, rooms, and bookings
  • Implemented REST API endpoints to fetch rooms and create reservations
  • Used SQL joins to connect users, rooms, and bookings
  • Structured the system to support scalability and real-time updates

We also simulated realistic usage by generating datasets with 100 students and multiple rooms.


📚 What We Learned

  • How to design a normalized relational database
  • Building and testing RESTful APIs with Express
  • Handling foreign keys and constraints to maintain data integrity
  • Structuring a backend that mirrors real-world systems

⚠️ Challenges We Faced

  • Debugging database connection issues and authentication errors
  • Handling foreign key constraints when inserting or deleting data
  • Ensuring the server stayed stable when errors occurred
  • Designing a schema that balances simplicity and scalability

🚀 Final Thoughts

This project evolved from a simple idea into a real-world system prototype. It demonstrates how thoughtful backend design and structured data can solve everyday problems like space utilization on campus.

Share this project:

Updates