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

DashLord হলো একটি ড্যাশবোর্ড যার লক্ষ্য একগুচ্ছ ওয়েবসাইট এবং API-এর টেকনিক্যাল বেস্ট প্র্যাকটিসগুলো ট্র্যাক করা। ডেটা সংগ্রহ এবং রিপোর্ট তৈরির প্রক্রিয়াটি GitHub Actions-এর মাধ্যমে সম্পূর্ণ স্বয়ংক্রিয় করা হয়েছে। ## কার্যপদ্ধতি প্রক্রিয়াটি দুটি ধাপে সম্পন্ন হয়: ১. **ডেটা সংগ্রহ**: কনফিগার করা প্রতিটি URL-এর জন্য, প্রতিটি অ্যানালাইসিস টুল চালানো হয় এবং রিপোজিটরিতে একটি ভার্সনযুক্ত JSON ফাইল তৈরি করে। ২. **রিপোর্ট তৈরি**: ফলাফলগুলো একত্রিত এবং কম্প্রেস করে একটি স্ট্যাটিক ওয়েবসাইট তৈরি করা হয়, যা GitHub Pages-এর মাধ্যমে `gh-pages` ব্রাঞ্চে প্রকাশিত হয়। ## ডেপ্লয়মেন্ট নিজস্ব ইনস্ট্যান্স ডেপ্লয় করতে, DashLord টেমপ্লেট থেকে একটি নতুন রিপোজিটরি তৈরি করতে হবে, স্ক্যান করার URL-গুলো নির্ধারণ করতে `dashlord.yml` ফাইলটি এডিট করতে হবে, এবং তারপর Actions ট্যাব থেকে `DashLord scans` ওয়ার্কফ্লোটি চালু করতে হবে। এরপর রিপোর্টটি `https://[organisation].github.io/[repository]` ঠিকানায় পাবলিকলি অ্যাক্সেস করা যাবে। ## কনফিগারেশন `dashlord.yml` ফাইলের মাধ্যমে নিচের বিষয়গুলো প্যারামিটারাইজ করা যায়: - ড্যাশবোর্ডের শিরোনাম, বিবরণ এবং এনটিটি - স্ক্যান করার URL-এর তালিকা, যার সাথে শিরোনাম, ট্যাগ, সংশ্লিষ্ট রিপোজিটরি এবং সংশ্লিষ্ট Docker ইমেজ থাকে - প্রতিটি অ্যানালাইসিস টুলের পৃথক সক্রিয়করণ বা নিষ্ক্রিয়করণ ## সমন্বিত টুলস DashLord একাধিক অ্যানালাইসিস টুলের ওপর ভিত্তি করে তৈরি, যা আলাদাভাবে সক্রিয় করা যায়: - **নিরাপত্তা**: Nmap (পোর্ট স্ক্যান), ZAP, Nuclei, TestSSL, Trivy (Docker ইমেজের দুর্বলতা), Dependabot (GitHub সিকিউরিটি অ্যালার্ট), CodeQL (Code Scan অ্যালার্ট) - **পারফরম্যান্স এবং প্রাপ্যতা**: Lighthouse, updown.io (API কী-এর মাধ্যমে অ্যাভেইলেবিলিটি মনিটরিং) - **টেকনিক্যাল**: Wappalyzer (টেকনোলজি ডিটেকশন), Mozilla-এর HTTP Observatory, 404 এরর ডিটেকশন, স্ক্রিনশট ক্যাপচার - **কমপ্লায়েন্স**: থার্ড-পার্টি স্ক্রিপ্ট ডিটেকশন, /stats পেজ, অ্যাক্সেসিবিলিটি ডিক্লারেশন স্ক্যান করার ফ্রিকোয়েন্সি কনফিগার করা সম্ভব (ডিফল্টভাবে প্রতি রবিবার মধ্যরাতে) এবং ওয়ার্কফ্লোগুলো ম্যানুয়ালিও ট্রিগার করা যেতে পারে।