You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: cinnamon-color-timer-clock-desklet@curbsoftware/README.md
+26-8Lines changed: 26 additions & 8 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -1,34 +1,52 @@
1
1
# Color Timer Clock
2
2
3
-
A Cinnamon desklet with three cards — **Clock**, **Timer** and **Chronometer** — whose background colors follow a schedule you define. Each card's color ramps between (time, color) stops: the clock by time of day wrapping over midnight, the timer by time remaining, the chronometer by time elapsed.
3
+
A Cinnamon desklet with three cards (**Clock**, **Timer** and **Chronometer**) whose background colors follow a schedule you define. Each card's color ramps between (time, color) stops: the clock by time of day wrapping over midnight, the timer by time remaining, the chronometer by time elapsed.
4
4
5
5

6
6
7
+
## Why this exists
8
+
9
+
The color is not decoration. It's the signal. Each card has a job:
10
+
11
+
- The **clock** shows when AI providers run their low-traffic discounts. Set the color stops to match the window, and you know at a glance when it's cheap to run.
12
+
- The **timer** counts down to credit resets, so I know when my API credits come back.
13
+
- The **chronometer** runs sprints. Most of the work happens in the last stretch before a deadline, so the color tells me where I am in the sprint: green for the first half hour, amber sliding to red over the next hour and a half, blue once two hours are up. Blue means take a break.
14
+
15
+
One glance tells me the state of things. That's the whole idea.
16
+
7
17
## Features
8
18
9
19
- Up to three side-by-side cards; show or hide each one
10
20
- Per-card color schedules with smooth (interpolated) or stepped transitions
11
21
- Clock card with an optional IANA timezone
12
22
- Timer with on-card play/pause, reset and ±60 s buttons; survives restarts and expires correctly even after downtime
23
+
- Optional desktop notification when the timer finishes
24
+
- Optional notifications when the clock or chronometer reaches a schedule stop
13
25
- Chronometer with pause/resume; the accumulated time survives restarts, and an optional hundredths display (20 updates/s while running)
14
26
- Text and border colors adapt to the card background for readability (WCAG contrast ratio)
15
27
- Tooltips on every card control
28
+
- A per-card refresh button to reload settings without interrupting a running timer or chronometer
29
+
- A next-colour swatch on each card that previews the upcoming schedule colour
16
30
- One-click "Reset all schedules to defaults"
17
31
18
32
## Configuration
19
33
20
34
Right-click the desklet → **Configure…**
21
35
22
-
-**Color schedules** — a list of (time, color) stops per card. Colors are hex (`#rgb`, `#rgba`, `#rrggbb`, `#rrggbbaa`) or a name (`red`, `blue`, …). Duplicate times keep the last row; invalid rows are dropped with a log line
23
-
-**Smooth color transitions** — blend gradually between stops, or hold each color and jump at the next stop
24
-
-**Timer minutes / seconds** — the default duration the timer restarts from
25
-
-**Show hundredths of a second** — adds a `.ss` fraction to the chronometer while it runs
26
-
-**Time / date format** — `strftime` patterns for the clock card
27
-
-**Maximum font sizes, card spacing, desklet width / height** — cards shrink text to fit
36
+
-**Color schedules**: a list of (time, color) stops per card. Colors are hex (`#rgb`, `#rgba`, `#rrggbb`, `#rrggbbaa`) or a name (`red`, `blue`, …). Duplicate times keep the last row; invalid rows are dropped with a log line
37
+
-**Smooth color transitions**: blend gradually between stops, or hold each color and jump at the next stop
38
+
-**Show a notification when the timer finishes**: pops a desktop notification when the countdown reaches zero
39
+
-**Notify (per schedule row)**: tick a clock or chronometer schedule row's Notify checkbox to pop a notification when that time is reached
40
+
-**Timer minutes / seconds**: the default duration the timer restarts from
41
+
-**Refresh (per card)**: the small button in each card's top-right corner reloads that card's settings without restarting a running timer or chronometer
42
+
-**Next-colour swatch (per card)**: the small circle in each card's bottom-right corner previews the next schedule colour and snaps to it at the breakpoint
43
+
-**Show hundredths of a second**: adds a `.ss` fraction to the chronometer while it runs
44
+
-**Time / date format**: `strftime` patterns for the clock card
45
+
-**Maximum font sizes, card spacing, desklet width / height**: cards shrink text to fit
28
46
29
47
## Notes
30
48
31
-
Colors interpolate piecewise-linearly in RGB, so a red→blue ramp passes through purple. The clock schedule wraps over midnight; timer and chronometer schedules hold the last stop's color beyond it. Cards share the desklet width and each needs about 130 px — when the width cannot fit them all, the chronometer and then the timer hide automatically (a note is logged) and return when the desklet is widened.
49
+
Colors interpolate piecewise-linearly in RGB, so a red→blue ramp passes through purple. The clock schedule wraps over midnight; timer and chronometer schedules hold the last stop's color beyond it. Cards share the desklet width and each needs about 130 px. When the width cannot fit them all, the chronometer and then the timer hide automatically (a note is logged) and return when the desklet is widened.
Copy file name to clipboardExpand all lines: cinnamon-color-timer-clock-desklet@curbsoftware/files/cinnamon-color-timer-clock-desklet@curbsoftware/cardActions.js
0 commit comments