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 |
|---|---|---|
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_fromflags - 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 projectresumyst edit- Interactive content editorresumyst build [variant]- Build CV (academic/industry/short)resumyst serve- Start live preview serverresumyst validate- Validate YAML dataresumyst 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 layouttypst/components.typ- UI elementstypst/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
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
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
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
b7ea0ad830cc8d911b9b1e637fe7a0d1a4ffb9568fbfd4394532ca8a879ee813
|
|
| MD5 |
44fc3a5a19e980e045bcb9c77ca67c70
|
|
| BLAKE2b-256 |
6ee393dc8f23993f7c4208186e7b4070a9c9f92a96b5ea3222e25229fea9d944
|
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
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
9971bd0559a4c6bcf7b505fb15614d74be9fa856a80de59e14ef029f46579fba
|
|
| MD5 |
46d4bf1cb646928205ef0e4b0cf4a99f
|
|
| BLAKE2b-256 |
976a33db2b3bf81c60a84bb133fb9d20b2c967ce97d38e3084c05dc4584ecf88
|