Skip to content

Features

Bobby Comet edited this page Aug 5, 2026 · 8 revisions

Features

Everything Conky Studio is built to do, grouped by area. Depth varies by release channel; items marked in progress are not guaranteed yet.


Product promise

Feature What it means
Visual system design Build HUDs as a node graph (sources → logic → visuals), not only by hand-editing conf/Lua
1:1 live preview Preview runs a real Conky process on the same generation pipeline as Build — not a mock canvas
Production export Output is a normal theme folder: start.sh, conky.conf, render.lua, scripts, assets
No root required for Studio AppImage-style use; no sudo/pkexec/package manager required to run the editor (Conky itself is still your system’s package)
Session-aware Detects X11/Wayland, compositor hints, Conky build, hardware signals and surfaces them in UI

Application shell

Feature Detail
Manager tab Lists installed themes (e.g. under ~/.config/conky/); start/stop processes; open theme folders; edit README and theme.json
Studio tab Full editor: palette, canvas, properties, layers, live preview
Store tab Browse/install community content when feeds or archives are configured; may hand off to browser (e.g., OpenDesktop)
Project menu New HUD (wizard), New Blank HUD, Open/Save project JSON, Build to Folder, Build & Install, Import Legacy Theme
Tools menu Hardware & Session report, Install Font, Plugins
Help menu Getting Started guide, Learn Studio interactive tour, Support (Discord + YouTube)
Theme Wizard on launch Optional first-run / every-launch wizard; “Do not show again” preference
Undockable panels Nodes, Layers, Properties as docks (close, float, retab); hidden-panel strip to restore them

Studio editor

Canvas & graph

Feature Detail
Node graph Drag nodes, connect sockets, delete selection
Pan/zoom Drag empty space to pan; Ctrl+scroll to zoom
Multi-select Shift + Left-click drag
Socket wiring Output (sources/logic/visual, or Source/Visual) → bindable inputs on targets; kind-aware coloring
Data-flow highlight Selecting a node emphasizes related wires (trace upstream/downstream)
Groups Group selection, ungroup, collapse/expand, rename; members move with the frame; editor-only (no codegen impact)
Free-form labels Canvas notes for documentation; editor-only
Context menu Delete, group, ungroup, collapse, labels
Canvas node Width/height = workable HUD resolution; alignment, gaps, FPS, transparency, window type

Palette, properties, layers

Feature Detail
Categorized palette Sources, Logic, Visuals, plugin sections, simple, Complex (advanced); drag or double-click to add
Property panel Typed editors (float, int, bool, color, string, enum, font, path, code); groups; help text
Bindable properties Constants or live wires; unbind chips when connected
Layers dock Visuals only: reorder draw stack, eye (visibility → skipped in codegen), lock (no move)
HUD name field Becomes install folder name on Build & Install

Preview & iteration

Feature Detail
Live Preview Start/Stop Generates and runs Conky; stop ends the process
Fast iteration Change props/wires → preview again without hand-writing conf

Theme Wizard

Feature Detail
Categories e.g., Minimal, Gaming, RPG, Sci-Fi, Cyberpunk, Terminal, Fantasy, Batman
Resolution presets Common desktop sizes for canvas setup
Panels Weather, CPU, GPU, RAM, Disk, Battery, Clock, Calendar, Music, Network, etc (set depends on build)
Extras Chrome, threshold LEDs, history graphs, brackets, glow, etc. when node types exist
Starter graph Full editable project — not a locked template

Data sources

Feature Detail
Native system sources CPU, RAM, disk, network, uptime, hostname, kernel, processes, battery, date/time, greeting, etc
GPU/sensors GPU stats & temps, disk sensors where detection allows
Weather Script + cache style families
Music/now playing playerctl-oriented path (requires playerctl + active player)
Custom Script Any executable; poll interval; execi (Conky-native) or daemon (background + cache)
Unused sources omitted Codegen avoids polling sources not used in the graph

Logic

Built-ins sit between sources and visuals (dependency order each refresh), including:

See Node Reference for more details than this list provides

Area Examples
Math Math ops, scale/offset, invert percent, absolute, round, etc
Rules Conditional, threshold gate, AND/OR, pick A/B, etc
Range/smooth Map range, clamp, lerp, deadzone
Format String format into labels

Plugins can add more (EMA smooth, rate limit, peak hold, multi-stage thresholds, unit convert, etc) without shipping core changes.


Visuals

