Getting Started
This page takes you from a fresh clone to a running backend and frontend, both
with hot reload. Local development is driven entirely by the root Makefile.
Prerequisites
Section titled “Prerequisites”- Docker + Compose — used to run PostgreSQL (with pgvector) and Mailpit
locally.
docker-composeorpodman-composeboth work. - Go 1.25.x — the
MakefilepinsGOTOOLCHAIN=go1.25.11, so Go downloads and uses that exact toolchain on demand even if your system Go is newer. - Node.js >= 20 — for the frontend (its
enginesfield requires>=20). pre-commit— required; commits are gated on it. Install withpipx install pre-commitorbrew install pre-commit.- air — for backend hot reload. Install with
go install github.com/air-verse/air@latest.
Clone the repository
Section titled “Clone the repository”git clone https://github.com/vibexp/vibexp.gitcd vibexpInstall the pre-commit hooks
Section titled “Install the pre-commit hooks”Do this once per clone, before your first commit. The hooks run the same checks CI runs.
pre-commit installRun the backend
Section titled “Run the backend”make backend-run-devThis target:
- starts PostgreSQL and Mailpit via Compose,
- starts the API under air for hot reload on any
.gochange.
The local email inbox (Mailpit) UI is at http://localhost:8025, and the API
serves on http://localhost:8080 (health check at
http://localhost:8080/health).
Run the frontend
Section titled “Run the frontend”In a second terminal:
make frontend-run-devThis copies frontend/.env from .env.example if missing, installs
dependencies if node_modules is absent, and starts the Vite dev server at
http://localhost:5173.
Dev-login bypass (no WorkOS needed locally)
Section titled “Dev-login bypass (no WorkOS needed locally)”You do not need a WorkOS account to develop locally. The dev defaults enable
a dev-login bypass (DEV_LOGIN_ENABLED), so you can sign in and click around
immediately. WorkOS / OIDC is only required for real deployments — see the
self-hosting docs for production auth configuration.
Common checks
Section titled “Common checks”Run these before committing (CI runs the same targets):
# Backendmake backend-test # go test -race ./...make backend-lint # golangci-lintmake backend-check # lint + vulncheck + security scan
# Frontendmake frontend-test # vitestmake frontend-lint # eslintmake frontend-type-check # tscWhere to go next
Section titled “Where to go next”- Contribution Workflow — branch, commit, and PR conventions.
- Code Conventions — the spec-first model and the regeneration commands.