Skip to main content

Modern CV generation system combining Typst templating with Python CLI - create multiple professional document variants from unified YAML data

Project description

resumyst

Generate professional CVs from YAML data using Typst templates.

Alpha Software: This project is in early development. Features may change and bugs are expected. Always review generated CVs before submitting them.

Academic Industry Short
academic CV industry CV short CV

A modern CV generation system that combines Typst templating with Python CLI convenience. Generate multiple CV variants from a single YAML data source.

Features

  • Multiple variants: Academic, industry, and compact formats
  • Interactive project setup wizard
  • Live preview server with auto-reload
  • Data validation with helpful error messages
  • Interactive content editor
  • Intelligent filtering with exclude_from flags
  • PDF and PNG output formats

Installation

pip install resumyst

Typst will be automatically installed when first needed, or you can install it manually beforehand from typst.app.

Quick Start

Interactive Setup

# Create new CV project
resumyst init my-cv
cd my-cv

# Edit your data
resumyst edit

# Live preview
resumyst serve

# Build CV
resumyst build academic

Direct Usage

# Skip wizard, use defaults
resumyst init my-cv --quick

# Build specific variant
resumyst build industry

# Build all variants
resumyst build --all

# Watch for changes
resumyst build academic --watch

Project Structure

my-cv/
├── data/
│   ├── config.yaml          # Global styling
│   ├── personal.yaml        # Contact info
│   ├── sections/             # CV content
│   │   ├── experience.yaml
│   │   ├── education.yaml
│   │   └── ...
│   └── variants/             # Variant settings
│       ├── academic.yaml
│       ├── industry.yaml
│       └── short.yaml
├── typst/                    # Template files
└── out/                      # Generated outputs
    ├── pdf/
    └── png/

CV Variants

Academic - Complete CV with all publications, teaching, and academic activities Industry - Professional focus with selected publications and practical experience Short - Compact 1-2 page version for quick applications

Control what appears in each variant using exclude_from flags in your YAML files:

# This entry appears in all variants
- title: "Important Publication"
  year: 2024

# This entry is excluded from short variant
- title: "Minor Publication"
  year: 2023
  exclude_from: ["short"]

Commands

  • resumyst init [name] - Create new CV project
  • resumyst edit - Interactive content editor
  • resumyst build [variant] - Build CV (academic/industry/short)
  • resumyst serve - Start live preview server
  • resumyst validate - Validate YAML data
  • resumyst clean - Remove build outputs

Configuration

Edit data/config.yaml to customize typography, spacing, colors, and formatting:

typography:
  fonts:
    text: "Libertinus Serif"
  sizes:
    body: 11.2pt

colors:
  link: "#0645ad"

formatting:
  date_format: "MMM YYYY"
  show_location: true

Template Customization

Modify Typst template files in the typst/ directory:

  • typst/styles.typ - Typography and layout
  • typst/components.typ - UI elements
  • typst/renderers.typ - Section formatting

Auto-Installation

Resumyst automatically installs Typst using platform-appropriate package managers:

  • Windows: winget, Cargo
  • macOS: Homebrew, Cargo
  • Linux: Cargo (APT/Snap require manual installation for security)

Disable auto-installation: resumyst build academic --no-auto-install

Development

git clone https://github.com/guerrantif/resumyst.git
cd resumyst
pip install -e .
resumyst --help

Requirements

  • Python 3.10+
  • Typst (auto-installed)

License

MIT License - see LICENSE file for details.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

resumyst-0.1.1.tar.gz (5.2 MB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

resumyst-0.1.1-py3-none-any.whl (39.5 kB view details)

Uploaded Python 3

File details

Details for the file resumyst-0.1.1.tar.gz.

File metadata

  • Download URL: resumyst-0.1.1.tar.gz
  • Upload date:
  • Size: 5.2 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: python-requests/2.32.5

File hashes

Hashes for resumyst-0.1.1.tar.gz
Algorithm Hash digest
SHA256 b7ea0ad830cc8d911b9b1e637fe7a0d1a4ffb9568fbfd4394532ca8a879ee813
MD5 44fc3a5a19e980e045bcb9c77ca67c70
BLAKE2b-256 6ee393dc8f23993f7c4208186e7b4070a9c9f92a96b5ea3222e25229fea9d944

See more details on using hashes here.

File details

Details for the file resumyst-0.1.1-py3-none-any.whl.

File metadata

  • Download URL: resumyst-0.1.1-py3-none-any.whl
  • Upload date:
  • Size: 39.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: python-requests/2.32.5

File hashes

Hashes for resumyst-0.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 9971bd0559a4c6bcf7b505fb15614d74be9fa856a80de59e14ef029f46579fba
MD5 46d4bf1cb646928205ef0e4b0cf4a99f
BLAKE2b-256 976a33db2b3bf81c60a84bb133fb9d20b2c967ce97d38e3084c05dc4584ecf88

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page