Area Examples
Text Text label, text list, wall calendar
Gauges & bars Arc/ring gauge, bar variants, reactor gauge, ring track, LED, etc
Graphs History graph
Effects Glow/pulse, spiral, radar, moon phase, corner brackets, analog clock, etc
Shapes Rectangle, lines, crosshair, star styles, triangle, circle/arc/pie, etc
Media & icons Image/Icon (PNG/SVG + threshold swaps), weather icon, album art, glyph, etc
Advanced Custom Lua — full Cairo in the shared draw path (cr, W, H)
Feature Detail
Colour A colour picker for all visuals
Gradients Linear and radial fills on fill visual nodes
Screen Color picker* Choose any color on your screen
Click actions Visuals can run shell commands on click (explicit regions)
Star styles Regular N-point, pentagram, Star of David, Christmas tree star, etc
Draw order Controlled via Layers (and z on nodes)

Code generation & runtime output

Feature Detail
conky.conf Window and update settings from Canvas/project
render.lua Framework + per-node draw/logic emission
start.sh Standardized launcher: detach, locks, optional background pollers
scripts/ Generated or copied helpers for sources that need them
images/ · fonts/ Assets as required by the graph
theme.json Metadata for Manager / sharing
README.md Human notes; editable from Manager
Independent processes Themes keep running after Studio quits

Build to Folder vs Build & Install to Manager; same generator; install targets the Conky config tree Manager scans.


Theme Manager

Feature Detail
Discover themes Scans Conky config locations
Start/Stop Process control for installed or compatible themes
Drop-in folders Add themes by placing/copying into the managed tree
README editor In-place notes for installed themes
theme.json editor/generate Metadata create and edit
Refresh Rescan after install or external changes

Legacy import (beta)

Feature Detail
Folder import Point at a theme with conf/TEXT/Lua/scripts
Current + older syntax Semantic mapping into nodes where possible
Native sources from ${…} Common vars become source nodes and wires
exec → Custom Script or known families Best-effort
Lua → Custom Lua node(s) Heavy Cairo stays text, not decompiled into gauges
Click regions When detected

Limitations (by design): not a pixel-perfect clone; images/media not fully imported as drawable image nodes; ${if_…} simplified; TEXT layout approximate; ~70–90% structural usefulness typical; finish in Studio, then Build. See Legacy Import.


Plugins

Feature Detail
JSON packs only Metadata + Lua templates; no plugin Python
Logic + visual categories lua_expr / lua_draw_body (+ optional lua_helpers)
Local + remote install ~/.config/conky-studio/plugins/, manifest URL, in-app Plugins dialog
Validation id rules, kinds, placeholder checks; validate_only for authors
Trust model Same as theme scripts inside Conky

See Plugins.


Sharing & collaboration

Feature Detail
Save/load project JSON Full graph round-trip for remixing in Studio
Built theme portability Run without Studio
Groups/labels in project Optional editor metadata in JSON when present
Plugin dependency friction Missing packs break or placeholder nodes — document packs when sharing graphs

See Sharing Projects.


Hardware, session, fonts

Feature Detail
Hardware & Session report Display server, desktop, layer-shell hints, Conky install/version/Wayland, sensors, GPU, net, disks, notes (e.g. GNOME warnings)
Font installer Tools → Install Font for theme typography
Adaptive guidance Warn when environment cannot support chosen overlay style

Onboarding & docs in-app

Feature Detail
Getting Started dialog Long-form in-app guide
Learn Studio tour Spotlight walkthrough of name, palette, canvas, resolution, properties, layers, preview
Support dialog Discord + developer YouTube links
Wiki (this docs set) FAQ, features, sharing, store, plugins, import, troubleshooting

Store & community (product surface)

Feature Detail
Store tab Catalog/install path when configured
Archive install e.g., zip/tar/tar.gz style packages
Browser hand-off OpenDesktop-style flows when needed
Community packaging guidance Built theme primary; JSON optional for remixers

In progress/community-driven (not promised): deeper store UX, animation keyframes, built-in performance profiler; depend on feedback and roadmap.


Compatibility snapshot

Area Stance
X11 Most predictable for desktop HUDs
Wayland Compositor-dependent; GNOME/Mutter weak for overlays
Conky builds Some distro packages are X11-only, Studio detects and warns
Music Needs playerctl ecosystem
Plugins/absolute paths Main pitfalls when sharing JSON instead of built folders

What Studio is not

  • Not a screenshot-only toy or locked theme pack
  • Not a full reverse-compiler of arbitrary Cairo into discrete gauge nodes
  • Not a fix for compositors that refuse desktop overlays
  • Not a replacement for reading Hardware & Session when the environment is the bottleneck

It is a way to design real Conky themes faster, preview them truthfully, and export files Conky already understands.

Clone this wiki locally