Skip to content

ApoorvMani/python-tutor-interactive

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Python Tutor: Start to Pro 🚀

An interactive, gamified desktop application designed to teach Python programming from absolute basics to advanced, cybersecurity-focused concepts.

Features ✨

  • Interactive Syllabus Tree: Tracks your completion across multiple modules.
  • Embedded Python Editor: A native code execution environment with standard output.
  • Advanced Code Editor: Supports real-time VS Code Dark+ syntax highlighting and smart auto-indentation. Includes a fully resizable Popout Editor mode for larger scripts.
  • AI Tutor & Expansions: Integrates directly with deepseek-r1:latest via Ollama to dynamically expand short lesson concepts into deep, book-like chapters.
  • AI Code Hints: Stuck on an error? Ask the AI Tutor for a contextual hint based directly on the code you've written in the editor.
  • Dynamic Quizzes: Test your knowledge on-demand! Generates custom JSON-parsed Multiple Choice and Fill-in-the-blank questions for any lesson material.
  • RPG Gamification: Earn XP for running correct code logic, passing quizzes, and level up your coding profile (with confetti celebrations!).
  • Persistent Progress: Your chat history with the AI Tutor, your cached lesson generations, and your leveling profile are saved between sessions.

🛠️ Running the Application

Prerequisites

  1. Python 3.10+ installed on your system.
  2. Ollama: You must have Ollama installed and running locally.
  3. Deepseek Model: Pull the required language model via terminal:
    ollama run deepseek-r1:latest

Installation

Clone the repository and install the UI/Backend requirements:

git clone https://github.com/ApoorvM/python-tutor-interactive.git
cd python-tutor-interactive

pip install customtkinter pygments requests markdown2 tkhtmlview

Launch

Run the main script from the root directory:

python main.py

📚 Course Syllabus

The internal curriculum takes you from absolute beginner to writing complex cybersecurity scripts natively in Python.

  1. Module 1: Getting Started
    • Variables, Types, Math Operations, First Project (Tip Calculator).
  2. Module 2: Data Types Deeply
    • Strings & Methods, f-strings, Booleans & Comparisons.
  3. Module 3: Control Flow
    • If/Elif/Else, Lists, For Loops, Hash Maps, Inventory Generator Project.
  4. Module 4: Functions & Organization
    • Defining custom Methods, Default parameters, List Comprehensions.
  5. Module 5: Object-Oriented Prog. (OOP)
    • Classes, Instances, Methods, Inheritance, Bank Account Project.
  6. Module 6: Advanced Concepts
    • Try/Except Error Handling, Lambdas, Map & Filter, Decorators.
  7. Module 8: Cyber - Networking & Sockets
    • Intro to Sockets AF_INET, Building Port Scanners, Banner Grabbing.
  8. Module 9: Cyber - Cryptography & Hashing
    • Base64 Encoding/Decoding, hashlib SHA-256 / MD5, Password Dictionary Attacks.
  9. Module 10: The Master Python Developer
    • Generators & Yielding, Ultimate Project Architecture Assessment.

About

An interactive desktop application for learning Python contextually.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages