A lightweight web service that converts LaTeX documents to PDF files using pdflatex. Supports fontawesome, preprint, enumitem and more.
- Simple RESTful API to convert LaTeX to PDF
- Accepts raw LaTeX content in request body
- Returns generated PDF as binary response
- Docker support for easy deployment
# Pull from Docker Hub
docker pull shambu2k/go-tex2pdf-server:latest
# Or pull from GitHub Container Registry
docker pull ghcr.io/shambu2k/go-tex2pdf-server:latest
# Run the container
docker run -p 8080:8080 shambu2k/go-tex2pdf-server:latest- Ensure you have Go installed (version 1.23 or higher)
- Install pdflatex and required LaTeX packages:
# For Ubuntu/Debian apt-get install texlive-latex-base texlive-fonts-recommended texlive-latex-extra # For macOS using Homebrew brew install --cask mactex # For macOS using tlmgr tlmgr install fontawesome5 enumitem marvosym framed titlesec preprint fullpage
- Build and run the server:
go build -o tex2pdf-server ./tex2pdf-server
Endpoint: POST /convert
Request Body: Raw LaTeX content
Response: Binary PDF file
Example:
curl -X POST http://localhost:8080/convert \
-H "Content-Type: text/plain" \
-d '\documentclass{article}\begin{document}Hello World!\end{document}' \
--output document.pdfEndpoint: GET /version
Response: Version string
Endpoint: GET /
Response: Welcome message with basic API usage instructions
This project uses gotex for LaTeX rendering.