Skip to content

digineo/texd

Repository files navigation

texd

Go Reference Test, Lint, Release Coverage Go Report Card GitHub license

texd is a TeX as (a) Service solution, designed for your internal document generation on your own servers.

Features

  • Ad-hoc compilation - Send .tex files via HTTP POST, get PDF back
  • Simple HTTP API - No TeX distribution needed on client systems
  • Pluggable TeX distributions - Use Docker containers for different TeX versions
  • Scalable architecture - Deploy as local service, container, or CI pipeline
  • Reference store - Cache commonly used assets to reduce bandwidth
  • Prometheus metrics - Monitor document processing and queue status

Quick Start

# Local mode (requires local TeX installation)
$ texd

# Container mode (uses Docker images)
$ texd registry.gitlab.com/islandoftex/images/texlive:latest

# CI service mode (run texd in Docker)
$ docker run --rm -t -p localhost:2201:2201 ghcr.io/digineo/texd:latest

Then compile a document:

$ curl -X POST \
    -F "input.tex=<input.tex" \
    -o "output.pdf" \
    "http://localhost:2201/render"

Documentation

Contributing

Bug reports and feature requests are welcome at https://github.com/digineo/texd/issues.

Pull requests are welcome, even for minor fixes. For larger features, please open an issue first to discuss your proposal.

See Contributing for more details and related projects.

License

MIT, © 2022, Dominik Menke, see file LICENSE