Home / All Skills / Docs & Knowledge / resume-modern
Docs & Knowledge · nexu-io/html-anything

resume-modern

Modern minimalist resume, single-page A4, suitable for printing or exporting to PDF.

L3 Networked · Declare domain & key scopeV1 Commit-PinnedNetwork AccessDual-pass Audit
Author nexu-ioGitHub nexu-io/html-anything ↗Stars 8827License Apache-2.0(仓库根 LICENSE = Apache License 2.0;GitHub API spdx_id=Apache-2.0)Commit 553ed98c28
Control levels describe skill capabilities and suggested control measures; they do not represent quality or safety certifications, nor do they dictate usability. Usage decisions rest entirely with users and administrators. Different agent hosts apply varying constraints; do not assume hosts provide automatic protection. Third-party skill copyrights belong to their original authors. Use at your own risk.

1How It Works & Mechanism

This template is purely data within a 'folder-as-template' architecture: SKILL.md uses YAML frontmatter for the selector, and its body serves as layout directives for the agent. The repository writes no code for individual templates; adding a new template simply means adding a folder.

next/src/lib/templates/loader.ts
SKILL.md — frontmatter (id, scenario, tags, …) + prompt body
loader.ts states directory conventions in its file header comments; frontmatter is parsed via in-process regex (no YAML dependency), and the body is extracted verbatim as the prompt body, hidden from the frontend ('Body is excluded so we can return the entire registry in one cheap fetch without shipping prompt text to the browser.').

At runtime, the host sandwiches this template's body between shared design directives and user content to compose a single prompt—the template's 'intelligence' resides entirely within this natural language text, with zero executable code.

