Skip to content

Tavuk-Pilav/python-learning-ai

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

15 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Python Learning Platform 🚀

An interactive educational platform powered by artificial intelligence for learning Python programming language. The platform features an AI-powered teaching assistant that guides users through step-by-step Python learning.

🌐 Demo

Access the live version of the project at https://python-learning-ai.onrender.com

Test Account

Any email and 6-digit password are sufficient for registration and login.

Demo Features

  • Access to all core functionalities
  • Unlimited chat sessions
  • Code analysis support
  • Dark/Light theme options
image

🌟 Features

1. Intelligent Teaching Assistant

  • Interactive tutor powered by Google Gemini AI
  • Content that adapts to student proficiency
  • Real-time feedback and assessment
  • Code examples and explanations

2. Code Analysis Tool

  • Code analysis from GitHub repositories
  • Detailed code evaluation reports
  • Security and performance recommendations
  • Jupyter Notebook support

3. Comprehensive Curriculum

  • Python fundamentals
  • Object-Oriented Programming
  • Data Structures and Algorithms
  • Advanced Python topics

4. User Features

  • Personal session management
  • Progress tracking
  • Dark/Light theme support
  • Responsive design

🔧 Technology Stack

  • Backend: Flask (Python)
  • Frontend: HTML, CSS, JavaScript, React
  • Database: Firebase Firestore
  • Authentication: Firebase Authentication
  • AI: Google Gemini AI
  • Styling: Tailwind CSS
  • Code Highlighting: Prism.js

💻 Installation

  1. Clone the repository
git clone https://github.com/Tavuk-Pilav/python-learning-ai.git
cd python-learning-ai
  1. Install required Python packages
pip install -r requirements.txt
  1. Create necessary configuration files

.env file:

API_KEY="your_firebase_api_key"
GEMINI_API_KEY="your_gemini_api_key"

Place firebase-credentials.json in the project root directory.

  1. Launch the application
python app.py

📝 Usage Guide

  1. Authentication

    • Register with email and password
    • Sign in using Firebase Authentication
  2. Topic Selection

    • View topics in the left panel
    • Select desired topic
  3. Learning

    • Interactive chat with the assistant
    • Try code examples
    • Receive instant feedback
  4. Code Analysis

    • Click the code analysis button in the bottom right
    • Enter GitHub URL
    • View detailed analysis report

🔐 Security

  • Secure login with Firebase Authentication
  • Secure communication over HTTPS
  • Safe storage of user data
  • API key protection through environmental variables

🤝 Contributing

  1. Fork the repository
  2. Create a feature branch (git checkout -b feature/amazing-feature)
  3. Commit your changes (git commit -m 'Add amazing feature')
  4. Push to the branch (git push origin feature/amazing-feature)
  5. Open a Pull Request

📜 License

This project is licensed under the MIT License. See LICENSE for details.

👥 Team