Typst Live

by Qiulin Fan
5
4
3
2
1
Score: 50/100

Description

Tinymist-grade Typst editing and live preview for Obsidian, backed by the Tinymist language server

Reviews

No reviews yet.

Stats

0
stars
17
downloads
0
forks
2
days
2
days
2
days
0
total PRs
0
open PRs
0
closed PRs
0
merged PRs
0
total issues
0
open issues
0
closed issues
24
commits

Latest Version

3 days ago

Changelog

Edit Typst in Obsidian with language-server completion, project-aware formula rendering, and Tinymist's incremental preview.

This patch aligns author-owned source and documentation with YOLO's standard MIT license. The published JavaScript and stylesheet include the complete copyright and permission notice.

  • Desktop only; requires Obsidian 1.13.7+ and a separately installed Tinymist executable.
  • Public plugin ID: typst-live. Older personal development copies are not migrated.
  • Optional YOLO completion is off by default and uses your own configured model service.
  • Author-owned code and documentation use MIT; upstream terms remain unchanged.

Install the three plugin files in .obsidian/plugins/typst-live/. SHA256SUMS records their hashes. Community-directory review is separate from this GitHub release.

README file from

Github

Typst Live is an independent Obsidian frontend for the Tinymist language server. Keep .typ files beside your notes, edit them with language intelligence, and use Tinymist's real compiler and incremental preview.

Highlights

Write and read in one editor Keep the whole project in view
Switch between source and live reading mode. Math, headings, emphasis, lists, and references stay readable while the source remains editable. Preview unsaved changes, use your project's template, and move between source and rendered pages in both directions.

Features

Feature What you get
Typst editor A CodeMirror 6 view for .typ, with syntax and language-server semantic highlighting.
Language intelligence Diagnostics, snippet completion, hover documentation, go to definition, rename, and typstyle formatting.
Live reading mode Rendered math and text constructs, with source revealed when you edit them.
Math and paper hovers Project-aware formula rendering and previews of content calls such as figures and theorem boxes.
Incremental preview Tinymist's SVG preview in a side pane, including unsaved changes.
Source navigation Move the editor cursor to scroll the preview; click the preview to return to the corresponding source.
Multi-file books Chapters can use the book main's imports and a project-owned preview template.
Optional YOLO bridge AI ghost text in .typ files using your separately configured YOLO plugin; off by default.

Quick Start

  1. Install and enable Typst Live using the release assets below.
  2. Install Tinymist separately. On macOS with Homebrew: brew install tinymist.
  3. Open a .typ file. If the server is not found, set its absolute executable path in Settings → Typst Live.
  4. Use the editor's preview action or Typst Live: Open preview.
  5. Use the book/code action to switch reading modes. Hover over math, or enable Cursor preview to see the formula around the cursor while typing.

Try a small document:

#set heading(numbering: "1.")

= A small example

A right triangle satisfies $ x^2 + y^2 = z^2 $.

Requires Obsidian 1.13.7+, a filesystem-backed desktop vault, and a local Tinymist executable. Development and integration tests use Tinymist 0.15.2. Mobile is not supported in this release.

Installation

Community directory

Open the Typst Live community listing, choose Add to Obsidian, then enable Typst Live.

GitHub release

Download main.js, manifest.json, and styles.css from Releases. Create <vault>/.obsidian/plugins/typst-live/, copy the three files there, then reload Obsidian and enable Typst Live in Community plugins.

The first public release is 0.1.0.

Only one enabled plugin should own the .typ editor in a vault. Earlier personal development installs used obsidian-tinymist; disable that copy before enabling this release. This plugin does not copy or migrate its settings.

Development

npm ci
npm test
npm run build
scripts/install-dev.sh /absolute/path/to/vault

The development installer uses the ID in manifest.json. It refuses to replace an existing directory that is not a symlink.

Styled chapter previews

If a chapter imports layout functions without applying the complete document layout, place .tinymist-preview.typ in its folder or an ancestor inside the vault. The nearest file receives the selected source through sys.inputs.at("preview-source"), a root-relative Typst path:

#import "template.typ": chapter-layout
#show: chapter-layout
#include sys.inputs.at("preview-source")

Your template owns the styling. Without a wrapper, the selected file is previewed directly. A main.typ that includes a chapter can supply book-wide labels and imports. Reopen the preview after adding or removing a wrapper.

Optional AI completion

Install and configure YOLO, then turn on YOLO tab completion (experimental) in Typst Live. The bridge uses YOLO's model, triggers, and enable toggle; it does not provide an AI service.

  • Tab accepts visible ghost text; Shift-Tab or Escape dismisses it.
  • Enter inserts a newline and never accepts AI text.
  • Ordinary completion lists take priority over AI suggestions.

The bridge was checked against YOLO 1.6.9.7. Other versions may need a new contract check. See setup and format constraints.

Privacy and network use

The plugin has no telemetry, analytics, account requirement, or hosted backend. It does not install or update itself or Tinymist. Tinymist is a separately installed program that the plugin starts for language intelligence and preview.

  • Local preview: Tinymist serves HTTP/WebSocket preview data on 127.0.0.1 at a temporary port. This is communication on your computer, not a remote preview service.
  • Typst packages: Tinymist/Typst may fetch an uncached @preview package when your document imports it. The Typst package registry documents these downloads and the cache. Cached packages can be used offline.
  • Optional AI: enabling the YOLO bridge passes source context to YOLO and its configured local or remote model provider. Provider accounts, charges, and data handling follow that provider and YOLO's configuration. The bridge is off by default; editing and preview do not require it.
  • Files outside the vault: executable discovery checks the configured path, Homebrew/Cargo/WinGet locations, and the login shell's PATH. The external compiler can read system fonts and Typst's package cache outside the vault. Preview project paths are rooted at the vault; the plugin also reads local project templates needed for rendering.

Limits

This release has no mobile support, dedicated find-references UI, outline panel, or built-in PDF/SVG/PNG export commands. Use Tinymist/Typst's own tools for exports. AI completion is optional and depends on the installed YOLO version and your model service. See the roadmap for work in progress.

Feedback and contributions

Report a bug or suggest a feature. Include your operating system, Obsidian/plugin/Tinymist versions, a small reproduction, and expected versus actual behavior. Remove private document content and credentials from anything you share.

Contributions are welcome. Discuss substantial changes in an issue first. Development and release conventions are in AGENTS.md.

Acknowledgments

Built on Tinymist, Typst, and typst.ts, with Obsidian's CodeMirror and Lezer runtime. This is an independent integration, not an official product of Obsidian, Typst, or Tinymist. The README layout follows the presentation style of YOLO.

License

Author-owned source and documentation are MIT, copyright 2026 Qiulin Fan: use, modify, and redistribute them while retaining the copyright and permission notices. Upstream components and any upstream-derived fixture material retain their original licenses. See third-party notices.