- Rust 95%
- Typst 3.3%
- Meson 1.1%
- CSS 0.6%
|
|
||
|---|---|---|
| .forgejo/workflows | ||
| data | ||
| LICENSES | ||
| po | ||
| screenshots | ||
| src | ||
| .gitignore | ||
| .gitlab-ci.yml | ||
| .woodpecker.yml | ||
| Cargo.lock | ||
| Cargo.toml | ||
| COPYING | ||
| LICENSE | ||
| meson.build | ||
| net.trowell.typesetter.json | ||
| README.md | ||
| REUSE.toml | ||
| typesetter.doap | ||
Features
Typesetter is a minimalist editor for creating beautiful documents with the Typst markup language.
- Focus on writing: Streamlined interface. Great for composing papers, reports, slides, books, and any structured writing.
- Powered by Typst: Uses a modern markup-based typesetting language combining the simplicity of Markdown with the power of LaTeX.
- Fully local: Your files stay on your machine. No cloud lock-in.
- Package management: Install, remove, and automatically fetch Typst packages from within the app.
- Templates: Create new documents from built‑in or user templates.
- Automatic preview: See your rendered document update as you write.
- Click-to-jump: Click on a part of the preview to jump to the corresponding position in the source file.
- Magnifier tool: Click and hold on the preview to inspect fine details.
- Accessibility checking: Simulate different forms of color blindness to check how your document looks to all readers.
- Centered scrolling: Keeps your writing visually anchored as you type.
- Syntax highlighting: Makes your documents easier to edit and read.
- Grammar suggestions: Automatically checks your writing for grammatical errors (currently English only).
- Document statistics: Easily calculate page, word, and character counts.
- Fast and native: Built in Rust and GTK.
Philosophy
Typesetter is designed around a few simple principles:
- Documents should remain user-controlled.
- Tooling should work offline.
- Package infrastructure should not require centralized services.
- Writing environments should minimize distraction and support focus.
Screenshots
Installation
Flatpak
The latest official release can be downloaded from Flathub.
GNOME Builder
GNOME Builder offers the easiest method to build and test Typesetter. Clone the repository and press the “Run Project” button to compile.
Advanced Usage
Local packages, templates, and fonts
Typesetter supports local Typst packages and non-system custom fonts by scanning specific directories in the app's data folder. These directories are created automatically on first launch.
- Local packages and templates:
~/.var/app/net.trowell.typesetter/data/packages - Custom fonts:
~/.var/app/net.trowell.typesetter/data/fonts
Local packages and templates should follow the standard Typst package structure ({namespace}/{package-name}/{version}/), and can then be imported as per usual:
#import "@namespace/package-name:version": *
Templates placed within this directory will appear in the Templates popover in the header bar.
Non-system custom fonts can be placed directly in the fonts directory, or within sub-directories, and will be available to all your documents automatically.
Contributing
Pull requests, issue reports, and feature suggestions are encouraged. Check out the issues page if you would like to get involved.
Translating
Translations are managed via Weblate. If you would like to translate Typesetter into your language, you can contribute directly through the Weblate interface. No coding required.
Code of Conduct
The GNOME Code of Conduct applies when interacting with this project.

