{"id":"e6478f43-a2d1-48a4-aa0b-496a381ed7ca","shortId":"qDSqUY","kind":"skill","title":"md-to-docx","tagline":"Convert Markdown files to professionally formatted Word (.docx) documents with embedded PNG images — pure JavaScript, no external tools required","description":"# Markdown to Word (.docx) Skill\n\nConvert Markdown (`.md`) files into professionally formatted Word (`.docx`) documents with embedded PNG images. Uses **pure JavaScript** via the `docx` and `marked` npm packages — no Pandoc, LibreOffice, or any native binary required.\n\n## How to Convert\n\n```bash\n# Install dependencies (one-time, from the scripts folder)\ncd skills/md-to-docx/scripts && npm install\n\n# Convert (run from workspace root)\nnode skills/md-to-docx/scripts/md-to-docx.mjs <input.md> [output.docx]\n```\n\nIf `output.docx` is omitted, it defaults to `<input-basename>.docx` in the current directory.\n\n## Skill Folder Contents\n\n| File | Purpose |\n|------|---------|\n| `SKILL.md` | This instruction file |\n| `scripts/md-to-docx.mjs` | Node.js Markdown-to-Word converter |\n| `scripts/package.json` | Dependencies (`docx`, `marked`) |\n\n## Prerequisites\n\n| Requirement | Version | Notes |\n|-------------|---------|-------|\n| **Node.js** | 18+ | Required runtime |\n| **`docx`** | 9+ | Pure JS Word document generator |\n| **`marked`** | 15+ | Markdown parser |\n\nNo native binaries. No system-level installs. Works on Windows, macOS, and Linux.\n\n## Features\n\nThe converter:\n\n- **Extracts YAML front-matter** — uses `title`, `date`, `version`, `audience` for the title page\n- **Generates a title page** — with project name, subtitle, date, version, and audience\n- **Generates a table of contents** — built from H1-H3 headings\n- **Embeds PNG images** — resolves `![alt](path)` references relative to the input `.md` file, reads the PNG, and embeds it inline in the Word document\n- **Styled output** — Calibri font, colored headings (`#1F3864`), styled tables with alternating row colors, code blocks in Consolas\n- **Handles all Markdown elements** — headings, paragraphs, tables, code blocks, lists, images, links, horizontal rules\n\n## Image Embedding\n\nThe converter automatically embeds PNG images referenced in the Markdown:\n\n```markdown\n![High-Level Architecture](diagrams/high-level-architecture.drawio.png)\n```\n\nThe image path is resolved **relative to the input Markdown file**. The PNG is read, dimensions are extracted from the PNG header, and the image is scaled to fit within 6 inches width while preserving aspect ratio.\n\nIf an image file is not found, a placeholder `[Image not found: <path>]` is inserted.\n\n## Front-Matter Format\n\n```yaml\n---\ntitle: Project Name — Project Summary\ndate: 2025-01-15\nversion: 1.0\naudience: Engineering Team, Architects, Stakeholders\n---\n```\n\nThe title is split on `—` or `–` into main title and subtitle for the title page.","tags":["docx","awesome","copilot","github","agent-skills","agents","custom-agents","github-copilot","hacktoberfest","prompt-engineering"],"capabilities":["skill","source-github","skill-md-to-docx","topic-agent-skills","topic-agents","topic-awesome","topic-custom-agents","topic-github-copilot","topic-hacktoberfest","topic-prompt-engineering"],"categories":["awesome-copilot"],"synonyms":[],"warnings":[],"endpointUrl":"https://skills.sh/github/awesome-copilot/md-to-docx","protocol":"skill","transport":"skills-sh","auth":{"type":"none","details":{"cli":"npx skills add github/awesome-copilot","source_repo":"https://github.com/github/awesome-copilot","install_from":"skills.sh"}},"qualityScore":"0.700","qualityRationale":"deterministic score 0.70 from registry signals: · indexed on github topic:agent-skills · 33270 github stars · SKILL.md body (2,564 chars)","verified":false,"liveness":"unknown","lastLivenessCheck":null,"agentReviews":{"count":0,"score_avg":null,"cost_usd_avg":null,"success_rate":null,"latency_p50_ms":null,"narrative_summary":null,"summary_updated_at":null},"enrichmentModel":"deterministic:skill-github:v1","enrichmentVersion":1,"enrichedAt":"2026-05-18T18:52:16.696Z","embedding":null,"createdAt":"2026-05-01T00:52:04.908Z","updatedAt":"2026-05-18T18:52:16.696Z","lastSeenAt":"2026-05-18T18:52:16.696Z","tsv":"'-01':327 '-15':328 '1.0':330 '15':134 '18':123 '1f3864':221 '2025':326 '6':294 '9':127 'alt':195 'altern':225 'architect':334 'architectur':262 'aspect':299 'audienc':163,179,331 'automat':250 'bash':64 'binari':59,139 'block':229,240 'built':185 'calibri':217 'cd':74 'code':228,239 'color':219,227 'consola':231 'content':100,184 'convert':5,29,63,78,113,153,249 'current':96 'date':161,176,325 'default':91 'depend':66,115 'diagrams/high-level-architecture.drawio.png':263 'dimens':279 'directori':97 'document':13,38,131,214 'docx':4,12,27,37,48,93,116,126 'element':235 'emb':191,208,251 'embed':15,40,247 'engin':332 'extern':21 'extract':154,281 'featur':151 'file':7,32,101,106,203,274,304 'fit':292 'folder':73,99 'font':218 'format':10,35,318 'found':307,312 'front':157,316 'front-matt':156,315 'generat':132,168,180 'h1':188 'h1-h3':187 'h3':189 'handl':232 'head':190,220,236 'header':285 'high':260 'high-level':259 'horizont':244 'imag':17,42,193,242,246,253,265,288,303,310 'inch':295 'inlin':210 'input':201,272 'insert':314 'instal':65,77,144 'instruct':105 'javascript':19,45 'js':129 'level':143,261 'libreoffic':55 'link':243 'linux':150 'list':241 'maco':148 'main':343 'mark':50,117,133 'markdown':6,24,30,110,135,234,257,258,273 'markdown-to-word':109 'matter':158,317 'md':2,31,202 'md-to-docx':1 'name':174,322 'nativ':58,138 'node':83 'node.js':108,122 'note':121 'npm':51,76 'omit':89 'one':68 'one-tim':67 'output':216 'output.docx':85,87 'packag':52 'page':167,171,350 'pandoc':54 'paragraph':237 'parser':136 'path':196,266 'placehold':309 'png':16,41,192,206,252,276,284 'prerequisit':118 'preserv':298 'profession':9,34 'project':173,321,323 'pure':18,44,128 'purpos':102 'ratio':300 'read':204,278 'refer':197 'referenc':254 'relat':198,269 'requir':23,60,119,124 'resolv':194,268 'root':82 'row':226 'rule':245 'run':79 'runtim':125 'scale':290 'script':72 'scripts/md-to-docx.mjs':107 'scripts/package.json':114 'skill':28,98 'skill-md-to-docx' 'skill.md':103 'skills/md-to-docx/scripts':75 'skills/md-to-docx/scripts/md-to-docx.mjs':84 'source-github' 'split':339 'stakehold':335 'style':215,222 'subtitl':175,346 'summari':324 'system':142 'system-level':141 'tabl':182,223,238 'team':333 'time':69 'titl':160,166,170,320,337,344,349 'tool':22 'topic-agent-skills' 'topic-agents' 'topic-awesome' 'topic-custom-agents' 'topic-github-copilot' 'topic-hacktoberfest' 'topic-prompt-engineering' 'use':43,159 'version':120,162,177,329 'via':46 'width':296 'window':147 'within':293 'word':11,26,36,112,130,213 'work':145 'workspac':81 'yaml':155,319","prices":[{"id":"02cd422a-f889-403f-87eb-56e455268af4","listingId":"e6478f43-a2d1-48a4-aa0b-496a381ed7ca","amountUsd":"0","unit":"free","nativeCurrency":null,"nativeAmount":null,"chain":null,"payTo":null,"paymentMethod":"skill-free","isPrimary":true,"details":{"org":"github","category":"awesome-copilot","install_from":"skills.sh"},"createdAt":"2026-05-01T00:52:04.908Z"}],"sources":[{"listingId":"e6478f43-a2d1-48a4-aa0b-496a381ed7ca","source":"github","sourceId":"github/awesome-copilot/md-to-docx","sourceUrl":"https://github.com/github/awesome-copilot/tree/main/skills/md-to-docx","isPrimary":false,"firstSeenAt":"2026-05-01T00:52:04.908Z","lastSeenAt":"2026-05-18T18:52:16.696Z"}],"details":{"listingId":"e6478f43-a2d1-48a4-aa0b-496a381ed7ca","quickStartSnippet":null,"exampleRequest":null,"exampleResponse":null,"schema":null,"openapiUrl":null,"agentsTxtUrl":null,"citations":[],"useCases":[],"bestFor":[],"notFor":[],"kindDetails":{"org":"github","slug":"md-to-docx","github":{"repo":"github/awesome-copilot","stars":33270,"topics":["agent-skills","agents","ai","awesome","custom-agents","github-copilot","hacktoberfest","prompt-engineering"],"license":"mit","html_url":"https://github.com/github/awesome-copilot","pushed_at":"2026-05-18T01:26:59Z","description":"Community-contributed instructions, agents, skills, and configurations to help you make the most of GitHub Copilot.","skill_md_sha":"59e9a142f2266a55c258235804716c09aeef187d","skill_md_path":"skills/md-to-docx/SKILL.md","default_branch":"main","skill_tree_url":"https://github.com/github/awesome-copilot/tree/main/skills/md-to-docx"},"layout":"multi","source":"github","category":"awesome-copilot","frontmatter":{"name":"md-to-docx","description":"Convert Markdown files to professionally formatted Word (.docx) documents with embedded PNG images — pure JavaScript, no external tools required"},"skills_sh_url":"https://skills.sh/github/awesome-copilot/md-to-docx"},"updatedAt":"2026-05-18T18:52:16.696Z"}}