/booking-app

App to book rooms at for examples schools, companies etc. Also track invitees at their current location if they allow it. Using Firebase + React.

Primary LanguageJavaScript

teamcoffee

teamcoffee

๐Ÿšฉ Project Goal

This booking app is intended to enable both students and teachers to plan their scheduling better by providing real-time oversight of free times and rooms plus enabling students to plan and arrange their own bookings/events.

Our current scope is to only support our local school, but there is the possibility to adapt the current structure to fit other schools and expand in the future.

Thank you for your interest!

Whatโ€™s In This Document

๐Ÿ”” Key Functions

Our app is connected to firebase. Here you can sign up a new user, sign in existing user, change password, reset password. Standard stuff.

When you sign up you can do so with different roles: ADMIN, TEACHER, STUDENT or no role. Depending on the different roles you will get different access. ADMIN and TEACHER is the only role that gets full access.

Let's check out the different key functions.

๐Ÿ‘‘ Features

Implemented Features

  • Create bookings with custom descriptions and invite any users you like with the search function.
  • Track attending students with map and ETAs generated based on their proximity to the school.
  • Automatically get updated when the students are within school vicinity, no more paperwork.

Planned Features

  • Intergrated help queue allowing the teacher to effectively see who asked for help and in what order.
  • One-click exporting of automatically registered student attendance for easier administration.
  • Invite by group to save time when creating your events, like inviting a particular class.

๐Ÿ’ป How to run this project

  1. Install from the root folder, GJTP

    npm install
    
  2. Then just run the app

   npm start

๐Ÿ’พ Gifs

Book Room Invitations

booking gif

invitation gif

Here you can choose the date and timeslot for the room that you want to book. Also you can invite other users that have registered. Every user that is invited to the event gets a notification in the app and can view it here. You can either accept or decline.
Upcoming My Bookings

upcoming gif

my events gif

When you have accepted an event, it shows up in the upcoming event page. This is the first page an user sees when he/she logs in. Therefore it's the perfect place to see your upcoming events. If you created an event, you can see it in the my bookings page. Here you have an overview on all the users that accepted, decline or have yet to answer. One hour before the event you can open a map to watch where the accepted users are located. If they are in school when the event starts they will automatically show up as "attendees" for that event. Neat, huh?

๐Ÿ’พ For developers

The tricky parts in our Javascript functions have explanations in comment form above the functions.

๐Ÿ”— Links

Team Coffee Trello Board

๐Ÿ‘ Attributes

https://www.robinwieruch.de/ Big thanks to Robin for his toturials about Readux, React, Saga. Always an big help. Supported us student with his books for free which was greatly appreciated.

๐Ÿ““ Authors

Gustav Bergman @Aarux
Jesper Risell @jesris
Nina Hedman @Naicah
Oliver Vasquez @OliverBrian
Patrick Sjรถberg @pazsea