# ActivityWatch/activitywatch

**Attribution required: if you use, quote, or summarise this content, you must credit and link back to [awesome-repositories.com](https://awesome-repositories.com/repository/activitywatch-activitywatch).**

17,912 stars · 922 forks · Python · MPL-2.0

## Links

- GitHub: https://github.com/ActivityWatch/activitywatch
- Homepage: https://activitywatch.net/
- awesome-repositories: https://awesome-repositories.com/repository/activitywatch-activitywatch.md

## Topics

`activitywatch` `afk` `analytics` `app` `cross-platform` `dashboard` `productivity` `quantified-self` `time-tracker` `time-tracking` `timetracker` `timetracking`

## Description

ActivityWatch is an open-source, privacy-focused time tracking platform that automatically records computer usage patterns to provide a comprehensive history of personal digital activity. It functions as a background service that monitors system metrics, application focus, and user input to build a detailed log of how time is allocated across various tasks and projects.

The platform distinguishes itself through a local-first architecture that stores all activity data as structured files on the user's machine, ensuring that sensitive usage history remains private and accessible offline. It supports peer-to-peer synchronization, allowing users to merge activity logs across multiple computers to maintain a unified history. Data is organized into logical containers, which are managed and queried through a local interface to generate interactive visualizations and reports.

The system utilizes a modular plugin-based architecture to capture a wide range of metadata, including browser activity, media consumption, and specific file paths from code editors. It also provides tools to import historical records from third-party services, consolidating disparate data sources into a single analytical view.

## Tags

### Business & Productivity Software

- [Time Tracking Tools](https://awesome-repositories.com/f/business-productivity-software/task-workflow-automation/productivity-task-management/productivity-software/time-tracking-tools.md) — Automatically records computer usage and application focus in the background to track time spent on tasks.
- [Editor Activity Trackers](https://awesome-repositories.com/f/business-productivity-software/activity-tracking/editor-activity-trackers.md) — Captures file paths and project metadata from active code editors to attribute development time. ([source](https://docs.activitywatch.net/en/latest/watchers.html))
- [Personal Analytics Dashboards](https://awesome-repositories.com/f/business-productivity-software/personal-analytics-dashboards.md) — Aggregates and displays personal productivity data through interactive charts to help users understand their time allocation.
- [Self-Hosted](https://awesome-repositories.com/f/business-productivity-software/task-workflow-automation/productivity-task-management/productivity-suites/self-hosted.md) — Offers a self-hosted platform for aggregating and visualizing personal productivity data on private infrastructure.
- [Development Time Attribution](https://awesome-repositories.com/f/business-productivity-software/time-tracking-software/development-time-attribution.md) — Captures file paths and project metadata from code editors to accurately attribute development time to specific tasks.

### Repository Format

- [Open-Source Desktop Applications](https://awesome-repositories.com/f/repository-format/open-source-desktop-applications.md) — Provides an open-source, privacy-focused desktop application for automatically tracking and analyzing daily digital activity.

### Security & Cryptography

- [Local Data Processing](https://awesome-repositories.com/f/security-cryptography/privacy-data-protection/local-only-data-processing/local-data-processing.md) — Stores all recorded activity logs locally on the user's machine to ensure complete privacy. ([source](https://docs.activitywatch.net/architecture.html))
- [Privacy-Focused Processing](https://awesome-repositories.com/f/security-cryptography/privacy-focused-processing.md) — Ensures data privacy by processing and storing all activity logs locally on the user's machine.

### System Administration & Monitoring

- [Activity Monitors](https://awesome-repositories.com/f/system-administration-monitoring/activity-monitors.md) — Acts as a background service that monitors system metrics and user input to build a comprehensive history of computing habits.
- [Automated Activity Loggers](https://awesome-repositories.com/f/system-administration-monitoring/activity-monitors/automated-activity-loggers.md) — Records computer usage patterns and application focus times in the background to provide a detailed history. ([source](https://docs.activitywatch.net/server-compare.html))
- [User Input Monitors](https://awesome-repositories.com/f/system-administration-monitoring/activity-monitors/user-input-monitors.md) — Tracks mouse movements, keyboard input, and window focus to identify active work periods. ([source](https://docs.activitywatch.net/en/latest/watchers.html))
- [Reactive Visualization Dashboards](https://awesome-repositories.com/f/system-administration-monitoring/web-based-dashboards/reactive-visualization-dashboards.md) — Provides a browser-based interface to render interactive charts and timelines for analyzing personal productivity patterns.
- [System Metrics Collection](https://awesome-repositories.com/f/system-administration-monitoring/logging/system-metrics-collection.md) — Collects hardware usage, network status, and peripheral device states for accurate time tracking. ([source](https://docs.activitywatch.net/en/latest/watchers.html))

### Development Tools & Productivity

- [Local File Syncing](https://awesome-repositories.com/f/development-tools-productivity/local-file-syncing.md) — Synchronizes recorded activity logs between multiple local instances to maintain a unified history. ([source](https://docs.activitywatch.net/syncing.html))
- [Activity Log Syncing](https://awesome-repositories.com/f/development-tools-productivity/local-file-syncing/activity-log-syncing.md) — Synchronizes recorded activity logs between multiple local instances to maintain a unified history. ([source](https://docs.activitywatch.net/features/syncing.html))

### Data & Databases

- [Time-Series Visualizers](https://awesome-repositories.com/f/data-databases/data-visualization-charts/time-series-visualizers.md) — Provides interactive time-series visualizations to help users analyze their daily digital activity patterns. ([source](https://docs.activitywatch.net/features/user-interface.html))
- [Time-Sliced Performance Analyzers](https://awesome-repositories.com/f/data-databases/database-management-systems/database-systems-management/performance-optimization-tools/database-performance-analyzers/time-sliced-performance-analyzers.md) — Processes collected activity data to generate insights and visualizations of time allocation. ([source](https://docs.activitywatch.net/architecture.html))
- [JSON-Based Persistence](https://awesome-repositories.com/f/data-databases/data-engineering-infrastructure/data-persistence-storage/data-storage/file-based-storage/local-file-storage/json-based-persistence.md) — Persists activity logs as structured JSON files on the local filesystem to ensure data privacy and offline accessibility.
- [Cross-Device Synchronization Engines](https://awesome-repositories.com/f/data-databases/data-synchronization/cross-device-synchronization-engines.md) — Maintains a unified history by synchronizing activity logs across multiple local computer instances.
- [Local Data Stores](https://awesome-repositories.com/f/data-databases/local-data-stores.md) — Persists activity logs as structured local files to ensure data privacy and offline accessibility.
- [Usage Reporting](https://awesome-repositories.com/f/data-databases/statistical-analysis-tools/usage-reporting.md) — Allows retrieval and filtering of historical usage logs to generate custom reports. ([source](https://docs.activitywatch.net/examples/working-with-data.html))
- [Activity Buckets](https://awesome-repositories.com/f/data-databases/activity-auditing/activity-buckets.md) — Organizes recorded events into logical containers to facilitate efficient data management and retrieval. ([source](https://cdn.jsdelivr.net/gh/ActivityWatch/activitywatch@master/README.md))
- [Historical Data Import](https://awesome-repositories.com/f/data-databases/historical-data-import.md) — Ingests historical time-tracking records from third-party services and calendar files. ([source](https://docs.activitywatch.net/en/latest/watchers.html))

### Networking & Communication

- [Peer-to-Peer Networking](https://awesome-repositories.com/f/networking-communication/peer-to-peer-networking.md) — Supports peer-to-peer synchronization to merge activity logs across multiple computers.

### Software Engineering & Architecture

- [Modular Plugin Architectures](https://awesome-repositories.com/f/software-engineering-architecture/modular-plugin-architectures.md) — Utilizes a modular plugin-based architecture to capture system events and application metadata.
- [Bucket Aggregators](https://awesome-repositories.com/f/software-engineering-architecture/event-driven-architectures/bucket-aggregators.md) — Organizes timestamped activity logs into logical containers to simplify data retrieval and cross-platform synchronization.
- [Inter-Process Communication](https://awesome-repositories.com/f/software-engineering-architecture/inter-process-communication.md) — Uses a RESTful API for inter-process communication between internal components.

### Web Development

- [Browser Usage Trackers](https://awesome-repositories.com/f/web-development/browser-integration-utilities/browser-session-management/browser-usage-trackers.md) — Records metadata from active browser tabs including page titles and URLs. ([source](https://docs.activitywatch.net/en/latest/watchers.html))

### Graphics & Multimedia

- [Media Consumption Loggers](https://awesome-repositories.com/f/graphics-multimedia/media-players/media-consumption-loggers.md) — Logs currently playing tracks and media content to understand entertainment habits. ([source](https://docs.activitywatch.net/en/latest/watchers.html))
