- Go 1.22+
- Node.js 18+
- Docker (for E2E tests)
git clone https://github.com/vazra/simpledeploy.git
cd simpledeploy
make buildmake dev # hot-reload API + Svelte UI
make api # API only with hot-reload
make ui # UI dev server onlyRun tests before submitting a PR:
make test # Go unit/integration tests (fast, no Docker needed)
make e2e # full E2E browser tests (needs Docker running)
make e2e-headed # E2E with visible browser for debugging
make e2e-report # open last E2E HTML report| Job | Trigger | What it does |
|---|---|---|
| lint | push + PR | golangci-lint |
| test | push + PR | go test ./... |
| build | push + PR | full make build (UI + Go) |
| e2e | push to main |
Playwright browser tests against a real server |
All jobs except E2E must pass before a PR can merge.
See CLAUDE.md for detailed architecture and code conventions.
Use Conventional Commits:
type(scope): description
Types: feat, fix, docs, test, refactor, chore
Scopes: api, cli, ui, or omit if broad.
- Fork the repo and create a branch from
main - Make your changes
- Run
make test(andmake e2eif touching API/UI) - Commit with a conventional commit message
- Open a PR against
main