Project Overview
Facility Booking System
A full-stack reservation workflow designed to reduce manual coordination, clarify approval states, and make shared facility usage easier to manage.
February 2026 - May 2026Problem
At IPB University, facility borrowing is a very practical student problem. Many students need classrooms, meeting rooms, halls, or shared equipment for organization meetings, committee work, competitions, seminars, and department activities.
The painful part is that the process can easily become scattered across chats, manual forms, office follow-ups, and unclear schedules. Students often do not know whether a room is available, whether another group has already requested it, or how long approval will take.
- Almost every active student organization eventually faces the same friction: finding an available facility, submitting a request, then waiting without a clear status trail.
- Manual reservation flows can create double bookings, forgotten approvals, duplicate requests, and confusion about who is responsible for the next step.
- Administrators also need a single place to inspect pending requests, usage history, and schedule conflicts instead of reconstructing decisions from messages.
Decision
I designed the system as a realistic IPB facility-borrowing workflow, not just a CRUD app. The main idea was to make the request lifecycle visible from the moment a student submits a booking until an administrator approves, rejects, or records it.
The interface was shaped around operational clarity: students should know what they requested and where it stands, while administrators should be able to review requests without losing the schedule context.
- Implemented the project as a full-stack exercise using React, Next.js, TypeScript, and PostgreSQL.
- Modeled core workflow states such as submitted, reviewed, approved, rejected, and recorded.
- Separated student-facing flows from administrator flows so the same system could support request submission, approval decisions, and schedule control.
Learning & Impact
It became a practical full-stack exercise in reducing operational friction through clearer systems.
The project also gave me a better sense of how small institutional tools can create real value on campus when they replace scattered messages, repeated follow-ups, and manual records.
- Improved clarity around facility availability, request status, and administrative decisions for IPB student activities.
- Reduced the conceptual workload of managing reservations manually across many student groups.
- Strengthened my experience with authentication, scheduling logic, dashboards, and relational data design.
Takeaway
The project trained me to think in workflows, not screens. For an IPB student, the value is not the dashboard itself; the value is knowing whether they can actually use the room for a real activity without chasing multiple people for confirmation.