Skip to content
Docs
Sign in

Colophon

Docs is made with a lot of other people’s open-source work. This is all of it: every typeface, library, icon set and tool, what each one is, what Docs uses it for, who made it and the license it is under.

The list is made from what Docs is actually built from, so nothing is missing from it and nothing in it is out of date.

Typefaces

  • Caladea

    A serif by Andrés Torresi and Carolina Giovagnoli of Huerta Tipográfica. It is drawn to the same measurements as Microsoft's Cambria, so text set in one takes the same space in the other. A font in the font menu that lays text out as Cambria would.

    By
    The Caladea Project Authors

    Home page Source

  • Carlito

    A sans serif by Łukasz Dziedzic, based on his Lato. It is drawn to the same measurements as Microsoft's Calibri, letter for letter, so text set in one takes the same space in the other. Docs' default font, so a document breaks its lines and pages where Word would in Calibri.

    By
    The Carlito Project Authors

    Home page Source

  • Caveat

    A handwriting face by Pablo Impallari, drawn from quick, casual notes. One of the fonts in the font menu, served to the browser and embedded in PDFs.

    By
    The Caveat Project Authors

    Home page Source

  • EB Garamond

    Georg Duffner's revival of Claude Garamont's sixteenth-century types, from the Egenolff-Berner specimen of 1592. One of the fonts in the font menu, served to the browser and embedded in PDFs.

    By
    The EB Garamond Project Authors

    Home page Source

  • IBM Plex Sans

    IBM's corporate sans serif, designed by Mike Abbink with Bold Monday. One of the fonts in the font menu, served to the browser and embedded in PDFs.

    By
    IBM Corp.

    Home page Source

  • Inter

    A sans serif by Rasmus Andersson, designed for reading on screens. One of the fonts in the font menu, served to the browser and embedded in PDFs.

    By
    The Inter Project Authors

    Home page Source

  • JetBrains Mono

    A monospaced face JetBrains made for reading code, with a tall x-height and clear letters that are easy to tell apart. One of the fonts in the font menu, served to the browser and embedded in PDFs.

    By
    The JetBrains Mono Project Authors

    Home page Source

  • Liberation Mono

    A monospaced face by Steve Matteson, made for Red Hat to the same measurements as Courier New. The font code is set in, and one in the font menu.

    By
    Red Hat, Inc., with digitized data from Google

    Home page and source

  • Liberation Sans

    A sans serif by Steve Matteson, made for Red Hat to the same measurements as Arial, so text set in one takes the same space in the other. A font in the font menu that lays text out as Arial would.

    By
    Red Hat, Inc., with digitized data from Google

    Home page and source

  • Liberation Serif

    A serif by Steve Matteson, made for Red Hat to the same measurements as Times New Roman, so text set in one takes the same space in the other. A font in the font menu that lays text out as Times New Roman would.

    By
    Red Hat, Inc., with digitized data from Google

    Home page and source

  • Literata

    A book face by TypeTogether, first made for Google Play Books. One of the fonts in the font menu, served to the browser and embedded in PDFs.

    By
    The Literata Project Authors

    Home page Source

  • Noto Sans

    The Latin, Greek and Cyrillic sans serif of Google's Noto project, which sets out to cover every script in Unicode. One of the fonts in the font menu, served to the browser and embedded in PDFs.

    By
    The Noto Project Authors

    Home page Source

  • Onest

    A sans serif by Dmitri Voloshin of TypeType, released through Google Fonts. Oficina's interface was set in it until October 2026; Docs still serves its files to pages saved before the change.

    By
    The Onest Project Authors
    Version
    Google Fonts v11

    Home page Source

  • Playfair Display

    A high-contrast display serif by Claus Eggers Sørensen, after the European types of the late eighteenth century. One of the fonts in the font menu, served to the browser and embedded in PDFs.

    By
    The Playfair Display Project Authors

    Home page Source

  • Source Sans 3

    Adobe's first open-source sans serif, designed by Paul D. Hunt for clear reading in interfaces and long text. One of the fonts in the font menu, served to the browser and embedded in PDFs.

    By
    Adobe

    Home page Source

  • Source Serif 4

    A serif by Frank Grießhammer for Adobe, drawn from the transitional types of Pierre-Simon Fournier and made to sit beside Source Sans. One of the fonts in the font menu, served to the browser and embedded in PDFs.

    By
    Adobe

    Home page Source

  • Zilla Slab

    A slab serif Typotheque made for Mozilla's identity. One of the fonts in the font menu, served to the browser and embedded in PDFs.

    By
    The Mozilla Foundation

    Home page Source

