Resa is a room-booking website designed with UX in mind.
It is used in production at French engineering school CentraleSupélec and enables thousands of students, teachers, researchers and staff members to check room availability and book rooms online. Our hope is that it provides an intuitive and natural booking experience.
It consists of two parts:
- a front-end, namely a single-page JavaScript application written in React
- a back-end, written in Node.js
The back-end is stateless: it communicates with GEODE, a (proprietary) campus management system designed by Alcuin. If your organization does not use GEODE, Resa will not work out of the box, but you may use the front-end and rewrite the back-end to fit your needs.
Key features:
- book a room in less than a minute
- receive by email a booking confirmation with an ICS event for your calendar
- easily modify or cancel your booking online
- mobile-friendly interface
Advanced features:
- filter rooms by type or capacity
- use fuzzy search to find a particular room
- see all the events planned for a room on a particular day
- use direct link to book a particular room:
resa.example.com/recherche/{roomId}
(especially useful if you put QR codes outside of rooms that can be booked)
- React, a JavaScript library for building user interfaces
- Redux, a predictable state container for JavaScript apps
- Bootstrap 4, a front-end component library
- Node.js, a JavaScript runtime for the back-end
As well as many other projects you can find in front/package.json
and back/package.json
.
Lead developer: Anatole Beuzon
Project manager: Michel Guennoc
Contributors and reviewers: Ronan Pelliard and Sami Tabet
- Benjamin Koltes
- Guillaume Denis
- Teo Lefebvre
- Marius Verdier
- Thomas Houdin
- Louis Vauterin
- Antoine Fonlupt
This project is open-source under the MIT license.
To edit the documentation website, you can serve a local mkdocs instance : docker run --rm -it -p 8000:8000 -v ${PWD}:/docs squidfunk/mkdocs-material