|
|
||
|---|---|---|
| .claude/skills/chrome-session | ||
| base | ||
| output/pdf | ||
| scripts | ||
| tailored | ||
| templates | ||
| tracking | ||
| .gitignore | ||
| .mcp.json | ||
| CLAUDE.md | ||
| README.md | ||
| package.json | ||
| pnpm-lock.yaml | ||
README.md
CV-2026
Personal CV generation pipeline for Oleg Proskurin.
Pipeline
base/*.md -> output/html/*.html -> output/pdf/*.pdf
(Claude generates) (puppeteer renders)
Folder layout
| Path | Purpose |
|---|---|
base/ |
Master CV in Markdown (source of truth for content) |
base/reference/ |
Reference PDF that defines the visual style/format |
templates/ |
Shared HTML/CSS — used by every generated CV |
tailored/<company>/ |
Company-specific tailored versions (MD + HTML + PDF) |
tracking/ |
Applications, outreaches, communications log |
scripts/ |
Build tooling (PDF generator) |
output/html/ |
Generated HTML (transient, gitignored) |
output/pdf/ |
Generated PDFs (committed) |
Usage
Install once:
pnpm install
Generate PDF from an HTML file:
pnpm pdf output/html/cv-2026-05-base.html
# -> output/pdf/cv-2026-05-base.pdf
The HTML file should be generated by Claude from the Markdown source — see CLAUDE.md for the full flow and styling rules.
Workflows
- New base CV: drop a new
cv-YYYY-MM-base.mdintobase/, ask Claude to generate the HTML, then runpnpm pdf. - Tailor for a company: ask Claude to create
tailored/<company>/cv.mdfrom the latest base, generate HTML, then PDF. - Track applications: append to
tracking/applications.mdandtracking/outreach.md.