Go libraries

  • bigfft

    Multiplies very large integers quickly, using the fast Fourier transform. The SQLite driver's math library uses it.

    By
    Rémy Oudompheng and The Go Authors
    Version
    v0.0.0-20230129092748-24d4a6f8daec

    Home page and source

  • chi

    A small, fast HTTP router for Go, built on the standard library's own handlers. Every page and request is routed with it.

    By
    Peter Kieltyka and Google Inc.
    Version
    v5.3.2

    Home page Source

  • go-humanize

    Formats numbers, sizes and times the way people say them. The SQLite driver's C library uses it.

    By
    Dustin Sallings
    Version
    v1.0.1

    Home page and source

  • go-json-experiment

    The Go team's work on a second version of Go's JSON package, published ahead of the standard library. Docs reads its team and Home settings with it.

    By
    The Go Authors
    Version
    v0.0.0-20250725192818-e39067aee2d2

    Home page and source

  • go-text/typesetting

    A pure-Go font reader and text shaper, a port of HarfBuzz's shaping. The PDF export shapes text with it, so its lines break where the editor's do.

    By
    The go-text authors
    Version
    v0.3.6-0.20261020210405-a4cf8f401e16

    Home page and source

  • golang.org/x/image

    The Go project's supplementary image libraries. The PDF export measures glyphs in its fixed-point units.

    By
    The Go Authors
    Version
    v0.23.0

    Home page Source

  • golang.org/x/sys

    The Go project's low-level access to the operating system. SQLite and wazero use it.

    By
    The Go Authors
    Version
    v0.46.0

    Home page Source

  • golang.org/x/text

    The Go project's text libraries: languages, Unicode normalization and more. Docs normalizes titles with it, so a search finds an accented word however it was typed.

    By
    The Go Authors
    Version
    v0.39.0

    Home page Source

  • GORM

    An object-relational mapper for Go. Rastrillo's database layer is built on it.

    By
    Jinzhu
    Version
    gorm.io/gorm v1.31.2, gorm.io/plugin/dbresolver v1.6.2

    Home page Source

  • inflection

    Turns English nouns into their plurals and back. GORM names database tables with it.

    By
    Jinzhu
    Version
    v1.0.0

    Home page and source

  • Keymail sign-in

    Email-first sign-in that knows about Keymail: a claimed Keymail inbox signs in through Keymail, and any other address gets a magic link. Docs signs people in with it.

    By
    Keymail
    Version
    v0.1.1

    Home page Source

  • libc for Go

    The C standard library, translated to Go, for C programs that have been translated too. SQLite runs on it.

    By
    The Libc Authors
    Version
    v1.74.1

    Home page Source

  • mathutil

    Mathematical utilities for Go. SQLite's C library uses it.

    By
    The mathutil Authors
    Version
    v1.7.1

    Home page Source

  • memory

    A memory allocator for Go programs that manage memory the way C does. SQLite's C library allocates with it.

    By
    The Memory Authors
    Version
    v1.11.0

    Home page Source

  • now

    Time helpers for Go: the start and end of a day, a week or a month. GORM uses it.

    By
    Jinzhu
    Version
    v1.1.5

    Home page and source

  • Rastrillo

    The web framework every Oficina app is built on: routing, sessions and sign-in, the database layer, forms and the page vocabulary. Docs is built on it. The server still links the copy at its old path, github.com/carlosframework/rastrillo, for one bridge to the native apps' server.

    By
    The Rastrillo authors
    Version
    amadan.net/rastrillo/rastrillo/money v0.1.0, amadan.net/rastrillo/rastrillo v0.29.1-0.20261027164201-054787952dd2, github.com/carlosframework/rastrillo v0.23.0

    Home page Source

  • Rastrillo Native

    The native half of the Rastrillo framework: sign-in, accounts and shared parts for Oficina's Mac and iPhone apps, and the server side they sign in through. The server signs the Mac and iPhone apps in through its server half, which gives each app its own token.

    By
    The Rastrillo authors
    Version
    v0.0.0-20260923173546-2a5d07b2c8d3

    Home page and source

  • SQLite for Go

    SQLite, the public-domain database engine, translated from C to pure Go by Jan Mercl. Docs keeps its documents in SQLite, with no C compiler needed to build it.

    By
    The Sqlite Authors; SQLite itself is in the public domain
    Version
    v1.55.0

    Home page Source

  • uuid

    Google's package for generating and parsing UUIDs. Docs gives documents and their stored content their identifiers with it.

    By
    Google Inc.
    Version
    v1.6.0

    Home page Source

  • wazero

    A WebAssembly runtime written in Go, with no dependencies outside the standard library. The server runs Docs' document core, Rust compiled to WebAssembly, inside it.

    By
    The wazero authors
    Version
    v1.12.0

    Home page Source

