Hermit is a Food Delivery App exclusively for use by The Cheesecake Factory. This project serves as The A Team's culminating capstone project, representing our time here at Seneca College.
Comprised of work between January and April 2021.
Hermit has two versions: production
and development
, aka prod
and dev
accordingly.
The production
version represents the work that it ready to be publicly available, and thus only the most thoroughly tested code ends up here. This version is packaged and ultimately ends up deployed on our AWS EC2 Production Server.
The development
version represents the version currently in development, and is what we as a team will be working on.
Please note that Hermit requires several private keys that only the core team has access to.
In order to add code to the dev
version of Hermit, follow the steps below accordingly:
- Fork Hermit
- Clone your forked project onto your local machine
- Open your project with VSCODE (or your IDE of choice):
cd Hermit
and runnpm i
cd src/frontend
and runnpm i
To run BOTH the backend & the frontend:
cd Hermit
and runnpm run dev
To run ONLY the dev backend:
cd Hermit
and runnpm run express
- Navigate to
localhost:5000
to access the backend
- Navigate to
To run ONLY the dev frontend:
cd Hermit
and runnpm run frontend
- Navigate to
localhost:3000
to access the frontend
- Navigate to
To run the production version of Hermit (for testing purposes):
cd Hermit
and runnpm run prod
.
Feel free to take a look at various other commands in package.json
but the above commands should be all you need.
- SSH into the EC2 box
pm2 stop hermit
cd ~/Hermit
git pull origin main
npm i
andcd src/frontend
andnpm i
pm2 start hermit
In order to contribute to Hermit please carefully read and follow the instructions below:
- Make sure all your changes happen inside of a branch on your fork.
- Create a PR from your branch to Hermit's main branch.
- PRs must be approved by at least one core member of the team before merging is possible.
-
Prettier should already be set up such that all our code should look the same. It should prompt you to install Prettier when you open your fork in VSCode.
-
Ports:
- Port 3000 is used by the frontend in
dev
mode (see above.) - Port 5000 is used by the frontend in
prod
mode (see above.) - Port 8000 is used by the backend (express) in both
dev
andprod
.
- Port 3000 is used by the frontend in
-
Technologies Used:
- AWS (EC2)
- SSH
- Nginx
- Git/GitHub
- Postman
- Firebase
- CSS Libraries
- Google oAuth 2.0
- React
- Express
- Google Maps API