A fully interactive, browser-based Python learning platform β no installation required.
| Feature | Description |
|---|---|
| π¦ Course Modules | 12 structured modules from Python basics to testing |
| β¨οΈ Code Editor | In-browser editor with simulated execution and test cases |
| π§ Quiz Arena | 10-question quiz with instant feedback and XP rewards |
| π Project Lab | 9 guided projects sorted by difficulty level |
| π¬ Video Tutorials | Curated YouTube links for every topic |
| π Docs & Resources | Links to official docs, cheatsheets, and practice sites |
| π¬ Community Forum | Ask questions and share solutions with learners |
| π Progress Tracking | XP system, completion rings, weekly activity chart |
| π Badges | 15 achievements to unlock as you learn |
| π Dark / Light Mode | Full theme toggle with smooth transitions |
| π Search | Instant search across all modules and topics |
| π± Mobile Friendly | Fully responsive with collapsible sidebar |
Beginner β Intermediate β Advanced
Variables Β· Loops Β· Functions Β· OOP Β· APIs Β· Testing
π Open Live App
# Clone the repository
git clone https://github.com/yourusername/pycompanion.git
# Navigate into the folder
cd pycompanion
# Open directly in your browser
open index.html
# OR serve with Python's built-in server
python3 -m http.server 8000
# Then visit http://localhost:8000pycompanion/
βββ index.html # Entire app β single self-contained file
βββ README.md # You're reading this
βββ screenshot.png # Preview image (optional)
Note: PyCompanion is intentionally a single HTML file with zero dependencies. No npm, no build step, no frameworks β just open and run.
- Python Basics β variables, types, operators
- Control Flow β if/elif/else
- Loops β for, while, range()
- Functions β def, scope, *args, **kwargs
- Data Structures β lists, dicts, sets, tuples
- List Comprehensions
- File I/O
- Error Handling
- Object-Oriented Programming
- Modules & Packages
- APIs & Requests
- Testing with pytest
- Pure HTML5 / CSS3 / Vanilla JavaScript β zero dependencies
- Google Fonts β Fira Code + DM Sans
- No build tools β works offline after first load
Contributions are welcome! Here's how:
# 1. Fork this repository
# 2. Create a feature branch
git checkout -b feature/add-new-module
# 3. Make your changes to index.html
# 4. Commit with a clear message
git commit -m "Add: Decorators module content"
# 5. Push and open a Pull Request
git push origin feature/add-new-moduleIdeas for contributions:
- Add new quiz questions
- Write new coding exercises
- Add more project ideas
- Improve mobile layout
- Add more resource links
MIT License β free to use, modify, and distribute. See LICENSE for details.
- Python.org β Official documentation
- freeCodeCamp β Inspiration and video content
- Corey Schafer β Python tutorial videos
- Real Python β Resource links
β Star this repo if it helped you!
