Skip to content

Latest commit

 

History

8 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Grammaton UI Shell
Contributors Forks Stars Issues License

Grammaton UI Shell

Desktop UI shell (Cairo Shell peer) on an Erlang-style actor runtime in D — not a terminal or CLI shell.
Explore the docs »

Report Bug · Request Feature

About The Project

Grammaton UI Shell is a non-frustrating Windows/Linux desktop UI shell: window management, compositing, and shell chrome in the same product category as Cairo Shell and similar structured desktops. It is built on an Erlang-style actor runtime in native D—not a REPL, command interpreter, or POSIX login shell.

Eliminate UI stutter and hangs by treating every UI component as an isolated lightweight process (fiber) under a supervision tree.

Docs (Antora): overview · architecture · build · status · branding

(back to top)

Name and lore

Short name: Grammaton — the supervised desktop shell itself.

The name nods to Equilibrium: Grammaton Clerics who enforce calm, precise order, contrasted with the Overseer’s broader gaze. This project applies that idea to the desktop—many small, disciplined actors under supervision instead of one brittle UI thread—then returns to engineering: fibers, mailboxes, and a Cairo Shell–class shell on D.

Logos and themeable marks: BRANDING.adoc.

(back to top)

Built With

  • Language / build

    • D

    • DUB (dmd or ldc2)

  • Runtime

    • Fiber actor runtime (libbeam_d)

(back to top)

Getting Started

Requirements: DMD or LDC2, DUB.

dub test :libbeam_d
dub build

Phase 1 focus is libbeam_d. Graphics and shell UI are stubs until later phases.

Usage

Packages

Package Role

libbeam_d

Core actor runtime: M:N fiber scheduler, lock-free MPSC mailbox, supervision (Phase 1–2)

libglaze_2d

2D graphics abstraction (Blend2D bindings, command batching) — Phase 3 stub

libshell_bridge

OS / Erlang IPC and raw Win32/X11 bindings — Phase 4 stub

actor_shell

Shell executable composing the libraries — Phase 5 stub

Implementation status

  • ✓ Phase 1 — Fiber scheduler + actor mailbox (libbeam_d)

  • ❏ Phase 2 — Supervisor linking / restart strategies

  • ❏ Phase 3 — Blend2D / libglaze_2d

  • ❏ Phase 4 — libshell_bridge IPC + OS bindings

  • ❏ Phase 5 — ActorShell UI composition

Roadmap

Contributing

Contributions are welcome. Open an issue before large changes.

Top contributors

contributors

(back to top)

License

MIT — see LICENSE.

(back to top)

About

Grammaton UI Shell — non-frustrating Windows/Linux desktop UI shell on an Erlang-style actor runtime (D)

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages