overview
Download SVG ↓From Markdown to useful links
Swipe diagram ↔ / 左右滑动查看完整图表
architecture
Download SVG ↓Three parts. Nothing hosted.
Swipe diagram ↔ / 左右滑动查看完整图表
quickstart
Download SVG ↓Your first result in three steps
Swipe diagram ↔ / 左右滑动查看完整图表
Put it in your README
These paths assume your README is beside the SVGs. Adjust the prefix when copying into your repository.
Sources, not assumptions
File paths and line ranges were checked. This does not verify meaning or architecture edges. Review all claims and excerpts before publishing; excerpts may contain private data.
overview / read main.mjs:2–5
const input = process.argv[2];
if (!input) { console.error('Usage: node main.mjs file.md'); process.exit(1); }
try {
const markdown = await readFile(input, 'utf8');overview / extract main.mjs:6–7
const links = [...markdown.matchAll(/\[[^\]]+\]\((https?:\/\/[^\s)]+)\)/g)].map(match => match[1]); const unique = [...new Set(links)];
overview / output main.mjs:8–8
console.log(JSON.stringify(unique, null, 2));
architecture / file main.mjs:2–5
const input = process.argv[2];
if (!input) { console.error('Usage: node main.mjs file.md'); process.exit(1); }
try {
const markdown = await readFile(input, 'utf8');architecture / parser main.mjs:6–7
const links = [...markdown.matchAll(/\[[^\]]+\]\((https?:\/\/[^\s)]+)\)/g)].map(match => match[1]); const unique = [...new Set(links)];
architecture / stdout main.mjs:8–8
console.log(JSON.stringify(unique, null, 2));
quickstart / runtime README.md:7–7
Requires Node.js 22+; no packages to install.
quickstart / run README.md:8–9
From this fixture directory: `node main.mjs sample.md`
quickstart / save README.md:9–10
`node main.mjs sample.md` The output is a JSON array printed to standard output.