This is the training course to master the Python programming language. This includes the very basics programming topics like data types, variables and object-oriented programming and advanced topics like multithreading and web-frameworks for Python.
Current repository is dependent on some other repos (is multi-repo). You may clone it, but this would not download the source of other repos. To get the full content, do:
git clone <this_repo_url> [local_repository]
# cd into cloned repo and switch to devel branch
git switch devel
# clone submodules content
git submodule update --init --recursiveThis project comes with dependencies listed in formats suitable for pip and poetry package managers. It's recommended to use virtual environment while working with this project.
To install dependencies via pip do:
pip install -r requirements.txt
To do the same using poetry:
poetry install
This repository comes with Makefile. For now this is the easiest way to do anything within this source code. There are several targets defined:
cleanwill clean up the documentation buildshtmlwill create HTML pageslocaleswill create/update translations
Just do:
make <target> # e.g. make htmlBy default all builds are done for english locale.
Define LANGUAGE environment variable to build documents for other locales.
LANGUAGE=uk make htmlUsing make without arguments (targets) will clean up documentation and
build HTML pages for en and uk locales.
makeThis command is equal to:
make clean
LANGUAGE=en make html
LANGUAGE=uk make htmlmake just automates the build process, however in case you don't have it
installed, you can run builds manually:
sphinx-build -b html -D language=en src _build/html/en
sphinx-build -b html -D language=uk src _build/html/ukThe project is being migrated to MkDocs with Material theme. MkDocs provides a modern documentation experience with Markdown authoring.
- Python 3.9 or higher (MkDocs setup is regularly tested on Python 3.11+)
- uv (Python package manager)
# Clone repository
git clone https://github.com/OpenRoost/pymastery-vp.git
cd pymastery-vp
# Install dependencies
uv sync
# Serve documentation locally (with live reload)
uv run mkdocs serve
# Open http://127.0.0.1:8000 in your browser# Build static site
uv run mkdocs build
# Output will be in ./site/ directorycontent/ en/ # English course content (Markdown) uk/ # Ukrainian translations (in progress) ru/ # Legacy Russian content (historical) mkdocs.yml # MkDocs configuration pyproject.toml # Project dependencies src/ # Legacy Sphinx source (being phased out)
This is an open-source project, so anyone is welcome to contribute to it. Please see contributing guide for more details.