Universe

Create project in app

A modern, modular, and feature-rich CV template for Typst.

Typst Universe Test status Apache 2.0 license badge Latest release

v4 is a breaking change. Coming from v3? See the Migration Guide for the v3 fields that now panic with a migration message (language, non_latin_font, [lang.<code>], inject_ai_prompt, …) and their v4 replacements.

✨ Key Features

  • One profile, one complete CV β€” bind it to anything β€” Each profile_<name>/ is a self-contained variant you can target at a specific job, audience, or language, switched with --input profile=<name> at compile time. Profiles are fully decoupled from language: any script (CJK, Arabic, Hebrew, …) works via [layout.fonts].
  • Compose from modular content β€” Build each CV from reusable blocks (experience, education, projects, publications, skills), and keep as many tailored variants as you need β€” a long academic version, a one-page industry cut, one per application β€” from the same building blocks.
  • Polished by default β€” Clean, modern typography with Font Awesome icons and a matching cover letter, for a professional result without fighting the layout.

Quick Start

typst init @preview/brilliant-cv   # scaffolds a project directory with the template
cd brilliant-cv

Using Typst Web? Upload the Font Awesome 7 Free desktop OTF files (Regular, Solid, and Brands) to your project so the contact icons render correctly.

Edit profile_en/metadata.toml and the content modules in profile_en/*.typ β€” it’s the most heavily annotated profile. To add a new variant, copy the directory and tweak the fields that differ.

typst compile cv.typ                    # default profile
typst compile cv.typ --input profile=fr # switch profile at compile time

Optional: embed a hidden, ATS-friendly keyword layer for automated screeners β€” opt-in and off by default. Read the notes in profile_en/metadata.toml before enabling, and keep keywords truthful.

Full guide, component gallery, recipes, and configuration reference β†’ brilliant-CV Documentation.

The same design across scripts β€” one profile per language, all from the same building blocks:

English FranΓ§ais δΈ­ζ–‡
English CV preview French CV preview Chinese CV preview

Previews are generated in CI from the live template (just previews).

Contributing

Contributions are welcome β€” see the project repository for the contribution guide.

Sponsors

If this template helps you land a job, consider buying me a coffee! β˜•οΈ

GitHub profile picture for sponsor GeorgRasumov  GitHub profile picture for sponsor chaoran-chen  

License

Apache 2.0.