Skip to content

loqusion/typix

Repository files navigation

Typix Logo
Typix

FlakeHub version

Typix aims to make it easier to use Nix in Typst projects.

  • Dependency management: supports arbitrary dependencies including fonts, images, and data
  • Reproducible: via a hermetically sealed build environment
  • Extensible: full support for Typst packages

Features

  • Automatically fetch dependencies and compile in a single command (nix run .#build)
  • Watch input files and recompile on changes (nix run .#watch)
  • Set up a shell environment with all dependencies made available via environment variables and symlinks
  • Extensible via mkTypstDerivation
  • Support for dependencies such as fonts, images, and data
  • Typst packages fetched from the official Typst packages CDN

Getting Started

After installing Nix and enabling flakes, you can initialize a flake from the default template:

nix flake init --refresh -t github:loqusion/typix

Alternatively, you can use a template demonstrating Typst packages usage:

nix flake init --refresh -t 'github:loqusion/typix#with-typst-packages'

Here are some commands you can run from any template:

  • nix run .#watch — watch the input files and recompile on changes
  • nix run .#build — compile and copy the output to the current directory

For more information, check out the docs.

About

Deterministic Typst compilation with Nix

Topics

Resources

License

Stars

Watchers

Forks

Sponsor this project

Packages

No packages published

Contributors 7