next/src/lib/templates/shared.ts
return `${SHARED_DESIGN_DIRECTIVES} ${opts.body.trim()}
assemblePrompt returns 'shared design directives + template body + [Input Format] + [User Content]'. The shared section (SHARED_DESIGN_DIRECTIVES in the same file) enforces hard constraints like single-file HTML, Tailwind/font CDNs, content-driven counts, and prohibitions on filesystem tools; it is uniform across all templates and not intrinsic to this template.

After loading the template, the host's /api/convert passes the text to a locally authenticated coding-agent CLI, streaming back only stdout as HTML; the template itself performs no network calls, reads no credentials, and writes no files.

next/src/app/api/convert/route.ts
prompt = assemblePrompt({ body: skill.body, content, format });
The same route subsequently invokes invokeAgent({ … }) to spawn a CLI (claude / codex / cursor-agent, etc., probed via host PATH); the corresponding shared directive explicitly specifies '**Prohibited: Write / Edit / MultiEdit / Bash / Create / any filesystem tools**'.

The accompanying example.html is a 'pre-rendered example' served as-is by the preview endpoint into the selector and gallery iframe—it determines whether the template card has a visual preview and does not participate in content generation.

next/src/app/api/templates/[id]/preview/route.ts
Returns the skill's `example.html` verbatim so it can be loaded into an
Previews are cached by skill id (Cache-Control: public, max-age=300); the frontend adds sandbox="allow-scripts allow-same-origin" to the iframe in the preview panel (a host-side implementation, beyond this template's control).

Fields in the frontmatter are mapped one-by-one to selector metadata (featured determines overall ranking, recommended promotes it to the top '★ Recommended' section, example_* generates example card copy) and dictate where it appears in category/scenario filters.

next/src/lib/templates/loader.ts
if (typeof fm.featured === "number") meta.featured = fm.featured;
fmToMeta directly transfers category/scenario/aspectHint/tags to SkillMeta; the example block is generated when example_id or example.{md,html} exists (id/name/format/tagline/desc + optional source). These fields only influence display and sorting, not generation behavior.

All generation capabilities of this template are fulfilled entirely by its own body: resume-modern/SKILL.md solely describes layout, color palette, typography, and content guidelines, without a single instruction prompting the agent to run tools, fetch APIs, or read external data.

next/src/lib/templates/skills/resume-modern/SKILL.md
【模板: 现代极简简历】
The skill directory contains only 2–3 files in total (SKILL.md + example.html [+ example.md]), with no scripts, references, or data files; example.html is simply a human-crafted example artifact of the template (see internal_assets).

The body translates 'single-page A4' into actionable constraints: the container simulates A4 using Tailwind arbitrary values (w-[210mm] min-h-[297mm] mx-auto) and mandates @media print styles—this is how its 'printable / PDF-exportable' nature is achieved.

next/src/lib/templates/skills/resume-modern/SKILL.md
- 容器宽度模拟 A4: `w-[210mm] min-h-[297mm] mx-auto`, 内边距 16-20mm。

The information architecture is strictly defined as a 60/40 primary/secondary two-column split, where the secondary column accommodates supporting details such as skills, languages, and honors.

next/src/lib/templates/skills/resume-modern/SKILL.md
- 主体两栏可选: 左 60% 主线(经历/项目/教育), 右 40% 副线(技能/语言/获奖)。

The writing format for experience entries is also mandated: Company + Role + right-aligned Date Range + 1–3 verb-led bullet points, effectively encoding resume writing best practices into the template.

next/src/lib/templates/skills/resume-modern/SKILL.md
- 经历每条: 公司 + 职位 + 时间区间 (右对齐), 下方 1-3 条 bullet 用动词开头。

The color scheme is restricted to monochrome/gray + 1 accent (navy blue/dark green), explicitly rejecting flashy colors—reducing recruiter cognitive load while curbing arbitrary model deviations.

next/src/lib/templates/skills/resume-modern/SKILL.md
- 不使用花哨颜色, 黑白灰 + 1 个 accent (深蓝 / 墨绿)。

The accompanying example faithfully implements this: .page is pinned to A4 dimensions, and @media print strips backgrounds and box shadows.

next/src/lib/templates/skills/resume-modern/example.html
.page { width:210mm; min-height:297mm; margin:0 auto; background:#fff; padding:18mm 16mm; box-shadow:0 30px 60px -20px rgba(0,0,0,0.18); }

2Core Capabilities

01Single-page A4 layout (210×297mm container + 16–20mm padding)
02Print / PDF export dedicated styles (@media print hides non-essential elements and preserves colors)
03Two-column information architecture (60% left primary column / 40% right secondary column)
04Structured experience entries (Company + Role + right-aligned Date + verb-led bullet points)
05Visual hierarchy for section headings (small caps + short accent line)
06Restrained color system (monochrome/gray + single accent)
07Accompanying sample input (frontend engineer resume featuring quantified achievements)

3External Dependencies

KindDependency / Endpoint
networkTailwind CDN(仅出现在产物示例 example.html,运行时不要求)
networkGoogle Fonts(仅出现在产物示例 example.html)
cli本地 coding-agent CLI(宿主提供,模板自身不调用)

4Recommended Governance & Evidence

Suggested Controls for Safe Operation
For Agent Runtime
Declare allowed domains and key scope
For Administrators
Least privilege keys, retain request logs
Evidence & Triggers (File Paths & Excerpts)
  • 网络端点: Declared external network access: cdn.tailwindcss.com (<script src> in example.html, fetched by the browser during selector preview or local viewing)
Audit Notes: Evaluation target = this skill directory (SKILL.md + example.html [+ example.md]): contains no custom scripts, credential reads, disk writes, or runtime external endpoint requirements. The prompt specifies only layout, palette, font-family names, and content guidelines (font names do not constitute network requests). All external links in the directory are purely 'sample artifact' assets, documented for transparency: cdn.tailwindcss.com (example.html line 6 <script src>), fonts.googleapis.com (example.html line 7 <link>, Inter + Noto Sans SC). Under Batch 4 criteria (endpoints present exclusively in sample artifacts/citations → green), this does not affect the safety rating. Host-side behaviors (loader.ts reading disk, assemblePrompt assembling prompts, agents/invoke.ts invoking local CLIs, and preview iframe sandbox="allow-scripts allow-same-origin") are documented in verdict.risks and do not factor into the template's rating.

5Second-Pass Verification

  • [ok] skill 目录的脚本 / 网络 / 凭证 / 写盘面 — 目录仅 SKILL.md / example.html / example.md 3 个文件,无 scripts/references/数据目录;token 扫描(curl / wget / fetch / exec / spawn / process.env / API_KEY / token / secret / write / save / delete)在该目录的 SKILL.md 中零命中;无自带可执行脚本。
  • [ok] 运行时链路复核 — 重读 loader.ts / shared.ts / app/api/convert/route.ts / app/api/templates/[id]/preview/route.ts:模板正文只作为 prompt body 被 assemblePrompt 拼装,宿主 spawn 本地 CLI 并捕获 stdout;模板不参与任何执行。
  • [ok] commit 与元数据 — 工作副本 git HEAD = 553ed98c283f9c0f489902d035416a972d6a9699(=任务表 pin 的 full 40 位);GitHub API nexu-io/html-anything:stars 8827、license spdx Apache-2.0、pushed_at 2026-09-15T03:36:24Z(与本地 HEAD 提交时间 2026-09-15 11:36:24 +0800 一致)。
  • [discrepancy] README 与源码的 frontmatter schema 漂移(仓库级) — README 第 213 / 217 / 468 行称模板 frontmatter 必须含 mode · scenario · surface · preview · design_system;但在 next/src/lib/templates/skills/ 下 '^mode:'、'^surface:'、'^design_system:' 全部零命中,实际字段是 category / scenario / aspect_hint / featured / recommended + example_*(loader.ts 的 SkillFrontmatter)。文档滞后于代码,不影响本模板运行,但照 README 新写模板会踩空。
  • [ok] frontmatter 元数据映射 — loader.ts fmToMeta 逐字段映射 zhName / enName / emoji / description / category / scenario / aspectHint / tags + featured / recommended + example 卡;本模板取自 SKILL.md 的实际取值与之相符。
  • [ok] example.html 与 SKILL.md 的一致性 — 正文三条硬约束都能在示例找到实现:A4 容器(.page width:210mm / min-height:297mm)、@media print 关阴影与背景、双栏 + 动词开头 bullet 的经历条目。
  • [ok] 端点扫描(目录内) — resume-modern 目录 3 个文件中仅 example.html 含 2 个外部端点(cdn.tailwindcss.com、fonts.googleapis.com);SKILL.md / example.md 零 URL、零工具调用指令。
  • [ok] 「可打印 / 导出 PDF」能力核对 — 不是营销词:example.html 真的带 @media print { body { background:#fff; padding:0; } .page { box-shadow:none; } },浏览器打印即可出 A4。

6Verdict & Scenarios

  • Translates 'printable single-page A4' into actionable constraints (millimeter-level container + print styles) rather than vague adjectives
  • Encodes information architecture alongside writing standards: 60/40 two-column layout + 1–3 verb-led bullets per entry
  • Restrained color palette (monochrome/gray + 1 accent), optimized for printing while constraining model hallucination
  • Includes example.md demonstrating quantified achievement writing (e.g., 50M+ MAU, build time reduced from 18s to 2.4s)
  • Self-proving printable example output: @media print rules are actively implemented
  • Best for: Ideal for Chinese or English resumes requiring a single page, printable or exportable to PDF—especially technical roles, as both prompt directives and examples follow a 'quantified achievements + verb-led' style. Also suitable for template authors looking to adopt a standardized set of A4 layout constraints.
    Not for: Not suitable for multi-page academic CVs (lacks layout support for pagination, table of contents, or publications), resumes requiring photos or bilingual versions (no layout provisions in the prompt), or ATS automated pipelines expecting plain text export—the output is HTML.
    Install Agent-Ready
    ① Verified Mirror 2026-09-15
    Option A · Direct DownloadDownload resume-modern.tar.gz
    sha256: 4f09497e18a7ccfc…
    Option B · Copy Guide for Agent
    install.json
    Agents automatically download and verify mirrors from this JSON guide.
    ② Upstream GitHub
    GitHub Repo ↗
    Pinned to commit 553ed98c28.