Skip to content

Build from source

For contributors or users who want to run a specific commit.

Prerequisites

Build

bash
git clone https://github.com/dagucloud/dagu.git
cd dagu
make build       # builds the frontend bundle + the Go binary

The binary is written to .local/bin/dagu.

Install the binary

bash
sudo install .local/bin/dagu /usr/local/bin/

Or copy to any directory on your PATH.

Development targets

TargetWhat it does
make binBuild Go binary only (skips frontend)
make uiClean install and build the frontend bundle
make runStart the frontend dev server and scheduler
make run-serverStart the backend server only
make testRun the Go test suite with race detection
make lintRun golangci-lint
make fmtAuto-format Go code
make apiRegenerate REST API server code from api/v1/api.yaml
make protocRegenerate gRPC code from proto/coordinator/v1/

Frontend-only dev loop

bash
cd ui
pnpm install
pnpm dev       # serves the UI on :8081, proxies API calls to :8080

Run dagu start-all in a separate terminal for the backend.

Verify

bash
.local/bin/dagu version

See CONTRIBUTING.md for the full development workflow.

Released under the MIT License.