Franklin Resume PDF
Purpose
Use this skill only for stable formatting and PDF export of finalized English resume content. Preserve the fixed one-page A4 layout, section order, typography, spacing, contact-row icons, text-only section headings, and black-and-white consulting-style design.
Do not tailor the resume to a job description. Do not rewrite, polish, shorten, invent, or delete content unless the user explicitly asks for content editing.
Workflow
If the user provides raw finalized resume text, convert it faithfully into resume_content.json using the schema in references/resume_content_schema.md. Preserve meaning, sequence, dates, names, bullets, and wording as closely as possible.
If the user provides resume_content.json, validate it against references/resume_content_schema.md.
Place resume_content.json in the current working directory before running the generator. If it is absent, the generator uses examples/resume_content.example.json and prints a clear message.
Run:
node /path/to/franklin-resume-pdf/scripts/generate_resume_pdf.js
Report the generated paths for output/resume.html and output/resume.pdf, plus whether the PDF is exactly one A4 page.
Generator
The script scripts/generate_resume_pdf.js:
- Reads
resume_content.json from the current working directory.
- Falls back to
examples/resume_content.example.json when no local content file exists.
- Uses
assets/resume_template.html and assets/resume_style.css as the layout source.
- Uses Playwright to render and export the PDF.
- Writes
output/resume.html and output/resume.pdf by default.
- Accepts
--output-name <basename> to customize output filenames without changing the template.
- Tries compact layout classes in order, then warns if content still overflows one A4 page.
If the runtime cannot resolve Playwright, use a Node environment with Playwright available. Do not add internet resources, remote fonts, icon libraries, icon fonts, or external visual assets.
Overflow Policy
If content does not fit one page, do not rewrite or delete content. The generator applies layout adjustments in this order:
- Reduce section spacing slightly.
- Reduce bullet spacing slightly.
- Reduce line-height slightly.
- Reduce body font size, never below 10.5px.
- If still overflowing, print a warning naming the likely long section and suggest reducing summary length, EDF bullet count, bullet length, or skills line length.
Fixed Layout Rules
- One A4 page, single column, no photo, no sidebar, no decorative borders.
- System fonts only: Arial, Helvetica, or Noto Sans.
- Black and dark gray text with subtle gray section rules.
- Name at top, contact row below with small inline SVG icons.
- Sections in this exact order: Professional Summary, Professional Experience, Education, Languages & Skills.
- Section titles are text-only, bold, and paired with subtle horizontal rules extending to the right.
- Experience entries use bold organization names on the left, date/location right-aligned, role title below, then compact bullets.
- Education entries use bold school names on the left, date/location right-aligned, then degree line below.
1---2name: franklin-resume-pdf3description: Convert Franklin's finalized English resume draft or resume_content.json into a stable one-page A4 PDF using a fixed black-and-white resume layout with contact-row SVG icons, text-only section headings, section rules, compact typography, and overflow checks. Use when Codex needs to faithfully structure finalized resume content, validate resume_content.json, or export output/resume.html and output/resume.pdf without tailoring, rewriting, polishing, shortening, inventing, or deleting resume content.4---56# Franklin Resume PDF78## Purpose910Use this skill only for stable formatting and PDF export of finalized English resume content. Preserve the fixed one-page A4 layout, section order, typography, spacing, contact-row icons, text-only section headings, and black-and-white consulting-style design.1112Do not tailor the resume to a job description. Do not rewrite, polish, shorten, invent, or delete content unless the user explicitly asks for content editing.1314## Workflow15161. If the user provides raw finalized resume text, convert it faithfully into `resume_content.json` using the schema in `references/resume_content_schema.md`. Preserve meaning, sequence, dates, names, bullets, and wording as closely as possible.172. If the user provides `resume_content.json`, validate it against `references/resume_content_schema.md`.183. Place `resume_content.json` in the current working directory before running the generator. If it is absent, the generator uses `examples/resume_content.example.json` and prints a clear message.194. Run:2021 ```bash22 node /path/to/franklin-resume-pdf/scripts/generate_resume_pdf.js23 ```24255. Report the generated paths for `output/resume.html` and `output/resume.pdf`, plus whether the PDF is exactly one A4 page.2627## Generator2829The script `scripts/generate_resume_pdf.js`:3031- Reads `resume_content.json` from the current working directory.32- Falls back to `examples/resume_content.example.json` when no local content file exists.33- Uses `assets/resume_template.html` and `assets/resume_style.css` as the layout source.34- Uses Playwright to render and export the PDF.35- Writes `output/resume.html` and `output/resume.pdf` by default.36- Accepts `--output-name <basename>` to customize output filenames without changing the template.37- Tries compact layout classes in order, then warns if content still overflows one A4 page.3839If the runtime cannot resolve Playwright, use a Node environment with Playwright available. Do not add internet resources, remote fonts, icon libraries, icon fonts, or external visual assets.4041## Overflow Policy4243If content does not fit one page, do not rewrite or delete content. The generator applies layout adjustments in this order:44451. Reduce section spacing slightly.462. Reduce bullet spacing slightly.473. Reduce line-height slightly.484. Reduce body font size, never below 10.5px.495. If still overflowing, print a warning naming the likely long section and suggest reducing summary length, EDF bullet count, bullet length, or skills line length.5051## Fixed Layout Rules5253- One A4 page, single column, no photo, no sidebar, no decorative borders.54- System fonts only: Arial, Helvetica, or Noto Sans.55- Black and dark gray text with subtle gray section rules.56- Name at top, contact row below with small inline SVG icons.57- Sections in this exact order: Professional Summary, Professional Experience, Education, Languages & Skills.58- Section titles are text-only, bold, and paired with subtle horizontal rules extending to the right.59- Experience entries use bold organization names on the left, date/location right-aligned, role title below, then compact bullets.60- Education entries use bold school names on the left, date/location right-aligned, then degree line below.