Saturn9 writing apps are built on small, focused packages that keep editing fast, predictable, and format-aware.
A fast, plugin-based Markdown parser that keeps source offsets attached to every token for editor and analysis workflows.
CommonMark and GitHub Flavored Markdown presets are built from composable block, inline, delimiter, and extension rules.
import {
gfmParser,
parseDocument,
reparse,
} from '@saturn9/markoffset';
let state = parseDocument(gfmParser, initialMarkdown);
state = reparse(gfmParser, state, {
from: 42,
to: 47,
insert: 'updated text',
});
console.log(state.tokens);
A format-agnostic text editor runtime with owned document state, input, rendering, history, plugins, and widget lifecycle.
Scribeframe provides transaction-based editing, virtualized rendering, stable selection, and renderer-owned widgets.
import { ScribeFrame } from "@saturn9/scribeframe";
import "@saturn9/scribeframe/styles.css";
const host = document.querySelector<HTMLElement>(
"#editor",
);
if (!host) throw new Error("Editor host not found");
const editor = new ScribeFrame(host, {
content: "Hello, Scribeframe",
ariaLabel: "Document editor",
onChange: (state) => {
console.log(state.content);
},
});
Flow CLI is the open-source terminal edition of Flow: a keyboard-first Markdown editor built on the same Saturn9 parser foundations.
It is a real terminal app, with its own input handling, grapheme-aware layout, widgets, selection, and incremental ANSI rendering.