-
-
Notifications
You must be signed in to change notification settings - Fork 1
Node Reference Plugins
Official-style plugin pack (api_version 1.1). Install via Tools → Plugins… or drop the manifest under ~/.config/conky-studio/plugins/.
Plugins are data only (JSON + Lua templates). Lua runs inside Conky — only load packs you trust.
Type ids below are exact registry keys. Slot properties: use a unique integer per instance when two nodes of the same type must not share state.
Richer than built-in Threshold Gate.
| Prop | Kind | Default | Bindable | Notes |
|---|---|---|---|---|
| value | float | 50 | yes | accepts number, percent, celsius |
| threshold | float | 80 | yes | same accepts |
| mode | enum | above |
above ≥ · below ≤ · equal ±ε |
|
| output_mode | enum | binary |
binary 0/1 · gate pass value or 0 · invert_binary
|
|
| epsilon | float | 0.01 | only for equal mode |
Output: number
Abs-magnitude deadzone (not centre+radius built-in).
| Prop | Kind | Default | Bindable | Notes |
|---|---|---|---|---|
| value | float | 0 | yes | |
| zone | float | 1 | yes | |value| ≤ zone → 0 |
| soft | bool | false | if on, subtract zone and keep sign |
Output: number
Exponential moving average.
| Prop | Kind | Default | Bindable | Notes |
|---|---|---|---|---|
| value | float | 0 | yes | |
| alpha | float | 0.2 | yes | 0.01–1; lower = heavier lag |
| slot | int | 1 | unique per node |
Output: number · Uses helper table _cs_plugin_smooth
| Prop | Kind | Default | Notes |
|---|---|---|---|
| value | float | 72 | bindable |
| direction | enum | f_to_c |
f_to_c / c_to_f
|
| decimals | enum | 1 |
none / 0 / 1 / 2 |
Output: celsius (kind tag; value is converted number)
Maps one number to a stage index 1…N (or none_value).
| Prop | Kind | Default | Notes |
|---|---|---|---|
| value | float | 0 | bindable |
| steps_count | int | 4 | 1–10 active steps |
| mode | enum | progressive |
progressive / highest / exact_band |
| none_value | float | 0 | when below all thresholds |
| t1…t10 | float | 10…140 | bindable thresholds |
Output: number (stage index)
Use: image chains, picker indices, multi-LED logic
Richer than built-in nearest-only Round.
| Prop | Kind | Default | Notes |
|---|---|---|---|
| value | float | 0 | bindable |
| mode | enum | nearest |
nearest / floor / ceil |
| decimals | int | 0 | 0–6 |
Output: number
| a, b | bindable floats | truthy if ≥ threshold (default 0.5) → output 1 else 0 |
Same shape as AND with OR semantics.
| value | bindable | inverted vs threshold |
Output: number (0/1)
| selector ≥ threshold → a, else b (all bindable as listed in pack) |
Output: number
value / total * 100; 0 if total is 0.
Output: percent
Formats number as text with prefix, suffix, decimals (e.g. 42.5 °C).
Output: text
Max change per refresh (max_step); state in slot.
Output: number · helper _cs_plugin_ratelimit
Remembers peak with optional decay per tick; slot for state.
Output: number · helper _cs_plugin_peak
value % divisor (0 if divisor is 0).
Output: number
Always-on filled circle (status LED without threshold).
| Prop | Kind | Default | Notes |
|---|---|---|---|
| x, y | float | 40 | position |
| radius | float | 6 | 1–200 |
| color | color | #4fd1c5 |
→ r,g,b in Lua |
| opacity | float | 1 | 0–1 |
No data output. Unlike LED Dot, colour is fixed (no on/off threshold).
Tools → Plugins… → fetch / load manifest
# or
~/.config/conky-studio/plugins/your-pack.json
Validate:
from conkystudio.plugins.loader import load_manifest_file, validate_only
print(validate_only(load_manifest_file("pack.json")))Authoring rules: see wiki Plugins and repo PLUGIN_AUTHORING.md.