Extensions for Serial Studio. Themes and plugins that extend the application without modifying its core.
| Extension | Style | Description |
|---|---|---|
| Solarized Dark | Dark | Ethan Schoonover's iconic palette with calibrated contrast |
| Solarized Light | Light | Warm cream variant of Solarized for bright environments |
| Aether Dark | Dark | GitHub-inspired deep space dark with cool blue accents |
| Aether Light | Light | Clean GitHub light mode with bold blue accents |
| Classic | Dark | The original Serial Studio look with teal and mint green |
| Gunmetal | Dark | Industrial charcoal with warm gold accents |
| Iron | Light | Polished white surface with gold highlights |
| Midday | Light | Slate-blue toolbars with amber accents |
| Midnight | Dark | Ultra-dark with muted indigo for late-night sessions |
| Rust | Dark | Warm earthy browns with gold accents |
| Extension | Category | Description |
|---|---|---|
| Live Data Table | Visualization | Sortable table with sparklines, search, freeze/resume |
| Data Statistics Logger | Analysis | Running stats (min/max/mean/stdev) with HTML export |
| Threshold Alerts | Monitoring | Per-field alert thresholds with event log |
| Protocol Analyzer | Debugging | Frame capture with hex dumps and timing analysis |
| Digital Indicator | Visualization | Seven-segment displays with hold, tare, peak tracking |
| Custom Gauge | Visualization | Multi-needle analog gauges with auto-ranging |
- Open Serial Studio and click Extensions in the toolbar
- Browse the catalog. Extensions are grouped by type
- Click a card to see details, then click Install
Installed extensions auto-update when a newer version is detected in the repository.
All plugins in this repository share a common set of capabilities:
- Auto-reconnect to the Serial Studio API server
- State persistence: plugin windows and settings are saved to the project file
- Auto-launch: plugins that were running are relaunched on next startup
- Start Menu integration: launch plugins from the dashboard Start Menu
- Cross-platform: separate entry points for macOS, Linux, and Windows
- Clone this repository
- In Serial Studio, open Extensions > Repos > Browse and select the cloned folder
- Extensions appear immediately, so you can install and test right away
- Make changes, reload, and iterate
See the doc/ folder for detailed guides:
- Getting Started: extension types, info.json structure, local testing
- Creating Themes: color palettes, code editor XML, design tips
- Creating Plugins: API connection, frame data, tkinter patterns
- Plugin State Persistence: save/restore plugin state in project files
- Platform Support: platform keys, shell wrappers, native binaries
manifest.json Extension index (references all info.json paths)
theme/<id>/ Color themes (palette JSON + code editor XML)
plugin/<id>/ External plugins (Python + shell wrappers)
scripts/update-digests.py Regenerates the SHA-256 table in every info.json
doc/ Development guides
- Extension IDs use
lowercase-hyphenatedformat - Each extension is self-contained in its own directory
info.jsoncarries all metadata;manifest.jsononly references paths- File paths in
info.jsonare relative to theinfo.jsonlocation - Every listed file carries a SHA-256 in the
sha256table of itsinfo.json
Serial Studio verifies each file it installs against the digest the entry publishes, so a stale
sha256 table means a refused install, not a cosmetic problem. After changing any listed file:
python3 scripts/update-digests.py # rewrite every info.json
python3 scripts/update-digests.py --check # what CI runs on each pull requestfiles stays a plain list of paths and the digests live beside it in sha256, keyed by the same
path. Serial Studio 4.1.0 and earlier read files and ignore the rest, so one repository serves
every version: older releases install as they always did, newer ones verify. info.json itself is
listed but carries no digest -- it would have to contain a digest of its own bytes -- so Serial
Studio installs the catalog document it already parsed. See
Getting Started.
This repository is licensed under the MIT License. Copyright (c) 2025 Alex Spataru.