Busy Schedule Loaded
David and I have constantly been in large study groups together for our Computer Science courses. One of the biggest hurdles we face is figuring out to meet when its more than 4 people involved. I personally work with orgs on campus as well as orgs in the city and similarly we face the same issues. Alternatives like doodle and when2meet only allows for people to manually set times and dates to fill in to meet. We realized that majority of us already have our calendars set with Google Calendar, therefore we realized that it'd be best if we automatically pull data from our calendar, and overlay it in a calendar so it is easy to see when people are open.
What it does
Allows people to figure out a time to meet by creating a "room" that then loads event data off your google calendar for a specific date(s). You can then share the link to other people and allow them to overlay their data to our app, which allows people to visually and easily see when people are free without needing to manually input data.
How I built it
We built this app from scratch with Node.js, MongoDB, Google Calendar API, and HTML/CSS.
Challenges I ran into
We ran into challenges with the Google Calendar API and how it handles authentication, redirects and learning how to use Mongo from scratch.
Accomplishments that I'm proud of
We were able to create a great flow of our web architecture that allowed us to pin point our issues and do small re-structures to be able to get what we want. We also are proud that we did everything from scratch, we didn't import large libraries or frameworks, from server-side to front-end we made did it.
What I learned
We learned how MongoDB/Mongoose, React(but later decided we didn't need it), How google authentication works, how to store data / work with api's, design a REST API, how to think about security of users and only handle data thats secure and doesn't leak any PII.
What's next for Find Time To Meet
From speaking with many orgs and staff we realized it'd be extremely useful if we can fetch data from both google calendar, outlook and some students even want data from sisweb.
We will also update our UI to be able to fit multiple dates, and allow for entry for multiple dates, ranges etc.