(TypeScript / JavaScript)
- Fastify
- PostgreSQL
- Kysely
- Dokcer Compose
(TypeScript / JavaScript)
- ReactJS
- Vite
- MobX
- UI lib (to be defined later)
- Node.js (v20 or higher)
- Yarn package manager v4.6.0 & Corepack enabled
- Docker and Docker Compose
Before working - copy environment file:
cp .env.example .envThen edit .env file with your specific configuration values if needed
(not recommended until passing the instructions and getting familiar with the project)
-
Install dependencies:
yarn install
-
Start the database:
yarn db:build yarn db:up
-
Run database migrations:
yarn db:migrate:latest
-
Start development servers:
Option A: Start both client and server separately
# Terminal 1 - Start server yarn server:dev # Terminal 2 - Start client yarn client:dev
Option B: Or use individual commands
yarn server:dev # Start server in development mode yarn client:dev # Start client in development mode
-
Build applications:
yarn server:build yarn client:build
-
Start production servers:
yarn server:start yarn client:start
yarn db:build- Build database containeryarn db:up- Start database containeryarn db:down- Stop database containeryarn db:migrate:up- Run single migrationyarn db:migrate:latest- Run all pending migrationsyarn db:rollback- Rollback last migrationyarn db:seed:run- Run database seeds
yarn lint- Run linteryarn lint:fix- Fix linting issuesyarn lint:all- Lint entire codebase