☑️ Requirements: docker, docker-compose.
-
▶️ ./up
to start everything❔
This will:- Start all services (postgres db, vite client, rust server) as docker containers
- Opens automatically the frontend in your browser
-
⏹️
./down
to stop everything❔
This will stop all the services (nothing else than `docker compose down`).
We use mise
to manage runtimes, manage environment variables, and run tasks.
Install it and start everything in dev mode with:
curl https://mise.run | sh
mise activate
mise run d
❔
- Installs
mise
- Installs necessary runtimes (bun, rust)
- Installs necessary packages (node_modules, cargo deps)
- Spins up a postgres database and runs the migrations against it
- Generates prisma client and corresponding TS types
- Starts the api server in dev mode
- Starts the frontend client in dev mode
During local development, we use inbucket to receive confirmation emails.
The mailboxes are available at localhost:9000.
This project started as a fork of Freedit, but has since diverged quite a bit.
forum.pse.dev still runs this original freedit codebase.
Run it with:
mise r freedit
or
cargo run -r --bin freedit