এই reading site কীভাবে চালাবেন¶
Live site: dsa.debwashis.com। এটি Markdown থেকে তৈরি MkDocs Material site; Cloudflare Workers static files serve করে।
Local preview¶
Terminal-এ repository root খুলুন, যেখানে mkdocs.yml আছে। Python 3.12 ব্যবহার করে চালান:
Browser-এ http://127.0.0.1:8000 খুলুন। File edit করলে preview refresh হয়। বন্ধ করতে terminal-এ Ctrl+C দিন।
ফোনে একই Wi-Fi থেকে দেখতে চাইলে:
এরপর ফোনে কম্পিউটারের local IP-এর সঙ্গে :8000 যোগ করে খুলুন। Windows-এ ipconfig থেকে local IPv4 address পাওয়া যায়।
Publish-এর আগে যাচাই¶
Strict build missing page/anchor ধরবে। পরের check generated HTML-এর internal link, UTF-8, search index, প্রতিটি Markdown download ও ZIP যাচাই করে। এটি সব algorithm-এর correctness বা বাইরের website-এর availability পরীক্ষা করে না।
Browser-এ home → chapter → ছবি → problem খুলুন। বাংলা যুক্তাক্ষর, light/dark mode, সরু পর্দায় table/diagram scroll, search ও download পরীক্ষা করুন। Mermaid graph-এর জন্য JavaScript এবং প্রথমবার runtime নামাতে network দরকার; text diagram ও table সরাসরি HTML-এ থাকে।
GitHub থেকে live site¶
পরিবর্তন branch-এ push করে Pull Request খুলুন। GitHub-এর Check learning site workflow সফল হলে review করে main-এ merge করুন। তারপর বিদ্যমান Cloudflare Workers integration site build ও deploy করবে। Workers Builds: dsa-lessons check থেকে deployment-এর ফল দেখুন।
সঠিক build command ও hosting নির্দেশনার জন্য Deploy guide পড়ুন। এই সাইটের জন্য GitHub Pages চালু করার প্রয়োজন নেই।
ছোটখাটো সমস্যা¶
mkdocscommand পাওয়া না গেলেpython -m mkdocsব্যবহার করুন; dependency install-এর জন্যও একই Python ব্যবহার করুন।same-dirplugin পাওয়া না গেলেpython -m pip install -r requirements.txtচালান।- বাংলা font অদ্ভুত দেখালে hard refresh করুন এবং
assets/fonts/NotoSansBengali.ttfলোড হচ্ছে কি না দেখুন। Font সাইটের সঙ্গেই আছে। - Mermaid-এর বদলে code দেখা গেলে browser console ও runtime request দেখুন; fenced block-এর ভাষা
mermaidহতে হবে। - নতুন problem note যোগ করলে সংশ্লিষ্ট
problems/README.md-তে local note ও official task link যোগ করুন। Chapter navigation মূল Markdown file থেকে তৈরি হয়।
docs_dir: . মানে repository-র Markdown-ই site-এর content। mkdocs-same-dir plugin এই গঠন সমর্থন করে। Build output _site/; এটি Git-এ commit করার দরকার নেই।