Contrib
We welcome contributions of any size and skill level. If you have an idea for a new feature or have found a bug, please open an issue on the GitHub repository.
- Go version 1.19 or later.
- Latest version of Node.js.
- yarn package manager.
-
Clone the repository to your local machine.
-
Navigate to the root directory of the cloned repository and build the frontend project by running the following command:
make build-admin -
Run the following command to start the [Dagu]{.title-ref} application:
go run main.go -
Now you can change the source code and build the binary by running the following command:
make build -
Run the following command to start the [Dagu]{.title-ref} application:
./bin/dagu
Run the following command to run the tests:
make test
admin: Frontend code for the Web UI.cmd: Contains the main application entry point.docs: Contains the documentation for the project.examples: Contains the example workflows.internal: Contains the internal code for the project.admin: Contains the backend code for the Web UI.agent: Contains the code for runnning the workflows.config: Contains the code for loading the configuration.controller: Contains the code for managing the workflows.dag: Contains the code for parsing the workflow definition.database: Contains the code for interacting with the database.executor: Contains the code for different types of executors.runner: Contains the code for scheduler.sock: Contains the code for interacting with the socket.
-
Clone the repository to your local machine.
-
Navigate to the root directory of the cloned repository and build the frontend project by running the following command:
make build-admin -
Run the following command to start the [Dagu]{.title-ref} application:
go run main.go server -
Navigate to
admindirectory and run the following command to install the dependencies:yarn install yarn start -
Open the browser and navigate to http://localhost:8081.
-
Make changes to the source code and refresh the browser to see the changes.
main: The main branch where the source code always reflects a production-ready state.