This repository contains the codebase and contents for Nhi Nhi Vo's personal website, Vault CMS blog, executive portfolio, and PDF profile, showcasing her writing, life reflections, and executive advisory/marketing leadership.
👉 Live Production Domain: https://nhivo.io.vn
| Route | Purpose | Description |
|---|---|---|
https://nhivo.io.vn/ |
Home / Portfolio | Executive portfolio, bio quote, core metrics, 7-role career journey timeline, capability lenses & gallery |
https://nhivo.io.vn/posts |
Vault CMS Blog | Personal blog, life reflections, and essay collections powered by local-first Obsidian Markdown vault |
https://nhivo.io.vn/pdf |
7-Page A4 PDF Profile | Print-ready 7-page portrait profile (A4 fixed 297mm height) for Cmd+P PDF export |
https://nhivo.io.vn/references/ngoc-nguyen |
Reference Letter | Nguyễn Phương Ngọc — Marketing Director, Meliá Serenity Cam Ranh |
https://nhivo.io.vn/references/vojtech-zehnalek |
Reference Letter | Vojtech Zehnalek — Former CEO, InCorp Vietnam |
https://nhivo.io.vn/references/jessica-tran |
Reference Letter | Jessica Tran — Former Senior Associate, Fossil Vietnam |
https://nhivo.io.vn/references/leo-dong-son-lam |
Reference Letter | Leo Dong Son Lam — Associate Lecturer, RMIT University |
src/content/posts/, src/content/pages/, src/content/projects/)Philosopher serif, Be Vietnam Pro sans, Alex Brush cursive)https://nhivo.io.vn.Follow these steps to run the site locally:
npmInstall the project dependencies and launch the dev environment:
# Install dependencies
npm install
# Run the local development server
npm run dev
The local server will spin up, typically at http://localhost:4321.
To compile the static production bundle into the dist/ directory:
npm run build
All content is clean, structured, and decoupled from HTML/CSS layouts:
* Blog Posts & Articles (Vault CMS): Written in Markdown/MDX in src/content/posts/ (supports Obsidian wikilinks, callouts, and linked mentions).
* Timeline, Speaking Details, Certifications: Managed in standalone TS files under src/data/about/ (e.g., experience.ts, speaking.ts, certifications.ts).
* Reference Letters: 100% verbatim source data managed in referenceLetters.ts.
* Bilingual Static Copy: Localized under en and vi key dictionaries inside translations.ts.
* Gallery Assets: Structured inside gallery.ts, mapping back to .webp files in /public/images/gallery/.
For a detailed section-by-section map of which files to edit, please consult APP_CONTEXT.md.
This repository adheres strictly to the workspace-standard 4-Doc Rule for architectural context and state persistence, supplemented by a master design system style guide: