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.
