A comprehensive learning platform for Python programming, from beginner to advanced levels.
- 🐍 Structured learning paths for all skill levels
- 📚 Curated free resources and tutorials
- 💻 Coding problems from LeetCode and HackerRank
- 🧪 Interactive code examples with live execution
- 📊 Progress tracking and personalized recommendations
- 🛠️ Project ideas with starter code
- 👥 Community forum for discussions
-
Create a GitHub repository
- Create a new repository and upload all these files
- Make sure to include all .py files, the data folder, and all configuration files
-
Sign up for Streamlit Cloud
- Go to Streamlit Cloud
- Sign in with your GitHub account
-
Deploy your app
- Click "New app"
- Select your repository, branch, and main file (app_updated.py)
- Set the Python version to 3.9 or higher
- Deploy!
-
Install dependencies
- Rename
requirements_deploy.txttorequirements.txt - Run
pip install -r requirements.txt
- Rename
-
Initialize the database
- Run
python init_db.py
- Run
-
Start the application
- Run
streamlit run app_updated.py
- Run
app_updated.py: Main application filedatabase.py: Database schema and migrationsdb_utils.py: Database utilitiesinit_db.py: Database initializationpages/: Directory containing page modulesbeginner_updated.py: Beginner resourcesintermediate.py: Intermediate resourcesadvanced.py: Advanced resourcespractice.py: Coding problems from LeetCode and HackerRankprojects.py: Project ideasprogress.py: Progress trackingcommunity.py: Community forum
- Create an account by entering a username
- Browse resources by your skill level
- Mark resources as completed to track progress
- Practice coding problems from LeetCode and HackerRank
- Work on suggested projects
- Track your progress and level up as you learn more
All data is stored in a SQLite database (data/python_learning.db). This includes:
- User accounts and progress
- Learning resources
- Projects
- Coding problems
- Community discussions
This platform curates free resources from across the web to help you learn Python programming from beginner to advanced levels. All content is organized to provide a structured learning path.