An interactive AI-powered Python tutor — built for all skill levels.
Adaptive explanations. Live code examples. Instant feedback. Powered by Google Gemini.
| Feature | Description |
|---|---|
| 🎯 Adaptive Learning | Tailored explanations for beginner, intermediate, and advanced learners |
| 💻 Interactive Examples | Run code snippets directly inside the app |
| 📚 50+ Question Bank | Pre-loaded with curated Python questions across all skill levels |
| ⚡ Real-time Feedback | Instant AI-driven explanations and corrections |
| 🗂️ Session History | Progress tracking that persists throughout your learning session |
- Python 3.10+
- A free Gemini API key
# 1. Clone the repository
git clone https://github.com/yourusername/python-learning-assistant.git
cd python-learning-assistant
# 2. Create and activate a virtual environment
python -m venv venv
source venv/bin/activate # macOS / Linux
.\venv\Scripts\activate # Windows
# 3. Install dependencies
pip install -r requirements.txt
# 4. Add your API key
echo "GEMINI_API_KEY=your_api_key_here" > .env
# 5. Launch the app
streamlit run python-assistant.pyThen open http://localhost:8501 in your browser. 🎉
PYTHON-LEARNING-ASSISTANT/
├── .devcontainer/ # VSCode dev container configuration
├── .github/ # GitHub Actions workflows
├── venv/ # Python virtual environment (gitignored)
├── .env # Environment variables (gitignored)
├── .gitignore
├── LICENSE
├── python-assistant.py # Main Streamlit application
├── README.md
└── requirements.txt # Python dependencies
🟢 Beginner
- "Explain variables and data types in Python"
- "How do if-else statements work?"
- "What are lists and how do I use them?"
🟡 Intermediate
- "Explain OOP concepts with a class example"
- "How do I handle file I/O operations?"
- "What are decorators and when should I use them?"
🔴 Advanced
- "Explain metaclasses with real-world use cases"
- "How can I optimize Python code performance?"
- "Implement a custom context manager"
- Open the project folder in VSCode
- Press
F1→ select "Remote-Containers: Reopen in Container" - The environment configures automatically — no manual setup needed
streamlit>=1.32.0
google-generativeai>=0.3.0
python-dotenv>=1.0.0
Contributions are welcome and appreciated! Here's how to get started:
- Fork this repository
- Create a feature branch:
git checkout -b feature/your-feature-name - Commit your changes:
git commit -m 'feat: add your feature' - Push to your branch:
git push origin feature/your-feature-name - Open a Pull Request
For major changes, please open an issue first to discuss what you'd like to change.
Distributed under the MIT License. See LICENSE for details.
