Before compiling and running our application, we need to install/setup several languages, package managers, and various tools. The installation process can vary, so follow the instructions for each item below!
Go our primary backend language.
Node Package Manager our package manager in the frontend.
Docker and Docker Desktop our Postgres Database will be containerized in Docker.
Ngrok Allows us to easily connect the frontend to backend code.
Swagger visualizing the api and return types of requests from the database.
Task speeding up development by running long commands in quick phrases.
- Check out all of our commands in the
Taskfile.yaml
file!
Nodemon | (optional) a tool that watches code and reloads the build if it sees changes.
Create an .env file in the root directory:
EXPO_PUBLIC_API_DOMAIN=your-ngrok-static-domain-here
AWS_BUCKET_NAME=your-aws-s3-bucket-name-here
AWS_ACCESS_KEY=your-aws-access-key-here
AWS_SECRET_KEY=your-aws-secret-key-here
Before contributing to the project, we need to install/setup several various tools. The installation process can vary, so follow the instructions for each item below!
Pre-commit standardizing code style and commits
After installing, in the base folder run:
task pre-commit
This will run and install all of our hooks to ensure consistent formatting and structure in the code base.
Commitizen organizing our commits into categories
- Launch Docker Desktop
- In the base of the repo: run
task start-docker
- Then, open a new tab to run commands in: run
task start-backend
ortask start-dev
task start-dev
utilizes nodemon to check for updates in the backend so installing nodemon is necessary to run this command- You can now view swagger: http://localhost:8080/swagger/index.html
- Next, in a new tab run
task start-ngrok
- Finally, open one last new tab: run
task start-frontend