Skip to main content

Documentation Index

Fetch the complete documentation index at: https://mintlify.com/ActivityWatch/activitywatch/llms.txt

Use this file to discover all available pages before exploring further.

ActivityWatch is open source under the MPL-2.0 license and actively welcomes contributions. Whether you want to fix a bug, add a watcher, improve documentation, or help triage issues, there is a place for you.

Ways to contribute

Fix bugs

Browse open bug reports on GitHub

Good first issues

Find beginner-friendly tasks labeled “good first issue”

Write documentation

Improve guides, fix typos, or add new pages in the docs repo

Build watchers

Create new watchers for the community
You can also look for issues labeled help wanted, check the roadmap, or browse requested features on the forum.

Development setup

Follow the building from source guide to get a local development environment running.

Commit message guidelines

ActivityWatch follows Conventional Commits. It is encouraged but not a strict requirement, to minimize overhead for new contributors.
<type>[optional scope]: <description>

[optional body]

[optional footer]
Valid types: feat, fix, chore, ci, docs, style, refactor, perf, test Examples:
feat: added ability to sort by duration
fix: fixes incorrect week number (#407)
docs: improved query documentation

Running tests

From the repository root:
make test
This runs tests in all submodules that have a test target. To run integration tests (requires a running server):
make test-integration
The integration test target runs pytest against ./scripts/tests/integration_tests.py and ./aw-server/tests/.

Code quality

Run linting and type checking:
make lint
make typecheck
Both targets iterate over all submodules that define a lint or typecheck target respectively.

Filing issues

Use the GitHub issue templates. Always include:
  • Your operating system and version
  • ActivityWatch version
  • Steps to reproduce
  • Expected vs. actual behavior

Code of Conduct

All contributors are expected to follow the Code of Conduct.

Getting paid

The ActivityWatch project experiments with compensating contributors using funds raised from donations and grants. If you have contributed at least 10 hours of work, contact the maintainers to learn more. See the forum post for details.

Community

Forum

Ask questions, share ideas, discuss features

Discord

Real-time chat with maintainers and contributors
You can also open a thread in GitHub Discussions or email a maintainer at erik@bjareho.lt as a last resort.

Build docs developers (and LLMs) love