JavaScript libraries

  • lib0

    Kevin Jahns' library of small utilities, including the binary encoding Yjs writes its updates in. Yjs is built on it, and the editor encodes its updates with it.

    By
    Kevin Jahns
    Version
    0.2.117

    Home page and source

  • orderedmap

    A small persistent map that keeps its keys in order. ProseMirror keeps its schema's nodes and marks in it.

    By
    Marijn Haverbeke and others
    Version
    2.1.1

    Home page and source

  • ProseMirror

    A toolkit for building rich-text editors on the web, by Marijn Haverbeke. A document is a structured tree, not a pile of HTML, and every change is a step that can be mapped, undone and shared. The editor you type in is ProseMirror.

    By
    Marijn Haverbeke and others
    Version
    prosemirror-commands 1.7.2, prosemirror-inputrules 1.5.1, prosemirror-keymap 1.2.3, prosemirror-model 1.25.11, prosemirror-schema-basic 1.2.4, prosemirror-schema-list 1.5.1, prosemirror-state 1.4.4, prosemirror-transform 1.12.0, prosemirror-view 1.42.3

    Home page Source

  • w3c-keyname

    Reads the name of a pressed key from a keyboard event, the same way in every browser. The editor's keyboard shortcuts are read with it.

    By
    Marijn Haverbeke and others
    Version
    2.2.8

    Home page and source

  • y-prosemirror

    Binds a ProseMirror editor to a Yjs document, so the editor shows the shared document and edits it. It joins the editor to the document, and its undo manager is the editor's undo.

    By
    Kevin Jahns
    Version
    1.3.7

    Home page and source

  • y-protocols

    The messages Yjs clients exchange to sync documents and share who is present. y-prosemirror uses it.

    By
    Kevin Jahns
    Version
    1.0.7

    Home page and source

  • Yjs

    A CRDT by Kevin Jahns: shared data that several people can change at once and that always merges to the same result, with no server deciding the order. In the browser, a document is a Yjs document, so edits from several people merge.

    By
    Kevin Jahns, and the Chair of Computer Science 5 (Databases and Information Systems), RWTH Aachen University
    Version
    13.6.27

    Home page Source

Rust libraries

Icons and artwork

