aboutsummaryrefslogtreecommitdiff
path: root/GEMINI.md
blob: d7ea87eaa77df0d4457be134bf6d00e6a2b3a02d (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
# hypr-wellbeing

## Project Overview

`hypr-wellbeing` is a command-line tool for tracking application usage time on Linux, with a specific focus on the Hyprland and niri window managers. It helps users monitor their screen time and promote digital wellbeing by providing detailed statistics on application usage.

## Features

- **Time Tracking:** Monitors the active window and logs the time spent on each application.
- **Daily Reports:** Displays a summary of daily application usage, including total screen time and a breakdown of time spent on each application.
- **Data Storage:** Stores usage data in CSV files in the `~/.cache/hyprwatch/daily_data/` directory.
- **Cross-Desktop Support (Limited):** While primarily designed for Hyprland and niri, it may work on other Wayland-based desktops.
- **Analysis:** Includes logic for generating weekly reports and sorting data.

## Technology Stack

- **Language:** C#
- **Framework:** .NET 8
- **Platform:** Linux
- **Compilation:** Published as a self-contained AOT (Ahead-Of-Time) compiled application.

## File Structure

```
/home/swarn/dox/code/hypr-wellbeing/
├───.gitignore
├───hypr-wellbeing.csproj
├───LICENSE
├───Program.cs
├───README.md
├───.assets/
│   └───show.png
├───.git/...
├───bin/
│   ├───Debug/...
│   └───Release/...
├───obj/
│   ├───Debug/...
│   └───Release/...
└───src/
    ├───Analysis.cs
    ├───GetWindows.cs
    ├───GetWindowsv2.cs
    ├───TimeOperations.cs
    └───WatchLog.cs
```

## Usage

### Monitor Mode

To run the application in the background and monitor application usage, use the following command:

```sh
hypr-wellbeing -d &> /dev/null &
```

### Show Stats

To display the statistics for the current day, use the following command:

```sh
hypr-wellbeing --show
```

## Future Improvements

The following features are planned for future releases:

- Weekly view of application usage
- Monthly view of application usage