Welcome to the don-efficace platform repository!
Backend Language: TypeScript (Express.js on Node.js)
Backend API: REST
Database: PostgreSQL
User Auth: Yes
File Storage: Yes
- 📝 Documentation
- 👷 Getting Started
- ✔️ Prerequisites
- ⚙️ Setup
- ✨ Linter
- 📊 Prisma
- 💻 The Team
Starter Code
Don Efficace Notion
- Install node
- Install yarn
- Install Docker Desktop (MacOS | Windows | Linux) and ensure that it is running
- Install nvm (MacOS | Windows)
- This repo uses Node v18.18.2:
nvm install 18.18.2
nvm use 18.18.2
- Clone this repository and
cd
into the project folder:
git clone https://github.com/uwblueprint/don-efficace.git
cd don-efficace
- Add environment variables to the following files (ask PL for env variables):
/.env
/backend/typescript/.env
/frontend/.env
- Install dependencies:
cd backend/typescript
yarn install
cd frontend
yarn install
- Run the application:
docker compose up --build
docker exec -it de_ts_backend /bin/bash -c "yarn fix"
docker exec -it de_frontend /bin/bash -c "yarn fix"
docker exec -it de_ts_backend bash -c "yarn fix"
docker exec -it de_frontend bash -c "yarn fix"
Generate Prisma client:
cd backend/typescript
npx prisma generate
Synchronize Prisma schema with database schema:
npx prisma db push
Generate and apply migrations:
npx prisma migrate dev
Open Prisma studio:
npx prisma studio
-
Create an ngrok account
-
Store your personal ngrok authentication token as an environment variable in the .env file of the root directory:
NGROK_AUTHTOKEN=<your_ngrok_auth_token>
- Run the application:
docker compose up --build
If another service is occupying port 5001, identify the PID of the service (macOS):
sudo lsof -i :5001
Kill the occupying service:
sudo kill <PID>
Run the application again:
docker compose up --build
Project Lead: N/A
Product Managers: Jacqueline Fung & Zafir Raeid
Developers: Jessica Ding, Nandini Mehrotra, Shushawn Saha
Designers: Hillary Huang, Sunny Zhang, David Stirling
Project Lead: Matthew Ng
Product Managers: Jacqueline Fung
Developers: Aayush Patel, Ben Bai, Jason Le, Jordan Kok, Leo Zhang, Patrick Huang, Rosanne Zhu, Andy Liu
Designers: Sunny Zhang, David Stirling, Jane Al-Shihabi
Huge shoutout to the Internal Tools team for creating StarterCode v2!