Belajarpython is an open-source Eleventy website for learning Python in English and Uzbek.
This repository currently includes:
- Step-by-step Python tutorials (
content/en/tutorial,content/uz/tutorial) - Data Structures & Algorithms roadmap/content pages (
content/{en,uz}/{data-structures,algorithms}) - Browser-based Python tools under
tools/(for example Online IDE and formatter utilities)
This repository does not contain a forum/Q&A backend.
- Node.js + npm
- Eleventy (
@11ty/eleventy) - Tailwind CSS
- Node.js
20.x - npm
10.x(or npm version bundled with Node 20)
Install dependencies:
npm ciStart development server + Tailwind watch:
npm run devBuild production output:
npm run buildRun validation checks:
npm run check- Root
/redirects to/en/ - English homepage:
/en/ - Uzbek homepage:
/uz/ - Tutorial URLs:
/en/tutorial/{slug}//uz/tutorial/{slug}/
- English tutorials:
content/en/tutorial/{basic,intermediate,advanced}/*.md - Uzbek tutorials:
content/uz/tutorial/{basic,intermediate,advanced}/*.md - Data structures:
content/{en,uz}/data-structures/*.md - Algorithms:
content/{en,uz}/algorithms/*.md
Before opening a pull request, ensure all of these pass:
npm run build
npm run checknpm run check validates metadata consistency, localization structure, internal links, and JSON-LD integrity.
It also validates runnable Python snippets for standalone execution (with nearby-snippet context fallback).
If a snippet intentionally requires external setup (network, DB, local modules, framework app context), mark it with:
# non-runnable: requires external environment/setupAnalytics is optional and disabled by default. To enable GA4 tracking, set:
GA4_MEASUREMENT_ID=G-XXXXXXXXXXSee the contribution guide: .github/CONTRIBUTING.md
MIT — see LICENSE
