Markdy: دیاگرام معماری که حرکت میکنه
خلاصهٔ کاملتر
Markdy یه DSL متنبازه (یعنی یه زبان کوچیک مخصوص یه کار خاص) برای ساخت دیاگرامهای معماری متحرک. تو نودها، گروهها، جریانها و beatها (یعنی قدمهای زمانبندیشدهی انیمیشن) رو بهشکل متن مینویسی. چیدمان، جلوگیری از همپوشانی و حرکتها رو خود Markdy انجام میده، یعنی دیگه لازم نیست مختصات یا keyframe دستی تعریف کنی.
سازندهها میگن Mermaid، D2 و PlantUML عکس ثابت میسازن، ولی Markdy برای نشون دادن حرکت سیستم ساخته شده. مثلاً مسیر یه درخواست، invalidate شدن کش یا جریان رویدادها. رندرش هم با Web Animations API مرورگر و المانهای DOM و CSS transform انجام میشه، نه canvas یا ویدیو. برای همین خروجی تو هر رزولوشنی واضحه و سبکه.
یه تیکه از مثال خود سایت، که یه flowchart رو به صحنهی متحرک تبدیل کرده:
scene theme=paper type=flowchart
service Client "Client Browser"
gateway Gateway "API Gateway"
beat flow:
show $nodes stagger=60ms
Client -> Gateway "POST /login"هر خط service یا gateway یه نود با نقش مشخص میسازه و بلوک beat ترتیب نمایش و پیامها رو تعیین میکنه. به گفتهی سازندهها 17 نوع دیاگرام داره، مثل architecture، sequence، swimlane، gantt و medallion، بهعلاوهی 8 تم مثل paper، terminal، sketchy و blueprint.
برای شروع از صفر هم مجبور نیستی. با دستور markdy import میشه فایلهای Mermaid، Docker Compose، Kubernetes و Terraform رو به صحنهی Markdy تبدیل کرد. پشتیبانی از Draw.io هنوز بتاست. خروجی هم میتونه HTML مستقل، SVG، PNG یا کامپوننت Astro و MDX باشه.
دو بخش دیگه هم داره. یکی @markdy/mcp-server که Claude Desktop، Cursor و Antigravity رو وصل میکنه و به گفتهی سازندهها AST رو چک میکنه و غلطهای تایپی نودها رو خودش درست میکنه. دومی linter مخصوص CI/CD با markdy check و markdy lint که حلقههای deadlock و دور زدن لایهها تو معماری رو پیدا میکنه.
نکات کلیدی:
- Markdy متنبازه و انیمیشنهاش رو با Web Animations API تو مرورگر اجرا میکنه.
- ورودیهای Mermaid، Docker Compose، Kubernetes و Terraform پایدارن و Draw.io بتاست.
- خروجیها شامل HTML مستقل، SVG، PNG و پکیجهای @markdy/astro و @markdy/mdx هستن.
- پکیج @markdy/mcp-server برای Claude Desktop، Cursor و Antigravity ارائه شده.
- دستورهای markdy check و markdy lint تو CI حلقههای deadlock رو پیدا میکنن.




