New Research: Supply Chain Attack on Axios Pulls Malicious Dependency from npm.Details →
Socket
Book a DemoSign in
Socket

cvforge

Package Overview
Dependencies
Maintainers
1
Versions
5
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

cvforge

ATS-friendly CV/Resume builder using YAML and Typst

pipPyPI
Version
1.1.1
Maintainers
1

CVForge

A YAML-based, ATS-compatible CV/Resume generator powered by Typst.

Why This Tool?

I created CVForge because I needed a fast, reliable way to build and rebuild my resume without:

  • Using Word or clunky desktop apps
  • Trusting random online resume builders with my personal data
  • Spending time on formatting instead of content

CVForge lets you define your CV once in YAML and regenerate it instantly. Change a job title, add a skill, rebuild — done. 100% local, 100% private.

Requirements

  • Typst: Must be installed and available in your PATH
  • Python 3.10+

Installation

# Run without installing
uvx cvforge init
uvx cvforge cv.yaml

# Or install as a tool
uv tool install cvforge
cvforge cv.yaml

# Update
uv tool upgrade cvforge

# Uninstall
uv tool uninstall cvforge

Using Pip

# Install
pip install cvforge

# Update
pip install --upgrade cvforge

# Use
cvforge cv.yaml

Usage

CommandDescription
cvforge initCreates a template cv.yaml
cvforge <file.yaml>Generates PDF from YAML
cvforge fontsLists available fonts
cvforge ats-check <file.pdf>Checks PDF for ATS compatibility

Configuration

Language

The language parameter controls the section headings in your CV (e.g., "Experience" vs "Deneyim"). It does not translate your content.

language: "en"  # English headings (default)
language: "tr"  # Turkish headings

Fonts

Run cvforge fonts to see available options. The font must be installed on your system.

font: "roboto"  # Options: noto, roboto, inter, lato, arial, times, calibri, etc.

YAML Structure

FieldRequiredDescription
languageNoSection heading language: "en" (default) or "tr"
fontNoFont family (run cvforge fonts to list options)
nameYesYour full name
roleYesJob title / professional role
emailYesContact email
phoneNoPhone number
locationNoCity, Country
websiteNoPersonal website URL
website-textNoCustom display text for website link
linkedinNoLinkedIn profile URL
linkedin-textNoCustom display text for LinkedIn link
githubNoGitHub profile URL
github-textNoCustom display text for GitHub link
photoNoPath to profile photo
photo-widthNoPhoto width (default: "2.5cm")
summaryNoProfessional summary paragraph
skillsNoList of skill categories with items
experienceNoWork experience entries
educationNoEducation entries
projectsNoProject entries
certificationsNoCertification entries
awardsNoAward entries
languagesNoLanguage proficiencies
interestsNoList of interests/hobbies

Run cvforge init to generate a complete example YAML file with all fields.

Features

  • Cross-platform: Linux, Windows, macOS
  • ATS Compatible: Clean, parseable text
  • Multi-language: EN/TR section headings
  • 17 fonts available
  • Built-in ATS checker
  • Photo support
  • 100% Local & Private

Support

If you find this project useful, consider supporting its development:

Buy Me A Coffee

License

This project is licensed under the MIT License.

© 2025 Ahmet Burhan Kayalı

Keywords

ats

FAQs

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts