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.

Dagu is open source under the GNU General Public License v3.0.