Litria
Download
ideathe thesiscapabilities16 capabilitiesreleasesv1.0.1downloadwin · mac · linuxinstallunsigned builds
100%

Drag to pan · click a node to open it · click a pill to expand the group

Your code, on a canvas.

A visual desktop IDE for people who think in systems — files are pieces, folders are groups, imports are wires drawn from the code itself.

1.0.1 Public beta MIT Windows · macOS · Linux

The idea

Code is not just text. It is structure, behavior, and relationships. Litria exists to make that reality usable.

Most IDEs are file-and-tab tools with optional diagrams. Litria starts from relationships and composition first, then connects directly to source code. It is not a no-code tool or a diagram maker — the code inside each piece is genuine, exportable, editable code.

It is built for people who want to think in systems: relationships, flows, dependencies, and intent. The goal is not to replace code text, but to make code meaning visible.

Three things that are true

The canvas is not a picture of your project. It is your project.

Structural mirror

Every folder is a group. Every group is a folder.

Empty folders included. Creating a group creates a real directory on disk; deleting one deletes it, with confirmation. Nesting derives from folder containment, so dragging a group carries its whole subtree.

Import discovery

Wires are read from your imports.

On open, existing imports become wires automatically. Draw a wire between two files and Litria writes the real import statement. Imports stay authoritative — the picture cannot drift from the code.

Persistence

Your layout survives the session.

Positions, viewport, groups, connections, tabs, and split panes persist per project in SQLite. Reopen a project and it is where you left it, down to the scroll position of a pane.

Latest release

1.0.1 is a maintenance release, and the reason for it is worth saying out loud.

Two parser bugs that were damaging real files

Both were found the same afternoon, by opening Litria on the Litria source and dragging a folder onto the canvas. That is the whole argument for dogfooding, and it is why the repo now ships a litria.toml of its own.

  • Import writes no longer corrupt multi-line imports. The writer scanned line by line, so it read the opening line of a multi-line import as a whole statement — the duplicate check never matched and the insert landed inside the statement. One folder drag on a real codebase corrupted ten files. Import scanning is now statement-aware.
  • Exports after a regex are visible again. The symbol parser skipped braces inside strings and comments but not inside regex literals, so a pattern like /^exports+{/ opened a block that never closed and every later top-level export went invisible — missing wires, broken edges, empty symbol pickers, no error.
  • Five security-audit findings closed: an absolute-path package-manager shim, budgeted crash records, LSP sessions validated against a canonical project root, no current-directory executable search inherited by LSP children. cargo audit 2 → 0, npm audit 0.
  • Litria has its own icon. Every build through 1.0.0 shipped Tauri's placeholder. The desktop, taskbar, installer, and menu-bar marks are now Litria's.
  • Known, unfixed: the macOS Dock icon renders as a black square — the artwork is opaque and macOS does not round icons itself.

shipped new in 1.0.1 known caveat planned

What 1.0.0 established, and 1.0.1 keeps

Two long arcs landed together in the first public build. They are what the canvas is, so they are worth stating even when the newest release did not touch them.

  • Wires route orthogonally around obstacles instead of passing under nodes — one canvas-wide pass, so wires can be spaced against each other.
  • Where several wires share a corridor they separate into lanes; terminals distribute along a face so converging wires never stack on a point.
  • Wires re-anchor to a collapsed group's pill instead of vanishing, and quiet wires hop over loud ones at crossings.
  • Empty folders exist on the canvas. No ghost groups that live only in the app's head.
  • Group creation is name-first: a preview box appears, you name it, and parentage is decided by where the box sits.
  • Collapsing a group hides its whole subtree; dragging one carries every descendant, and status LEDs aggregate from every descendant including the collapsed ones.

Read the full release notes →

Themes, live

These are the real presets. Switch one and this page changes with it.

Four built-in themes across two materials, with a Live/Calm energy axis. The switcher in the top bar drives this whole site from Litria's own token values — colour is orthogonal to material, and energy is a render-time lens.

Glass glass · the default
Obsidian glass · smoked
Parchment matte · warm light
Terminal matte · flat green
Notice

Parchment and Terminal drop the blur, the glint, and the glow — that is the matte material dispatch, not a different stylesheet. Terminal also promotes the monospace face to body text. Calm softens rims, dims LEDs, and removes every glow, and it turns on automatically if your system asks for reduced motion.

Built like this

Guards are the enforcement of record.

Litria is one developer's project in public beta. Rather than ask you to take that on trust, here is what is checkable in the repo.

MetricCurrentWhere
Domain modules 15 registry: docs/Orchestration.md §2
Architecture guards 6 imports, app shell, protected zones, domain contract, settings keys, editor engine
JS tests 1049 across 85 suites (test/domains/)
Rust tests 257
ADRs 25
Tauri commands ~81 registered (registry of record: src-tauri/src/lib.rs)
Workspace DB schema v3 2 migrations
Theme tokens 47 v3
Bundled runtimes Node 24.14.0, pyright 1.1.411, ts-ls 5.3.0, ts 5.9.3

Six build guards enforce import boundaries, the app shell, protected UI zones, domain contracts, settings-key discipline, and the seal around the editor engine. When a document and a guard disagree, the guard wins and the document gets fixed — including this table, which is read out of that document rather than retyped here.

Download

Litria 1.0.1 — public beta

  • Windows x64 — the build that gets used daily.
  • macOS (Apple Silicon & Intel) — compiles and passes the full suite in CI, but no human has launched it yet.
  • Linux x86_64 — AppImage, deb, rpm. Same caveat as macOS.

shipped new in 1.0.1 known caveat planned

Before you click

Every artifact is unsigned, so your OS will object the first time. That is expected, it is explained in one page, and there is nothing to work around beyond one dialog.