dagu/ui
Yota Hamada 140afbaffe
Some checks are pending
CI / Check for spelling errors (push) Waiting to run
CI / Go Linter (push) Waiting to run
CI / Test on ${{ matrix.os }} (ubuntu-latest) (push) Waiting to run
Frontend CI / Build (push) Waiting to run
feat(al): API key management (#1509)
* **New Features**
* Full API Key management: create, list, retrieve, update, revoke; keys
usable for authentication.

* **API**
* OpenAPI/schema and server routes added for API key CRUD with
comprehensive request/response/error variants.

* **Auth & Middleware**
* Service-level generation, validation, last-used tracking and
middleware path for API key auth.

* **Storage & Config**
* File-backed API key store with in-memory index and new config path for
API keys directory.

* **UI**
* Admin API Keys page, nav item, create/edit modal, list and revoke
flows; simplified role label.

* **Tests**
* Extensive unit/integration tests covering store, service, API,
middleware, and UI.
2025-12-27 19:21:44 +09:00
..
.vscode [#933] Status-wise search for execution history API & UI (#936) 2025-05-14 22:48:26 +09:00
src feat(al): API key management (#1509) 2025-12-27 19:21:44 +09:00
.babelrc Add YAML support for DAG editor (#459) 2023-08-10 22:00:00 +09:00
.clinerules frontend: Migrate MUI to shadcn (#908) 2025-04-21 12:56:49 +09:00
.gitignore Add YAML support for DAG editor (#459) 2023-08-10 22:00:00 +09:00
.prettierignore Add YAML support for DAG editor (#459) 2023-08-10 22:00:00 +09:00
.prettierrc Add YAML support for DAG editor (#459) 2023-08-10 22:00:00 +09:00
CLAUDE.md Adopt “Sub DAG” terminology across backend, UI, and docs (#1362) 2025-10-29 09:06:15 +09:00
components.json frontend: Migrate MUI to shadcn (#908) 2025-04-21 12:56:49 +09:00
DARK_MODE_REQUIREMENTS.md [#989] feat: Parallel execution (#993) 2025-06-08 22:13:31 +09:00
eslint.config.mjs Add endpoints for managing sub-DAG runs (#915) 2025-05-06 14:47:19 +09:00
favicon.ico feat(all): Add support for multiple-level nested local DAGs (#1493) 2025-12-20 20:56:08 +09:00
index.html feat(ui): add tab layout for DAG definitions page (#1503) 2025-12-24 18:43:01 +09:00
LICENSE.md Add YAML support for DAG editor (#459) 2023-08-10 22:00:00 +09:00
package.json feat(ui): add tab layout for DAG definitions page (#1503) 2025-12-24 18:43:01 +09:00
pnpm-lock.yaml feat(ui): add tab layout for DAG definitions page (#1503) 2025-12-24 18:43:01 +09:00
postcss.config.mjs frontend: Migrate MUI to shadcn (#908) 2025-04-21 12:56:49 +09:00
README.md frontend: Migrate MUI to shadcn (#908) 2025-04-21 12:56:49 +09:00
tailwind.config.js feat(ui): update frontend design (#1498) 2025-12-21 18:59:00 +09:00
tsconfig.json frontend: Migrate MUI to shadcn (#908) 2025-04-21 12:56:49 +09:00
webpack.common.js Add endpoints for managing sub-DAG runs (#915) 2025-05-06 14:47:19 +09:00
webpack.dev.js Add endpoints for managing sub-DAG runs (#915) 2025-05-06 14:47:19 +09:00
webpack.prod.js Add endpoints for managing sub-DAG runs (#915) 2025-05-06 14:47:19 +09:00

UI

Prerequisites

  • Node.js (latest stable version)
  • pnpm

Development Instructions

1. Starting the Backend Server

The Dagu UI relies on a backend server that provides the necessary data for the UI to function properly. To start the backend server, navigate to the project root directory and execute the following command:

git clone git@github.com:dagu-org/dagu.git
cd dagu
make server

This command will start the backend server at 127.0.0.1:8080 by default. If you need to use a different address or port, you can modify the appropriate settings in the backend configuration file.

2. Starting the Webpack Dev Server

Once the backend server is up and running, you can start the Webpack dev server to serve the frontend assets. To do this, navigate to the ui/ directory and execute the following commands:

cd ui/
pnpm install
pnpm dev

This command will start the Webpack dev server at 127.0.0.1:8081. You can access the UI by opening your web browser and navigating to http://localhost:8081.

3. Building the Bundle.js File

If you need to build the bundle.js file, which contains all the necessary frontend assets, you can do so using the following command:

cd ../
make ui

This command will build the bundle.js file and copy it to dagu/frontend/assets/js/bundle.js. This is necessary for the Go backend to include the JavaScript within the binary.