Update README - fix download links, activity count, and accuracy

- Fix download links to point to Gitea releases page (not GitHub-style relative URLs)
- Correct activity count from 70 to 72
- Enlarge break screen screenshot
- Add missing IPC entries (natural-break-detected event, cursor/window commands)
- Add msvc_compat.rs to backend modules table
- Update winapi description to include WebView2 check dialog
- Remove unused dirs crate from dependencies
This commit is contained in:
Your Name
2026-02-07 11:24:16 +02:00
parent 6b584efb40
commit 87ab035c68
2 changed files with 10 additions and 10 deletions

View File

@@ -24,7 +24,7 @@
</p> </p>
<p align="center"> <p align="center">
<a href="../../releases/latest"><strong>Download latest release</strong></a> <a href="https://git.lashman.live/lashman/core-cooldown/releases"><strong>Download latest release</strong></a>
</p> </p>
<br /> <br />
@@ -82,7 +82,7 @@ Tools for human wellbeing should never be enclosed, never be scarce, and never s
<br /> <br />
<p align="center"> <p align="center">
<img src="screenshots/04-break.png" alt="Break Screen" width="420" /><br /> <img src="screenshots/04-break.png" alt="Break Screen" width="600" /><br />
<sub><strong>Break Screen</strong> - Always-on-top break overlay with activity suggestions</sub> <sub><strong>Break Screen</strong> - Always-on-top break overlay with activity suggestions</sub>
</p> </p>
@@ -128,7 +128,7 @@ Tools for human wellbeing should never be enclosed, never be scarce, and never s
### 🧘 Break Activities ### 🧘 Break Activities
Each break shows a randomized suggestion from a curated library of **70 activities** across four categories: Each break shows a randomized suggestion from a curated library of **72 activities** across four categories:
| Category | Examples | | Category | Examples |
|:---------|:---------| |:---------|:---------|
@@ -273,7 +273,7 @@ Core Cooldown is **fully portable**. The executable carries everything it needs
That's it. No elevated permissions. No runtime dependencies. The first launch may take a moment while Windows initializes the WebView2 runtime. That's it. No elevated permissions. No runtime dependencies. The first launch may take a moment while Windows initializes the WebView2 runtime.
**[Download latest release →](../../releases/latest)** **[Download latest release →](https://git.lashman.live/lashman/core-cooldown/releases)**
<br /> <br />
@@ -379,7 +379,8 @@ A split-architecture desktop app: Rust backend for system integration and timer
| `config.rs` | Config struct with serde serialization, validation (clamping all values to safe ranges), portable file I/O | | `config.rs` | Config struct with serde serialization, validation (clamping all values to safe ranges), portable file I/O |
| `timer.rs` | Timer state machine (`Running` / `Paused` / `BreakActive`), idle detection via Windows API, working hours enforcement | | `timer.rs` | Timer state machine (`Running` / `Paused` / `BreakActive`), idle detection via Windows API, working hours enforcement |
| `stats.rs` | Daily break statistics, streak calculation, history queries | | `stats.rs` | Daily break statistics, streak calculation, history queries |
| `main.rs` | Entry point | | `main.rs` | Entry point, WebView2 Runtime detection |
| `msvc_compat.rs` | MSVC CRT compatibility stubs for static WebView2Loader linking on MinGW |
</details> </details>
@@ -392,7 +393,7 @@ A split-architecture desktop app: Rust backend for system integration and timer
| **Windows** | `BreakWindow` (standalone break modal), `MiniTimer` (floating mini mode) | | **Windows** | `BreakWindow` (standalone break modal), `MiniTimer` (floating mini mode) |
| **Components** | `TimerRing`, `Titlebar`, `ToggleSwitch`, `Stepper`, `ColorPicker`, `FontSelector`, `TimeSpinner`, `BackgroundBlobs` | | **Components** | `TimerRing`, `Titlebar`, `ToggleSwitch`, `Stepper`, `ColorPicker`, `FontSelector`, `TimeSpinner`, `BackgroundBlobs` |
| **Stores** | `timer.ts` (reactive timer state from IPC events), `config.ts` (config with debounced auto-save) | | **Stores** | `timer.ts` (reactive timer state from IPC events), `config.ts` (config with debounced auto-save) |
| **Utilities** | `sounds.ts` (Web Audio synthesis), `activities.ts` (70 break activities), `animate.ts` (motion library) | | **Utilities** | `sounds.ts` (Web Audio synthesis), `activities.ts` (72 break activities), `animate.ts` (motion library) |
</details> </details>
@@ -400,10 +401,10 @@ A split-architecture desktop app: Rust backend for system integration and timer
<summary><strong>IPC contract</strong></summary> <summary><strong>IPC contract</strong></summary>
**Commands** (frontend → backend): **Commands** (frontend → backend):
`get_config` · `save_config` · `update_pending_config` · `reset_config` · `toggle_timer` · `start_break_now` · `cancel_break` · `snooze` · `get_timer_state` · `set_view` · `get_stats` · `get_daily_history` `get_config` · `save_config` · `update_pending_config` · `reset_config` · `toggle_timer` · `start_break_now` · `cancel_break` · `snooze` · `get_timer_state` · `set_view` · `get_stats` · `get_daily_history` · `get_cursor_position` · `save_window_position`
**Events** (backend → frontend): **Events** (backend → frontend):
`timer-tick` · `break-started` · `break-ended` · `prebreak-warning` · `config-changed` `timer-tick` · `break-started` · `break-ended` · `prebreak-warning` · `config-changed` · `natural-break-detected`
</details> </details>
@@ -478,7 +479,7 @@ All settings stored in `config.json` next to the executable. The settings panel
| `serde` / `serde_json` | Config and stats serialization | | `serde` / `serde_json` | Config and stats serialization |
| `chrono` | Date/time handling for schedules and statistics | | `chrono` | Date/time handling for schedules and statistics |
| `anyhow` | Error handling | | `anyhow` | Error handling |
| `winapi` | Windows idle detection (`GetLastInputInfo`) | | `winapi` | Windows idle detection (`GetLastInputInfo`), WebView2 check dialog |
</details> </details>

View File

@@ -17,7 +17,6 @@ tauri-plugin-notification = "2"
tauri-plugin-global-shortcut = "2" tauri-plugin-global-shortcut = "2"
serde = { version = "1", features = ["derive"] } serde = { version = "1", features = ["derive"] }
serde_json = "1" serde_json = "1"
dirs = "5"
chrono = "0.4" chrono = "0.4"
anyhow = "1" anyhow = "1"