Newsletter
Join the Community
Subscribe to our newsletter for the latest news and updates
A minimalist CV/resume page built with Astro that supports dark mode and multi-language YAML content.

A dark portfolio & blog theme for Astro with a live 5,000-particle Three.js background, blog system, and glassmorphism UI.
CVPage is a minimalist resume website template built with the Astro framework that renders a personal profile page from YAML files. It takes structured YAML files from a content/cv directory as input and generates a static, self-contained CV page as output. The project is open-source on GitHub under the account reonokiy, and its topics list it as an astrojs, cv, resume, and resume-template resource. The template focuses on text content, contact links, and list-based work experience sections.
CVPage is a minimalist resume website template built with the Astro framework. It takes structured YAML files from a content/cv directory as input and generates a static, self-contained CV page as output. The project is open-source on GitHub under the account reonokiy, and its topics list it as an astrojs, cv, resume, and resume-template resource. The template focuses on text content, contact links, and list-based work experience sections.
en.yaml for English or zh.yaml for Chinese, so you can maintain localized versions of your CV.content/cv; no coding is required to update your resume content.schema directory; adding the comment # yaml-language-server: $schema=../../schema/cv.json at the top of your YAML file enables validation and auto-completion in editors that support the language server.v0.email, v0.phone, v0.github, and v0.google-scholar fields; the CV info component supports v0.markdown, v0.unordered-list, and v0.unordered-list-with-item to mix paragraphs and bullet lists.pnpm install and pnpm run dev for local development, or pnpm run build for production.de.yaml or fr.yaml) to offer international visitors a version in their language.The workflow is file-based. Clone the repository, install dependencies with pnpm, and edit the YAML files in the content/cv directory. Each YAML file corresponds to one language version. The Astro components read the predefined fields and render them as a single-page website; run pnpm run dev to preview changes locally and pnpm run build to output a production-ready static site.
Edit the base info section at the top of your language YAML file, where the fields v0.email, v0.phone, v0.github, and v0.google-scholar are defined. Save the file and the rendered page updates on your next dev build.
You need Node.js and pnpm installed. After cloning the repository, run pnpm install to fetch dependencies, pnpm run dev for a development server, and pnpm run build to generate a production build.
Yes. Create a new YAML file in content/cv with the filename pattern [lang].yaml (for example, es.yaml for Spanish). Follow the same structure as the existing en.yaml and zh.yaml files.
