Skip to content

run4w4y/cv

Repository files navigation

CV Website

Multilingual CV website built with Astro, React, MDX content, Tailwind CSS v4, Bun, direnv, and a Nix flake.

Development

direnv allow
bun install
bun run dev

The editable CV content lives in atomic MDX section files under src/content/cv/en/ and src/content/cv/ru/.

The public URL used for QR codes can be overridden at build time:

CV_WEB_BASE_URL="https://cv.example.com" bun run build

In CI, CV_WEB_BASE_URL is required as a GitHub repository variable so the generated QR codes point at the deployed Cloudflare Pages/custom-domain URL.

PDF Export

The website has an Export PDF button that opens the browser print dialog with print-specific styling.

To generate static PDFs into dist/pdf/:

bun run pdf

Published PDF links:

The workflow publishes these files as GitHub Release assets from the latest successful main deployment.

CI and Deployment

GitHub Actions checks, builds, generates PDFs, publishes PDF release assets, uploads the static artifact, and deploys the static dist/ directory to Cloudflare Pages with Wrangler. Pull requests run checks/builds only; pushes to main and manual runs publish the release assets and deploy.

Required GitHub repository variables:

  • CV_WEB_BASE_URL: public site URL, used for QR codes and the PDF links above.
  • CLOUDFLARE_PAGES_PROJECT: Cloudflare Pages project name.

Required GitHub repository secrets:

  • CLOUDFLARE_API_TOKEN
  • CLOUDFLARE_ACCOUNT_ID

Published release assets:

  • cv-en.pdf: English PDF export.
  • cv-ru.pdf: Russian PDF export.

Uploaded workflow artifacts:

  • cv-dist: static site output without generated PDFs.

The workflow can be checked locally with act from the Nix dev shell:

act -n push

The repo includes an .actrc runner mapping so the first dry run does not prompt for a default image. Artifact upload is skipped under act, because it depends on GitHub's hosted artifact runtime.

About

Multilingual Astro/React CV with PDF exports

Resources

Stars

Watchers

Forks

Packages

 
 
 

Contributors