Before you can contribute to our project, you need to install the following below:
- Node.js (LTS version)
- PNPM - run
corepack enable
to install (Node.js >= 16.9.0) - Docker - Support on Window (including WSL), Linux, and MacOS
TypeScript is strongly recommended you learn because we mainly use this language for all of our services.
- Clone the sourcecode from github https://github.com/vectier/codern/.
- Run
pnpm i
to install the required dependencies. - Add
.env
(the content same as.env.example
) to the following folder:/services/auth
/services/frontend
/services/gateway
/services/grading
/services/workspace
/
(project root)
- Run
docker compose up -d
to setup development environments. - Run
pnpm db:generate
to generate Prisma client for database connection. - Run
pnpm db:push
to sync the Prisma schema to the database. - Run
pnpm dev
to start everything up. - Take your coffee 鈽曪笍
- phpMyAdmin for manaing database stuffs with web-based via http://localhost:81/
- RabbitMQ management on http://localhost:15672/
- SeaweedFS for the storage system
- Master: http://localhost:9333/
- Volume: http://localhost:8080/
- Filter: http://localhost:8888/