Announcing Orrery v0.1.0
First release of the Orrery diagram language — a text-based DSL for creating component and sequence diagrams, rendered to SVG.
Orrery v0.1.0 is out. It's a domain-specific language for creating software architecture diagrams from plain text.
What is Orrery?
Orrery is a text-based diagram language. You write .orr files describing your system architecture, and the CLI renders them to SVG. No GUI, no drag-and-drop — just text that lives in your repository alongside your code.
diagram component;
type Service = Rectangle [fill_color="#e6f3ff", rounded=5];
type Database = Rectangle [fill_color="#e0f0e0", rounded=10];
api as "API Gateway": Service;
auth as "Auth Service": Service;
db as "Users DB": Database;
api -> auth: "Verify";
auth -> db: "Query";
db -> auth: "Result";
auth -> api: "Token";
The name comes from orreries — mechanical models of the solar system that make invisible orbital relationships visible and tangible. Orrery the language does the same for software architecture.
What's in v0.1.0
This initial release includes:
- Orrery DSL — a text-based language for describing diagrams
- Component diagrams — nodes, relations, and nesting for system structure
- Sequence diagrams — participants, messages, activation blocks, fragments, and notes for interaction flows
- Type system — user-defined types with attribute inheritance and 8 built-in shape types (Rectangle, Oval, Actor, Boundary, Control, Entity, Interface, Component)
- Layout engines — basic layout for both diagram types, plus Sugiyama hierarchical layout for component diagrams
- SVG rendering — configurable styling with stroke, text, and color attributes
- Full parsing pipeline — tokenizer, parser, desugaring, validation, and elaboration with structured error diagnostics (error codes, labeled spans, help text)
- CLI —
orrerycommand-line tool for rendering.orrfiles - Configuration — layered TOML config via CLI flags, project-local files, and platform-specific directories
Install
cargo install orrery-cli
Then render a diagram:
orrery diagram.orr -o output.svg
Links
What's next
The roadmap includes imports, class diagrams, an LSP, editor integrations, and more. Feedback and contributions are welcome.
Licensed under MIT or Apache-2.0, at your option.