প্রকল্প সম্পর্কে

D2 টেক্সট থেকে ডায়াগ্রাম তৈরি করার জন্য একটি ডোমেন-বিশেষ ভাষা। ব্যবহারকারীরা .d2 ফাইল লিখে নোড, সংযোগ, আকৃতি এবং শৈলী বর্ণনা করে, এবং D2 এগুলিকে দৃশ্যমান ডায়াগ্রামে রূপান্তরিত করে। মূল ক্ষমতা হল: - CLI ব্যবহার: `d2 --watch in.d2 out.svg` চালান ব্রাউজার উইন্ডোতে ফাইল পরিবর্তনের সাথে লাইভ-রিলোড সহ SVG উত্পাদন করুন। - রূপান্তর ফরম্যাট: SVG, PNG, GIF, PDF এবং PPTX। - লেআউট ইঞ্জিন: তিনটি বান্ডল ইঞ্জিন - Dagro (ডিফল্ট, হাইরারার্কিক/লেয়ারড লেআউট, Dagre এর নেটিভ Go পোর্ট), ELK (নোড-লিঙ্ক ডায়াগ্রামের জন্য নেটিভ Go পোর্ট যা দিক এবং পোর্ট সম্পর্কে সুবিধাজনক), এবং TALA (অপশনাল, সফটওয়্যার আর্কিটেকচার ডায়াগ্রামের জন্য বিশেষভাবে ডিজাইন করা)। সিকোয়েন্স ডায়াগ্রাম এবং গ্রিডের জন্য বিশেষ লেআউট সমর্থন করা হয়। - থিম: D2 এর বাইরের বাক্সে বিভিন্ন অফিসিয়াল থিম রয়েছে। - ফন্ট: "Source Sans Pro" সহ আসে; বিকল্প ফন্ট কনফিগার করা যায়। - ভাষা টুলিং: পারসার বহুবিধ ত্রুটি বিবৃত করে, অটোফরম্যাটার, সিনট্যাক্স হাইলাইটিং এবং পরিকল্পিত LSP সমর্থন সহ। VSCode এবং Vim এক্সটেনশন অফিসিয়াল প্লাগইন হিসাবে উপলব্ধ। - Go লাইব্রেরি: D2 একটি Go লাইব্রেরি হিসাবে ব্যবহার করা যেতে পারে যাতে প্রোগ্রাম্যাটিকভাবে ডায়াগ্রাম উত্পাদন করা যায়। - rough-go (Rough.js এর নেটিভ Go পোর্ট) দ্বারা স্কেচ-মোড রেন্ডারিং এবং mathjax-go (MathJax এর নেটিভ Go পোর্ট) দ্বারা LaTeX লেবেল সমর্থন। ইনস্টলেশন একটি ইনস্টল স্ক্রিপ্ট (`curl -fsSL https://d2lang.com/install.sh | sh -s --`) দ্বারা, Go সোর্স (`go install github.com/d2lang/d2@latest`) বা রিলিজ সোর্স বিল্ড দ্বারা উপলব্ধ। একটি অনইনস্টল বিকল্পও প্রদান করা হয়। একটি বৃহৎ সম্প্রদায় প্লাগইন পরিসর রয়েছে, যার মধ্যে Obsidian, MdBook, MkDocs, VitePress, Hexo, Pandoc ফিল্টার, Confluence, Logseq, Zed, Emacs, tree-sitter গ্রামার এবং Postgres স্কিমা, MongoDB, Structurizr, AsyncAPI, ROS2 এবং CIL এসেম্বলি এর এক্সপোর্টার জন্য অন্তর্ভুক্তি রয়েছে। play.d2lang.com এ একটি ওয়েব প্লেয়ার উপলব্ধ। D2 বিখ্যাত ওপেন-সোর্স প্রকল্পগুলি যেমন ElasticSearch, Sourcegraph, Temporal, Tauri, IntelliJ, Coder, UC Berkeley, LocalStack এবং Dagger এর ডকুমেন্টেশনে ব্যবহৃত হয়। এটি Mozilla Public License 2.0 এর অধীনে লাইসেন্স প্রাপ্ত। কোনো টেলিমেট্রি সংগ্রহ করা হয় না; D2 ইন্টারনেট সংযোগ ছাড়া ইনস্টলেশনের পর কখনও ব্যবহার করে না কেবলমাত্র GitHub থেকে সময়ের সাথে সাথে সংস্করণ আপডেট চেক করার জন্য।