← Back to Projects

Cover image for AutoCV

Empty Carousel

AutoCV

A dynamic CLI tool that generates multiple tailored PDF resumes from a modular YAML data source using Go and Typst.

Tags:

go

cli

automation

docker

typst

Project Highlights

Modular Data Management: Streamlined CV creation by developing a tool that generates multiple customized PDF versions from a modular YAML data source, eliminating repetitive manual editing.

Concurrent Build System: Engineered a concurrent build process using Go's goroutines and waitgroups, significantly cutting down generation time for multiple CVs.

Typst Integration: Leveraged Go's text/template engine to dynamically generate Typst markup (.typ files), including custom regex-based escaping to safely render special characters.

Containerized Environment: Containerized the entire build environment using a multi-stage Dockerfile, ensuring consistent and reproducible PDF builds without requiring a local Typst installation.

Automated CI/CD Pipeline: Implemented a GitHub Actions workflow to automatically compile PDFs, upload them to Azure Blob Storage, and publish them to GitHub Releases upon new version tags.

Technologies

Go

Docker

GitHub Actions