💁🏻♂️ Introduction¶
🤷🏻♂️ Rationale¶
Most of our business processes at confirm IT are fully automated — but document production still relied on native desktop applications with templates that were hard to control and impossible to version.
We wanted «document authoring as code», meaning:
Web-based and self-hosted
Version-controlled with full history
Authentication and authorisation via OpenID Connect
API for automation and integration
Real-time collaboration
Reusable templates and corporate design as packages
No existing tool ticked all the boxes. The first question was which document format to build on. Markdown and reStructuredText lack the typographic control needed for polished deliverables. LaTeX offers that control, but the learning curve makes it impractical for non-technical contributors.
Typst struck the right balance — expressive enough for professional output, approachable enough for the whole team. Typst’s own editor comes close to a complete solution and even offers a self-hosted variant — but while the compiler is open source, the web editor is a closed-source commercial product. We needed something we could fully control: open source, deeply integrated with our identity provider and git workflows, and extensible to our use cases.
So we built TINO: a collaborative, self-hosted editing platform around Typst.
🙅🏻♂️ TINO Is Not Office¶
TINO — pronounced TEE-noh (/ˈtiːnoʊ/) — is short for TINO Is Not Office.
Yes, the first word is TINO again. Expand it all the way and you get «TINO Is Not Office Is Not Office Is Not Office…», a sentence with no natural end — much like the formatting meetings it was built to replace. We’re in proud company: GNU’s Not Unix, WINE Is Not an Emulator, and TINO, with total conviction, Is Not Office – and that’s a feature!
It is, we’ll admit, a bit of an oxymoron. We built a tool whose entire job is producing letters, contracts and immaculate PDFs — the most office-coded work imaginable — and then named it Not Office. No ribbon. No “read-only, locked for editing by another user.” No layout that quietly rearranges itself the moment a colleague opens it on a different laptop. Just versioned, collaborative text that compiles into something you’d actually be happy to send.
So TINO is for the office and, by name, Not Office. Both true.
🎯 Purpose¶
TINO is a self-hosted web editor for Typst documents, built for teams that want to author, review, and publish together.
- Replace desktop word processorsMove document production to the browser, with version control and collaboration built in.
- Keep documents on your infrastructurePrivacy-aware. Self-hosted by design. Nothing leaves your network.
- Empower the whole teamTypst – powerful typesetting for professional output, approachable for everyone.
✨ Features¶
The TINO editor ships with the following features out of the box:
- Inline SVG previewLive-rendered preview next to the editor, updated on every change.
- PDF exportCompile and download production-ready PDFs directly from the editor.
- Real-time collaborationConcurrent editing via CRDT over WebSockets. Changes merge automatically, no conflicts.
- Group-based access controlAssign viewer, editor, or committer roles per bucket, backed by OpenID Connect group claims.
- Git versioningEvery bucket is a Git repository with built-in history, commits, and restore.
- Drag & drop uploadsDrop files or ZIP archives into a bucket to import them. Archives are extracted automatically.
- Local packagesReusable templates and shared components as Typst packages.
- Custom fontsMount your own font library for consistent corporate typography.
- Minimal operationsNo database, no object storage. Just a filesystem and your identity provider.