Contributing
Thanks for your interest in contributing to Umami! This document outlines the process for contributing code.
Branching
Umami uses the following long-lived branches:
master— stable, released code. Do not open PRs againstmaster.dev— active development. All pull requests should targetdev.
Feature branches and fixes are merged into dev, and dev is periodically merged into master for releases.
Submitting a Pull Request
- Fork the repository and create your branch from
dev:git checkout dev git pull origin dev git checkout -b my-feature - Make your changes. Keep PRs focused — one logical change per PR.
- Ensure the project builds and lints cleanly:
pnpm install pnpm build pnpm lint - Push your branch and open a pull request against the
devbranch. - Fill in the PR description with what changed and why. Link any related issues.
PRs opened against master will be asked to retarget dev.
Reporting Issues
- Search existing issues before opening a new one.
- For bugs, include reproduction steps, expected vs. actual behavior, and your environment (Umami version, database, browser).
- For feature requests, describe the use case before the proposed solution.
Development Setup
See the README for instructions on installing dependencies, configuring the database, and running Umami locally.
License
By contributing, you agree that your contributions will be licensed under the MIT License.