Back to templates

Template details

Astro Awesome CV

Astro theme for CVs inspired by the LaTeX Awesome-CV template: write your CV in one YAML file and get a static site plus a print-ready A4 PDF.

About this template

Astro Awesome CV is an Astro theme that turns a single YAML file into a personal CV website plus a print-ready A4 PDF, recreating the look of the LaTeX template Awesome-CV by Claud D. Park without requiring LaTeX.

What is Astro Awesome CV?

Astro Awesome CV is a static-site CV theme built on the Astro framework. All resume content lives in one file, src/data/cv.yaml, and the build outputs both a static HTML site and a PDF generated at build time by Playwright using the same HTML and print styles as the site. The design is credited to the Awesome-CV LaTeX template by Claud D. Park, and the theme is published as an MIT-licensed repository (sht/astro-awesome-cv) with a live demo at astro-awesome-cv.sek4.com plus a sample PDF at /cv.pdf.

Key Features

  • YAML-driven content — every resume section comes from src/data/cv.yaml, which is validated at build time so a typo fails the build instead of silently disappearing from the page.
  • Build-time PDF — npm run build writes the site to dist/, then scripts/build-pdf.mjs opens it in headless Chromium and saves dist/cv.pdf; the "Download PDF" button delivers it as a name-based CV file.
  • Zero client-side JavaScript — the published site ships no JavaScript, and the layout is responsive with dedicated print styles for A4 and a page-numbered footer.
  • Configurable accent color — eight Awesome-CV presets are documented, including Red #dc3522 (the default), Sky blue #0395de, Emerald #00a388, Pink #ef4089, Orange #ff6138, Nephritis #27ae60, Concrete #95a5a6, and Dark night #131a28.
  • Self-hosted Source Sans 3 font — typography is bundled rather than loaded from a third-party font CDN.
  • Typed schema — the cv.yaml schema lives in src/types.ts, so new fields are added there alongside the YAML.
  • Netlify-ready deploy — a netlify.toml sets the build command, Node version and publish directory, and GitHub's deploy button scaffolds a site from the template repository.
  • Astro stack — the theme runs on Astro with layout and sections in src/pages/index.astro and screen/print styles in src/styles/global.css.

What can you do with Astro Awesome CV?

  • Job seekers: keep a versioned resume in YAML, get a hosted web CV and a matching A4 PDF from the same source without installing a LaTeX toolchain.
  • Developers: customize sections in src/pages/index.astro and styles in src/styles/global.css, change the accent color in the YAML, and push the result to Netlify or any host that can run Playwright's Chromium during the build.
  • Demo removal: delete the demo banner by setting the demo field in cv.yaml before publishing a personal CV.

How does Astro Awesome CV work?

Starting from Node.js 22.12 or later, run npm create astro@latest -- --template sht/astro-awesome-cv, enter the new project and run npm run dev; the page reloads as you edit src/data/cv.yaml. For the PDF, run npm run build (Chromium is installed by the postinstall script) and npm run preview to check the generated dist/cv.pdf locally, since the PDF only exists after a build and the download button returns 404 under npm run dev.

Who should use Astro Awesome CV?

  • Applicants who want one resume source — edit a single YAML file and get both a website and a printable A4 PDF in sync.
  • Developers comfortable with Node and Astro — the theme expects Node.js 22.12 or later, npm scripts, and edits to index.astro, global.css and types.ts for deeper changes.
  • LaTeX-averse users of Awesome-CV — people who like the Awesome-CV visual style but do not want to maintain a LaTeX installation.
  • Privacy-minded deployers — the no-JavaScript static output keeps hosting simple on Netlify or another static host.

Pricing

Free and open source under the MIT license.

FAQ

Is Astro Awesome CV free?

Yes. The repository is released under the MIT license, so you can clone it, use it as a GitHub template, or scaffold it with npm create astro@latest -- --template sht/astro-awesome-cv at no cost.

Does it need LaTeX installed?

No. LaTeX is only the visual inspiration; the PDF is produced by Playwright's headless Chromium at build time from the same HTML and print styles as the website.

Why is the PDF download broken in dev mode?

The PDF only exists after a build. Under npm run dev the download button returns 404; run npm run build && npm run preview to test it locally.

Where do I change the accent color?

The accent field in src/data/cv.yaml. The documented presets are Red, Sky blue, Emerald, Pink, Orange, Nephritis, Concrete and Dark night.

What is the minimum Node.js version?

Node.js 22.12 or later, according to the getting-started instructions.

Screenshot of Astro Awesome CV