EasyMeet is a web application that allows a user to view and change their calendar. In addition, they can send their schedule to anyone, allowing this secondary user to select a time to meet.
EasyMeet is effortless and instant. And while other scheduling apps may offer the same ease of access, EasyMeet allows invitees to make their own events without exposing the inviter's private calendar. Furthermore, invitees do not need an account to select an available time to meet and inviters can rest easy knowing their generated invitations are one time use only.
If you would just like to skip hosting locally and see the website we have launched, then visit Easy Meet!
Disclaimer: Building and testing our app requires specific environment variables to work. Only the developers have access to these variables. Unfortunately we cannot publish this information as it contains the team's sensitive information. You can however, visit our website linked below to see what we have launched. In addition, we have two databases: one for testing and one for the production version. If you decide to register on localhost, then you will NOT be able to register on the production version, our website, and vice versa.
To start hosting our app locally, use the following command in your desired location:
git clone https://github.com/cs130-w21/17
Open terminal and change your directory into the top level folder of our application. If you don't have Node.js or npm, download it from here. Then, install the version of npm that we used by running:
npm install npm@6.14.11
Then, run these commands to install the required libraries and dependencies:
npm install
npm run client-install
The first command is for the backend, and the second command is a custom script to install the frontend dependencies without having to change directories. All that remains is to run the web app! To do so, run the following command in terminal:
npm run dev
This opens the EasyMeet homepage in your browser on port 3000. Since our app is not yet verified by Google, the common man would not be able to login and view their Google calendar through our website. However, if you are either Keerti or Doruk, then we have whitelisted your emails to allow registration and continue navigating our app. To see more information on how to navigate our website, turn to our GitHub Wiki's page labelled 'User Manual'.
Disclaimer: Again, if you do not have our environment variables, most of these tests will be unlikely to succeed.
If you would like to run the test cases we have built for our app, then the directory you are currently on determines which test cases you run. To test the backend, simply remain in the top level folder and run:
npm run test
This runs the Jest framework that tests our backend test suites. For the front end, simply change directory into /client and then run the same command.
Visit our GitHub Pages website to see the API documentation. It is separated between Client and Server documentation.
We used this tutorial to set up skeleton code for our project. The repo for it is here.