Documentation Index
Fetch the complete documentation index at: https://docs.dograh.com/llms.txt
Use this file to discover all available pages before exploring further.
If the below steps do not work out for you, it would be great if you can open an issue on Github.
System Requirements
- git to clone the forked repository
- Node.js 24 to run the UI (we recommend using NVM on macOS/Linux or NVM for Windows on Windows to manage your node versions locally)
- Python 3.13 to run the backend
- Docker to run the database and redis cache locally
All commands below are shown for macOS / Linux. Expand the Windows tab for the PowerShell equivalent where it differs.
Steps
- Fork the Dograh repository by going to https://github.com/dograh-hq/dograh
- Clone your fork on your machine. You can skip
--recurse-submoduleshere β the bootstrap script in the next step will initialize submodules for you.
- Run the contributor bootstrap. It configures
origin(your fork) andupstream(dograh-hq/dograh), initializes the pipecat submodule, creates the Python venv, and copies the.envtemplates. Re-running it is safe β already-configured pieces are skipped.
- Ensure you are on right version of Node.js using
node --version
- Install UI dependencies
- Start local docker services
Please ensure you dont have any other instance of conflicting services running by checking
docker ps
docker ps
- Install Python requirements. The script installs
api/requirements.txtand pipecat with the required extras. Add the dev flag if you also want the pipecat dev dependency group (pytest, ruff, pre-commit, etc.).
- Start backend services
Restarting the backend
Re-run the same start script to restart. It reads the PID files underrun/, terminates the previous services along with their descendants, and starts fresh ones.
uvicorn runs with --reload --reload-dir api, so edits under api/ are picked up automatically β no restart needed. The other services (ari_manager, campaign_orchestrator, arq) do not auto-reload; re-run the start script after changing code they execute.- Start the UI
- You should be able to open the application on
localhost:3000now
Keeping your fork in sync with upstream
The bootstrap script configures two remotes:origin (your fork, where you push) and upstream (dograh-hq/dograh, where new commits land). To pull in upstream changes:
git remote -v. You should see:
Always push feature branches to
origin (your fork), then open a pull request against dograh-hq/dograh:main. Never push directly to upstream.