Releases: stevenmunn312-tech/Design-Studio-for-FastLED
Release list
Design Studio for FastLED 0.7.0
Highlights
- Add HUB75 as a first-class MatrixOutput hardware family for ESP32, ESP32-S2, and ESP32-S3, including single panels, chained rows, folded and serpentine grids, rotations, and all firmware generators.
- Add a dedicated HUB75 Topology mode to Flash Wiring Test, with unmistakable per-panel coordinate and orientation markers for validating 2D panel layouts.
- Improve preview/firmware palette parity, palette-aware RAM estimates, and the RAM calibration harness.
- Add ten curated featured patterns, fix silent first frames in live-audio recording, update fbuild to 2.5.15, and move CI actions to the Node 24 runtime.
HUB75 hardware status
Single-panel 64×64 HUB75 upload and wiring diagnostics have recorded hardware validation. Multi-panel chains, folded/rotated layouts, streaming, show playback, and music-sync remain experimental pending broader hardware validation.
Desktop archives are available for Windows x64, Linux x64, macOS Apple Silicon, and macOS Intel. Verify downloads with SHA256SUMS.txt.
Full changelog: v0.6.1...v0.7.0
Design Studio for FastLED 0.6.1
Design Studio for FastLED 0.6.0
Design Studio for FastLED 0.5.1
Design Studio for FastLED 0.5.0
What's Changed
- Fix GIF encoding freeze by @stevenmunn312-tech in #147
- fix WebM recording freeze by @stevenmunn312-tech in #148
- fix PNG export freeze by @stevenmunn312-tech in #149
- forward the trust flag into nested subgraphs by @stevenmunn312-tech in #150
- gate pattern rating behind a per-pattern trust prompt by @stevenmunn312-tech in #151
- revamp pattern rating system by @stevenmunn312-tech in #152
- fix Pattern Insights result freeze by @stevenmunn312-tech in #153
- Share Studio projects directly to the community by @stevenmunn312-tech in #154
Full Changelog: v0.4.0...v0.5.0
Design Studio for FastLED v0.4.0
Design Studio for FastLED v0.4.0
This beta release is a substantial authoring, performance, hardware-workflow, and reliability update over v0.3.0.
Highlights
- Performance Deck: pin graph properties as large knobs, faders, toggles, or selectors; save and recall parameter scenes; morph between scenes; and learn MIDI or keyboard bindings.
- Project and pattern workflows: named autosaved projects, recovery snapshots, safer disk sync, improved Pattern Collections, and offline Pattern Ratings for saved and bundled patterns.
- Hardware authoring: multiple independent Matrix Output routes, board-aware GPIO guidance, a streamlined setup wizard, Graph Health diagnostics, flash/RAM capacity checks, and opt-in beta hardware reports.
- New creative tools: 3D Wireframe with custom-mesh decimation, Palette from Image, preview recording to PNG/GIF/WebM, expanded Ease and node controls, resizable panels, and refreshed starters/help.
- Clock and live-control inputs: RTC Clock, Clock Display, Schedule Trigger, NTP, DS3231, and DMX/Art-Net authoring and firmware paths.
- Reliability: sustained-streaming fixes, music-sync SD provisioning/player corrections, safer project persistence, undo/history fixes, codegen corrections, and numerous interaction/performance fixes.
- Security: Wi-Fi credentials no longer travel in projects or share links, and both the production and full npm audits report zero known advisories.
Support scope
The public-beta support promise remains deliberately narrow. Only the exact environments recorded in the beta support matrix are supported end to end.
RTC/NTP, DS3231, DMX/Art-Net, PSRAM, tiled/custom layouts, and music-sync SD provisioning remain experimental until their outstanding hardware-validation runs are recorded.
Desktop archives
The attached Windows x64, Linux x64, macOS ARM64, and macOS Intel portable archives were built and launch-smoked on clean GitHub-hosted runners. SHA256SUMS.txt contains their checksums.
These archives are unsigned experimental beta artifacts. They have not completed Authenticode signing, macOS signing/notarization, or clean end-user-account hardware-upload validation and must not yet be described as supported desktop packages.
Verification
- Main CI and backend tests
- Cross-platform dependency compatibility
- Tagged four-platform desktop packaging
- Curated changelog
Full comparison: v0.3.0...v0.4.0
Design Studio for FastLED v0.3.0
What's Changed
- Add CLAUDE.md and organise spec docs into .docs/ by @stevenmunn312-tech in #1
- Add test suite, PWA support, 9 new nodes, and cppGenerator fixes by @stevenmunn312-tech in #2
- Restore lint gate and guard preview evaluator against graph cycles by @stevenmunn312-tech in #3
- Refresh CLAUDE.md to match current codebase by @stevenmunn312-tech in #4
- Pattern node-group ADR, shape nodes, and category-model cleanup by @stevenmunn312-tech in #5
- Mark test suite and PWA support complete in todo.md by @stevenmunn312-tech in #6
- Drive pattern palettes through palette ports by @stevenmunn312-tech in #7
- Phase 1: evaluate Group nodes (encapsulation engine core) by @stevenmunn312-tech in #8
- Phase 1: multi-graph store, node grouping, and workspace UI by @stevenmunn312-tech in #9
- Phase 2: C++ codegen for grouped graphs by @stevenmunn312-tech in #10
- Phase 3: Sequencer node (timed crossfade compositing) by @stevenmunn312-tech in #11
- Phase 3: per-layer buffer codegen for real compositing by @stevenmunn312-tech in #12
- Phase 3: Sequencer codegen (millis-driven crossfade) by @stevenmunn312-tech in #13
- Phase 3: exposed group parameters (Group Input nodes) by @stevenmunn312-tech in #14
- Serpentine matrix layout via XY() mapping by @stevenmunn312-tech in #15
- Custom palettes from connected colors by @stevenmunn312-tech in #16
- True PaletteBlend interpolation by @stevenmunn312-tech in #17
- Phase 4: Mask node (luminance masking + feathering) by @stevenmunn312-tech in #18
- Phase 4: Text node (built-in bitmap font) + CLAUDE.md refresh by @stevenmunn312-tech in #19
- Phase 4: Circle and Line shape nodes by @stevenmunn312-tech in #20
- Phase 4: custom font upload for the Text node by @stevenmunn312-tech in #21
- Add Worley (cellular) noise node by @stevenmunn312-tech in #22
- Add reaction-diffusion (Gray-Scott) node by @stevenmunn312-tech in #23
- Add Conway's Game of Life node by @stevenmunn312-tech in #24
- Unplug a noodle from a node input by @stevenmunn312-tech in #25
- Shift-click to multi-select nodes by @stevenmunn312-tech in #26
- Tooltips for the node shelf by @stevenmunn312-tech in #27
- Inline property editors on nodes (Blender-style) by @stevenmunn312-tech in #28
- Fix: preview only renders graphs that reach an output by @stevenmunn312-tech in #29
- Add StudioNode render tests (@testing-library/react) by @stevenmunn312-tech in #30
- Refresh todo.md by @stevenmunn312-tech in #31
- 3D rotate mode for the LED preview by @stevenmunn312-tech in #32
- Local arduino-cli build/flash flow in the Upload panel by @stevenmunn312-tech in #33
- Fix: qualify ::memmove/::memcpy (FastLED 3.10 ambiguity) by @stevenmunn312-tech in #34
- Colour ports by data type (viable-link cue) by @stevenmunn312-tech in #35
- Add Color Temperature node (Kelvin → white point) by @stevenmunn312-tech in #36
- Add Fractal (fBm) Noise node by @stevenmunn312-tech in #37
- Add Blobs (metaballs) and Flow Field nodes by @stevenmunn312-tech in #38
- feat(nodes): add Starfield, Plasma Fractal and Audio Flow generators by @stevenmunn312-tech in #39
- fix(canvas): unplug a noodle by dragging from the input port by @stevenmunn312-tech in #40
- fix(ui): auto-clear error status messages after 5 seconds by @stevenmunn312-tech in #41
- feat(canvas): drag a noodle to empty space to add a compatible node by @stevenmunn312-tech in #42
- feat(nodes): use dropdowns and sliders for inline node properties by @stevenmunn312-tech in #43
- fix(canvas): keep the drag-to-create picker open after dropping a noodle by @stevenmunn312-tech in #44
- feat(nodes): add Gabor Noise, Palette Gradient and Image generators by @stevenmunn312-tech in #45
- feat(nodes): add a Wave oscillator math node by @stevenmunn312-tech in #46
- feat(nodes): add ComplexWave node and waveform preview scopes by @stevenmunn312-tech in #47
- feat(canvas): ComplexWave scope shows live upstream inputs by @stevenmunn312-tech in #48
- feat(nodes): add an animated Transform composite node by @stevenmunn312-tech in #49
- feat(nodes): add a Poline palette node by @stevenmunn312-tech in #50
- feat(canvas): live per-node previews (frame / palette / colour) by @stevenmunn312-tech in #51
- feat(canvas): size frame previews to node width at matrix aspect ratio by @stevenmunn312-tech in #52
- fix(preview): drive animation from wall-clock time, not frame count by @stevenmunn312-tech in #53
- fix(nodes): make NoiseField actually use its palette by @stevenmunn312-tech in #54
- test(eval): guard that every palette pattern responds to its palette by @stevenmunn312-tech in #55
- feat(nodes): bundle redundant nodes into variant-selectable nodes by @stevenmunn312-tech in #56
- Add music-sync LED show pipeline by @stevenmunn312-tech in #58
- feat(transitions): fold 13 effects into the bundled Transition node by @stevenmunn312-tech in #59
- feat(nodes): add Input category; Music Library becomes a canvas node by @stevenmunn312-tech in #61
- fix(nodes): give the MusicLibrary node a real body by @stevenmunn312-tech in #62
- feat(audio): Essentia.js analyzer behind the SongAnalysis interface by @stevenmunn312-tech in #60
- feat(nodes): embed the full Music Library UI in the node by @stevenmunn312-tech in #63
- feat: clamp-friendly node properties, smarter grouping, drop-to-splice by @stevenmunn312-tech in #64
- feat: SD-card upload pipeline groundwork + local arduino-cli helper by @stevenmunn312-tech in #65
- feat: one-click upload + music-sync SD-card flow (slices 2–3) by @stevenmunn312-tech in #66
- chore...