Projects
A selection of documentation and tooling projects I've led or contributed to.
Antora Editor Tooling: antora-ls, antora-zed & antora-intellij
Personal project
Built a language server for Antora and two editor integrations on top of it. antora-ls started as a Rust port of the Antora support in the AsciiDoc plugin for IntelliJ and grew within two days into find references, renames that keep each reference's style, nav-file checks and a live site preview. The preview runs the project's own Antora as an in-memory dev server and updates as you type; rendering pages on demand cut its start for an 11,000-page site from about 80 seconds to about 3. antora-zed connects the language server to the Zed editor as a WebAssembly extension of about a hundred lines, and antora-intellij reuses the preview server in a JetBrains plugin with an embedded browser and double-click-to-source navigation.
Tech: Rust, Language Server Protocol, WebAssembly, Kotlin, IntelliJ Platform, JavaScript, Bun/Node.js, Antora, AsciiDoc
Blog posts: antora-ls, antora-zed, antora-intellij
Antora Frontend Customizations
iTAC Software
Customized the Antora frontend so the published documentation site matched the company's needs. The main requirement was grouping pages in the navigation, which called for custom Antora UI extensions. The same work also added a collapsible navigation and a light and dark mode.
Tech: Antora, Antora UI extensions
Personal proof of concept: antora.moritosh.net
Antora Docs Chatbot
Personal project
Built a proof-of-concept chat assistant embedded directly in an Antora documentation site. Readers ask questions in a chat panel and get streamed answers grounded in the documentation, with numbered citations that link back to the source pages. The bot is small and quick, and its source content is refreshed automatically whenever a new documentation version is published. The widget is part of the Antora UI and adapts to a full-screen layout on small screens.
Tech: Antora, AsciiDoc, JavaScript
Proof of concept: antora.moritosh.net
Antora PDF Exports
iTAC Software
Set up PDF exports so the same AsciiDoc source could be delivered as print-ready manuals alongside the online documentation. PDFs may be a thing of the past, but some people still seem to like them. Shout-out to the great Antora Assembler project, which lets PDFs come straight out of an Antora site and makes all of this possible. On top of it, custom Asciidoctor PDF extensions, written in Ruby, generate front and back matter, customize headers and footers with custom content, and name the exported files automatically. Additional supporting tools were written in Rust.
Tech: Antora Assembler, Asciidoctor PDF, AsciiDoc, Ruby, Rust
AI-Ready Documentation for a RAG Chatbot
iTAC Software
Restructured existing documentation so it could serve as a reliable knowledge base for a retrieval-augmented generation chatbot used by both end users and developers. The work was largely editorial: splitting long topics into self-contained sections, removing implicit cross-references, and front-loading answers so individual chunks made sense in isolation — the structural changes that mattered most for retrieval quality.
Tech: AsciiDoc, Antora, RAG/AI writing assistants
Docs-as-Code Migration
iTAC Software
Led the transition of the R&D documentation set from a proprietary XML editorial system to an open-source Docs-as-Code workflow built on AsciiDoc and Antora. Wrote the Python and Bash tooling used to convert legacy content and to automate parts of the publishing pipeline. The move to plain-text, version-controlled source content is what later made it possible to expose the documentation to an AI RAG chatbot and AI writing assistants.
Tech: AsciiDoc, Antora, Python, Bash, Git
Documentation Standards & Style Governance
iTAC Software
Defined and rolled out documentation standards, a style guide, and information-retrieval processes covering online help, user manuals, interface and service descriptions, and technical specifications, alongside building and leading the team responsible for maintaining them.
Tech: Style guides, Docs-as-Code, team leadership
Multilingual Documentation Programs
Leica Geosystems & Freelance
Managed the creation, translation, and publication of technical documentation for surveying, civil engineering, agriculture, and mining equipment, with translations into 28 languages including Chinese, Japanese, Korean, and Russian. As a freelancer, ran translation projects into roughly 20 additional target languages for a range of clients, including terminology management to keep multilingual content consistent at scale.
Tech: Translation management, terminology/glossary management
Digital Database Production Pipeline
De Gruyter
Created and maintained over 30 digital database projects derived from journal articles and textbooks across humanities and natural sciences. Built Bash and XSLT-based data conversion tooling to speed up release cycles, and introduced a project management tool to track individual projects and improve internal communication during a major platform redesign.
Tech: Bash, XSLT, project management tooling