Propo41 / bookify

Tailored for organizations, a simple tool that can enhance productivity by minimizing the time spent finding and securing meeting rooms in google calendar
https://bookify-dev-u8p8s.ondigitalocean.app/
MIT License
6 stars 1 forks source link
chrome-extension googlecalendarapi hacktoberfest monorepo nestjs oauth2 reactjs typescript

Bookify

Bookify Bookify Bookify

GitHub Actions status GitHub Actions status PRs Welcome code style: prettier

Bookify enhances productivity by minimizing the time spent finding and securing meeting rooms in google calender, ensuring a smooth workflow for teams and managers alike.

Key Features:

Who this is for?

Bookify is specifically tailored for organizations that utilize unique meeting rooms within their Google Workspace/Calendar. This includes:

Bookify vs Google Calendar

1. Clunky Room Booking:

Google Calendar may offer room bookings, but finding a suitable room in a large office with specific requirements (like seat capacity or floor preference) can be a pain. You end up scrolling through a bunch of rooms after checking through several dropdowns.

Bookify solves this by instantly booking the best available room based on your needs—no endless scrolling or guesswork!

2. Overrunning Meetings? Google Calendar Isn't Built for That:

If your meeting is running late, extending it on Google Calendar isn't exactly smooth. You'll likely have to go through the hassle of updating the event or manually finding another room when time runs out.

Bookify has got your back—when your meeting is overrunning, you can either extend the current room’s time (if it’s free) or quickly book a new one without breaking a sweat.

3. Floor-Specific Booking Is a Nightmare:

Need a room close to your team or on a specific floor? Google Calendar makes you hunt for room locations manually, wasting time in the process.

Bookify makes floor-specific booking a breeze. Just input the floor you need, and voilà—a room on that floor is booked for you instantly.

4. High-Demand Periods Lead to Chaos:

During peak times, manually searching for a free room on Google Calendar is frustrating. Rooms fill up fast, and you're left scrambling to find an available one.

Bookify shines here by quickly scanning room availability and securing the best available space, so you're never left without a meeting room, even during the busiest hours.

TL;DR: Google Calendar may get the job done, but it's clunky, slow, and inefficient when it comes to room bookings. Bookify offers a faster, smarter solution tailored to modern office needs, making room scheduling hassle-free.

Use cases

CASE I: Quick Client Meeting Scheduling

Scenario: A team member gets a sudden request to set up a meeting in a conference room.

Action: The team member opens the tool, selects the start time and minimum number of seats required, and optionally chooses a specific floor if needed.

Outcome: A suitable meeting room is booked immediately, saving the hassle of running through a bunch of options from the Google Calendar.

CASE II: Overrunning Meeting

Scenario: A team/team member is running a meeting in a room X that exceeds the scheduled time, and they need to find another room to continue without interruptions.

Action: The team member opens the tool, and has the option to either increase the time of the current room (if no collisions exist) or quickly book another room with just a click.

Outcome: The system quickly books a room, and the team transitions smoothly without the hassle of manually browsing for room availability.

CASE III: Floor-Specific Room Requirement

Scenario: A manager prefers to book rooms on a particular floor to maintain proximity to their team.

Action: The manager uses the tool, inputs the necessary seats, and specifies the floor.

Outcome: The tool books a room on the specified floor, optimizing convenience for the manager and their team.

CASE IV: Booking During a High-Demand Period

Scenario: During a peak time, meeting rooms are in high demand. Manually searching for a room would take time.

Action: The user enters their seat requirements and start time. The tool searches and books the best available room.

Outcome: A room is secured swiftly, even in high-demand periods, preventing frustration and delays.

Hosting yourself

  1. Fork the repository.
  2. Create a branch and integrate your own Github actions or webhooks to add a seamless CI/CD pipeline.
  3. Set up your environment. Calender Quickstart
  4. Enable the Admin SDK API
  5. Copy the Client ID, Client secret from the OAuth 2.0 Client ID you created in step 1, and place it in the .env file.
  6. Add the Authorized javascript origins and the Authorized redirect URIs in your google cloud project.
  7. Check out the installation section, to prepare the app for launching.
  8. Deploy your branch and your ready to start booking! 🎉
  9. Make sure to sync latest changes from the upstream repository.

Note: The Authorized javascript origins should have:

web: https://<domain>.chromiumapp.org
chrome: https://<extension-id>.chromiumapp.org

The Authorized redirect URIs for the web app should have:

web: https://<domain>/oauthcallback
chrome: https://<extension-id>.chromiumapp.org/index.html oauthcallback

Taking app to Production

For your app to be made publicly usable, the Google OAuth credentials needs to be deployed to production which requires several steps and requirements.

Verification requirements can be found here

Note: The following apps do not need to go through the verification process.

Contributing

Read our contributing guide to learn about our development process, how to propose bugfixes and improvements, and how to build and test your changes to Bookify.

Reference

License

Bookify is MIT licensed.