Changelog
Notable changes in each version. Releases are tagged on GitHub, where each version’s notes come from this page. What’s planned is on the Roadmap.
0.1.0 (2026-11-09)
The first release.
Editor
- One grid for free-space optics, component boxes, waveguides and electrical signals, with Blender-style controls (G, R, Shift+D, Shift+A, box select, undo and redo).
- A library in collapsible folders with search, a Parts & components browser, and an add menu with a submenu per category.
- Reusable components: any layout becomes a box with light ports and signal pins; Tab opens its definition; edits update every use. In its own tab, a component’s input pins can be clicked to try it alone.
- Wiring by dragging between ports. Connecting light to a signal (or the reverse) warns and offers to insert the converter: a detector or a laser.
- Preferences, saved between sessions: theme, grid, port names, light colours, channel strands, beam arrows, readings, default laser wavelength, live simulation, clock speed.
- Light colours: real colours for visible wavelengths, distinct false colours for infrared and ultraviolet, or a colour per laser; one strand per wavelength on shared waveguides.
Simulation
- An exact frequency-domain solver: each circuit compiles per wavelength into SIMD multiply-adds, with an LU factorisation for each feedback loop.
- Laser sources: independent lasers add power; lasers on a shared source (A–H) interfere. All sources at a wavelength are solved together in one vectorised pass.
- Electronics: threshold detectors, driven lasers, phase shifters and attenuators, number inputs, displays, clocked registers, and function cells with an expression language. Optics and electronics settle together; oscillating loops are reported.
- Free-space parts, waveguide blocks (couplers, MZIs, rings, add–drop rings, splitter and switch trees, the optical DFT) and nested components in one circuit.
Examples
- A 4-channel WDM optical link, an 8-bit adder and an accumulator (as an electro-optic teaching model), free-space interferometers and cavities, and chip circuits with spectra: ring filters, interleaver, WDM demultiplexer, switch tree, Fourier transform, matrix multiplier.
Files, platforms and integrations
- Projects in a compact binary
.shineformat (format 3); older files are upgraded on open. - Desktop apps for Linux (x86-64, ARM64), Windows and macOS (Apple silicon, Intel), and the same editor in the browser.
shine-mcp, a Model Context Protocol server for AI assistants.- The
shine::photonicsRust library. - Documentation with screenshots, search, and plain-text versions for language models.