/care-wallet

Primary LanguageTypeScript

Care-Wallet

Workflow Status Workflow Status

A fullstack application for the Care-Wallet project

Stack

Go Postgres

TypeScript React Native TailwindCSS

Tools

Expo Docker Swagger

Development Enviroment Setup

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.

Before Running

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

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

Running The Project

  1. Launch Docker Desktop
  2. In the base of the repo: run task start-docker
  3. Then, open a new tab to run commands in: run task start-backend or task start-dev
  4. Next, in a new tab run task start-ngrok
  5. Finally, open one last new tab: run task start-frontend