Tools

  • async-trait

    Lets a Rust trait have asynchronous methods. Yrs uses it while it is built.

    By
    David Tolnay
    Version
    0.1.92

    Home page Source

  • Brotli

    Google's compression format, the one inside every WOFF2 font. fontTools compresses the browser's font files with it.

    By
    The Brotli Authors
    Version
    1.2.1

    Home page and source

  • bubblewrap

    Runs a program in a sandbox of its own, without root. On Linux the core's WebAssembly is built inside it instead of Docker, for the same identical bytes.

    By
    The bubblewrap contributors

    Home page and source

  • chromedp

    Drives Chrome from Go through the DevTools protocol. Docs' browser tests drive Chrome with it.

    By
    Kenneth Shaw
    Version
    github.com/chromedp/cdproto v0.0.0-20250724212937-08a3db8b4327, github.com/chromedp/chromedp v0.14.2

    Home page and source

  • Chromium

    The open-source browser Google Chrome is built from. Docs' browser tests drive it, through chromedp and the browser drive script.

    By
    The Chromium Authors

    Home page Source

  • Docker

    Runs software in containers, from images pinned by digest. The core's WebAssembly is built in a pinned Rust image, so every machine builds the same bytes.

    By
    Docker, Inc.

    Home page Source

  • esbuild

    A JavaScript bundler and minifier, written in Go by Evan Wallace. It builds the editor's JavaScript into the bundles Docs serves.

    By
    Evan Wallace
    Version
    0.28.2

    Home page Source

  • fontTools

    The Python library for reading, changing and writing font files. It cuts each font's styles and builds the browser's copies and the font menu's previews.

    By
    Just van Rossum and the fontTools contributors
    Version
    4.67.0

    Home page Source

  • Go

    The programming language, compiler and standard library from Google's Go team. The Docs server is written in Go, and its standard library is compiled into it.

    By
    The Go Authors
    Version
    go1.26.5

    Home page Source

  • Node.js

    The JavaScript runtime outside the browser. The editor's bundles are built and its logic is tested under Node.

    By
    OpenJS Foundation and Node.js contributors

    Home page Source

  • npm

    The package manager that ships with Node.js. It installs the editor's locked JavaScript dependencies for the build and the tests.

    By
    npm, Inc. and the npm contributors

    Home page Source

  • Playwright

    Microsoft's library for driving Chromium, Firefox and WebKit from tests. The font checks run in Safari's engine as well as Chrome's through it.

    By
    Microsoft Corporation
    Version
    1.62.1

    Home page Source

  • pngjs

    Reads and writes PNG images in plain JavaScript. The font checks compare screenshots with it.

    By
    Luke Page and the pngjs contributors
    Version
    7.0.0

    Home page and source

  • proc-macro2

    The compiler's macro interface as an ordinary library, so macros can be written and tested like any other code. The core's derive macros use it while it is built.

    By
    David Tolnay and Alex Crichton
    Version
    1.0.107

    Home page Source

  • Python

    The Python programming language and its standard library. The font vendoring, the shaping goldens and the native checks are Python scripts.

    By
    Python Software Foundation

    Home page Source

  • quote

    Writes Rust code from inside a macro. The core's derive macros use it while it is built.

    By
    David Tolnay
    Version
    1.0.47

    Home page Source

  • Rust

    The Rust programming language, compiler and standard library. Docs' document core is written in Rust, and the parts of its standard library the core uses are compiled into its WebAssembly.

    By
    The Rust Project Developers
    Version
    1.98.0

    Home page Source

  • rustup

    The Rust toolchain installer, which picks the pinned Rust version and its WebAssembly target. The gate checks the pinned Rust and its WebAssembly target are installed through it.

    By
    The Rust Project Developers

    Home page Source

  • rustversion

    Compiles code differently by Rust compiler version. arc-swap uses it while it is built.

    By
    David Tolnay
    Version
    1.0.23

    Home page Source

  • syn

    A parser for Rust source code, for macros that read the code they are given. The core's derive macros use it while it is built.

    By
    David Tolnay
    Version
    3.0.4

    Home page Source

  • uharfbuzz

    Python bindings for HarfBuzz, the text shaper in most browsers and operating systems. The PDF export's shaping is tested against HarfBuzz's through it.

    By
    The uharfbuzz contributors; HarfBuzz by Behdad Esfahbod and others
    Version
    0.57.0

    Home page Source

  • unicode-ident

    Says which characters may start or continue an identifier, from Unicode's own tables. syn uses it while the core is built.

    By
    David Tolnay; tables by Unicode, Inc.
    Version
    1.0.24

    Home page Source

  • version_check

    Asks which Rust compiler is building the code. aHash uses it while it is built.

    By
    Sergio Benitez
    Version
    0.9.5

    Home page Source

  • wasmi

    A WebAssembly interpreter written in Rust, by Robin Freyler. It runs anywhere Rust does, including where generating machine code at run time is not allowed, as on iOS. The core's tests run its WebAssembly in wasmi.

    By
    Robin Freyler
    Version
    0.32.3

    Home page and source

  • wasmparser

    The Bytecode Alliance's WebAssembly parser, part of wasm-tools. The core's tests check its WebAssembly imports nothing from its host.

    By
    Yury Delendik and the Bytecode Alliance
    Version
    0.258.0

    Home page and source