Products
What the Praxis repository holds besides the language: an application, a web framework, the toolchain, libraries and a book toolchain. Each keeps its own version and its own tag. As of v0.63.0, 19 October 2026.
Lictor
Moderation for live broadcasters, at 0.2.0: live chat, moderation actions, user history and team coordination in one place, written in Praxis on WebGlue and built in the order a user meets it. It drives the roadmap’s Phase 6, and it has a section of its own.
WebGlue
The web framework Lictor is built on, at 0.8.0, a set of packages from the router and the session to sockets and pub/sub. What a Lictor journey needs from it is built in WebGlue during that journey. It has a section of its own.
The toolchain
Praxis — the compiler, the runtime and the standard library — shares one version, v0.63.0. The tools around it are products of their own:
| Product | Version | What it is |
|---|---|---|
prx | 0.43.0 | The project tool: the project model, the build, dependencies and plugins |
prepl | 0.22.0 | The prompt: a project loaded, and a place to stand in it |
prx_mcp | 0.47.0 | The MCP server, with the idiom corpus |
prx_release | 0.20.0 | prx release: an OTP release, assembled and packaged |
touchstone_prx | 0.19.0 | prx test: a project’s tests, found and run |
| other plugins | lint, check, doc, docset, bundle, observer, fortune, license, shell completion, the language server and the debug adapter | |
| editors | A tree-sitter grammar and a VS Code extension over prx __lsp |
Libraries
Libraries written in Praxis, each meant to be useful outside it. A port replaces the Elixir original inside this repository and carries its version line on; the original stays where it is.
| Library | What it is |
|---|---|
ichor, ichor_runtime | Ports of Ichor and Ichor Runtime: parsers generated from an Aether grammar |
cooper, cooper_prx | A port of Cooper: CASC read, validated and handed to a Praxis program |
dextrin | A port of Dextrin: DXN read and written, text and binary |
logger_logfmt | A port of logger_logfmt, at 2.0.0 like the original |
shibboleth | 0.1.0 — a password, kept as something that can check it and cannot give it back |
posthorn | 0.1.0 — mail as data, delivered through a backend, and a development mailbox that sends nothing |
assize | 0.1.0 — conformance suites: every implementation of a specification tried on the same cases, every disagreement named |
koine, *_conformance | The suite Praxis and Logos are both run against, and the suites that hold every implementation of CASC, DXN and Ichor to the same cases |
touchstone | The test framework: deftest, the assertions and the generators |
proviso, edict | A command line, and nested commands with their help, parsed against what a program says it takes |
stet | A formatter over a token stream — what prx fmt runs |
gloss, codex | A documentation site, and a Dash docset, out of what the compiler wrote |
rubric, quire, stencil | Markup as plain data, markup text read into it, and templates compiled into functions |
plexus, caliper, sonde | A directed graph and its renderings; benchmarks; telemetry |
Octavo
The book toolchain, in Praxis, so that a book is published with nothing installed but the BEAM: fount reads and measures a typeface, galley composes text into lines and pages, platen writes a PDF, and octavo reads AsciiDoc and writes a book. fount and platen are written and released at 0.1.0; galley and octavo are planned, and finishing them is a phase of its own, before any book is continued.
Versions and tags
- Praxis is tagged
vX.Y.Z; every other product carries its name in front, as inlictor-v0.2.0orprx-v0.43.0. - Every milestone is a release of every product it changed: v0.63.0 came with, among others, Lictor 0.2.0, WebGlue 0.8.0,
prx0.43.0,shibboleth0.1.0 andposthorn0.1.0. - A tag says a product was released inside the repository. Nothing is published to a registry yet; that is phase 8, and the split into repositories of their own is phase 12.
- Everything is Apache-2.0.