From b421d2964cb15c58314d05205471e77df10c8a8b Mon Sep 17 00:00:00 2001 From: defiQUG Date: Tue, 11 Nov 2025 09:13:22 -0800 Subject: [PATCH] feat: Add documentation scripts for diagram exports and refresh process --- package.json | 6 +++++- scripts/generate-doc-index.mjs | 12 +++++++++++- 2 files changed, 16 insertions(+), 2 deletions(-) diff --git a/package.json b/package.json index b73bdf8..ff5a54a 100644 --- a/package.json +++ b/package.json @@ -9,7 +9,11 @@ "build": "tsc && vite build", "lint": "eslint . --ext ts,tsx --report-unused-disable-directives --max-warnings 0", "preview": "vite preview", - "deploy": "npm run build && gh-pages -d dist" + "deploy": "npm run build && gh-pages -d dist", + "diagram:png": "node scripts/export-architecture.mjs --format=png", + "diagram:svg": "node scripts/export-architecture.mjs --format=svg", + "docs:index": "node scripts/generate-doc-index.mjs", + "docs:refresh": "npm run docs:index && npm run diagram:png" }, "keywords": [ "non-profit", diff --git a/scripts/generate-doc-index.mjs b/scripts/generate-doc-index.mjs index cd22080..df10d29 100644 --- a/scripts/generate-doc-index.mjs +++ b/scripts/generate-doc-index.mjs @@ -46,7 +46,17 @@ function build() { for (const cat of Object.keys(byCategory).sort()) { body += `### ${cat}\n` + byCategory[cat].map(f => `- ${f}`).join('\n') + '\n\n' } - + // Append diagram export instructions (persistent section) + body += '## Diagram Export\n' + body += 'The architecture diagram source is `ArchitectureDiagram.mmd`. Export updated images using:\n\n' + body += '```bash\n' + body += 'npm run diagram:png\n' + body += 'npm run diagram:svg\n' + body += '```\n\n' + body += 'Refresh docs index and PNG in one step:\n\n' + body += '```bash\n' + body += 'npm run docs:refresh\n' + body += '```\n\n' body += '---\nLast regenerated: ' + new Date().toISOString() + '\n' writeFileSync(OUTPUT, body) console.log('docs/README.md regenerated.')