Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2.3 KiB
Verso — Next Alpha Roadmap
Ideas and features deferred from the current alpha.
Next alpha (post-current)
Typst editing experience (inspired by Collabst)
-
typst.ts WASM preview — Run the Typst compiler in the browser via WebAssembly (typst.ts). This would give instant, sub-second preview without a server round-trip, and would eliminate the entire class of race conditions in the CLSI watcher (files written → typst compiles → resolver missed). Could coexist with the CLSI watcher for PDF export while using the WASM path for live preview.
-
Tinymist LSP integration — Wire up Tinymist (the Typst language server) behind a WebSocket proxy. Would give Typst files first-class autocomplete, hover docs, go-to-definition, and inline error diagnostics — the main editing comfort gap vs. a native editor.
Editor UX for non-LaTeX formats (.typ, .qmd, .md)
-
Visual/rich-text editing mode — A toggle between raw source and a rendered-in-place view for
.typ,.qmd, and.mdfiles (similar to Overleaf's rich-text mode for LaTeX). Users who don't know Typst or Markdown syntax should be able to edit content without seeing markup. CodeMirror 6 already supports this pattern via a customNodeViewlayer or a separate Prosemirror bridge. -
Toolbar / insertion shortcuts — A formatting toolbar and keyboard shortcuts for common operations, adapted per file type:
- All formats: bold, italic, underline, headings, bullet/numbered lists, inline code, links.
- Quarto / Markdown: insert image, insert table, insert code block with language tag.
- Quarto RevealJS: insert slide divider (
---), insert speaker notes (::: notes), insert columns layout, insert video embed (using Quarto's{{< video >}}shortcode).
AI writing assistant
- In-editor AI assistant — Inline writing help similar to what Overleaf
and CoCalc offer: suggest completions, rephrase selections, explain LaTeX
errors, and generate boilerplate (figures, tables, equations). Should work
across all three formats (
.tex,.typ,.qmd). Backend would proxy requests to a configurable model API (Claude, OpenAI-compatible) so self-hosters can bring their own key.