Learn Python from zero to hero — right from your phone.
No server. No ads. No account needed. Just you, your device, and Python.
Getting Started • Features • Chapters • Tech Stack • Screenshots • Contributing
Python 💻 is an interactive learning platform designed for absolute beginners. It includes structured lessons covering fundamentals, hands-on coding exercises, quizzes to test your knowledge, progress tracking, and a clean modern interface. Whether you're new to programming or looking to refresh your skills, this app makes Python easy to learn at your own pace.
- Runs 100% offline — real Python code executes on-device via Pyodide (WebAssembly)
- Works on Android (APK) and any browser (PWA/Web)
- No login required — all progress saved locally
- Dark hacker glassmorphism UI with smooth animations
- 23 structured chapters covering Python from basics to OOP
- Real code execution — run Python code directly in the app
- Interactive challenges with auto-grading via Pyodide
- Quizzes (MCQ, fill-in-the-blank, predict-the-output, drag-and-drop)
- Fun Tasks — mini-projects per chapter (Mad-Libs, Caesar cipher, etc.)
- XP & Leveling System — earn XP for completing challenges
- Streak Tracking — maintain your daily coding streak
- Badges & Achievements — unlock rewards as you progress
- Boss Level Arena — 10-level guided game-building capstone project
- Skill Tree Map — visual network graph of your learning path
- The Oracle — offline rubber-duck mentor for code explanations
- White-Hat Practice Track — cybersecurity-themed Python challenges
- Code Golf Mode — compare your solution length to the shortest known solution
- Unlockable Terminal Skins — earn new themes with XP milestones
- Hidden Easter Egg Chapter — unlock with the Konami code
- Exportable Certificates — downloadable completion certificates
- Adaptive Difficulty — adjusts challenge difficulty based on your performance
- Practice Arena — random challenges from unlocked chapters
- Daily Challenge — new challenge every day
- Code Riddles — bite-size logic puzzles
- Debug the Hacker — fix broken code snippets
- Predict the Output — rapid-fire code prediction
- Speed Type — typing simulator for syntax muscle memory
| # | Chapter | Topics |
|---|---|---|
| 0 | Welcome to the Terminal | Python intro, print(), comments |
| 1 | Variables & Data Types | int, float, str, bool, type casting |
| 2 | All Operators | Arithmetic, assignment, comparison, logical, bitwise |
| 3 | Strings & Text Manipulation | Slicing, f-strings, methods |
| 4 | Conditionals | if/elif/else, ternary, match-case |
| 5 | Loops | for, while, range, break/continue |
| 6 | Lists | Indexing, slicing, comprehensions |
| 7 | Tuples & Sets | Immutable sequences, set operations |
| 8 | Dictionaries | CRUD, nested dicts, comprehension |
| 9 | Functions | args, kwargs, scope, lambda |
| 10 | Recursion | Recursive thinking, base cases |
| 11 | Error Handling | try/except, custom exceptions |
| 12 | File Handling | read/write, JSON I/O |
| 13 | Modules & Packages | import, stdlib tour |
| 14 | OOP I | Classes, objects, __init__ |
| 15 | OOP II | Inheritance, polymorphism, dunder methods |
| 16 | Iterators & Generators | yield, generator expressions |
| 17 | Decorators & Closures | Function decorators, closures |
| 18 | Comprehensions Deep Dive | List/dict/set comprehensions |
| 19 | Regular Expressions | Pattern matching, regex |
| 20 | APIs & JSON | Working with JSON data |
| 21 | Algorithmic Thinking | Sorting, searching, complexity |
| 22 | Data Structures | Stacks, queues, linked lists |
| 23 | Mini Projects Capstone | Text adventure engine |
| Technology | Purpose |
|---|---|
| React 19 | UI framework |
| TypeScript 5.7 | Type-safe development |
| Vite 6 | Build tool & dev server |
| Capacitor 7 | Android APK packaging |
| Pyodide 0.26 | In-browser Python execution |
| Zustand 5 | State management |
| Framer Motion 12 | Animations & transitions |
| CodeMirror 6 | Code editor with syntax highlighting |
| IndexedDB / idb | Local data persistence |
# Clone the repository
git clone https://github.com/Tauseef666-ctrl/python-learn-app.git
# Navigate to the project
cd python-learn-app/python-learn-app
# Install dependencies
npm install
# Start development server
npm run devOpen http://localhost:5173 in your browser.
# Build the web app
npm run build
# Sync with Capacitor
npx cap sync android
# Open in Android Studio
npx cap open androidThen build and sign the APK from Android Studio.
| Splash Screen | Home Dashboard | Code Editor |
|---|---|---|
| Terminal boot-up animation | XP, streaks, chapter progress | Run Python code in-app |
| Skill Tree | Boss Level | Profile |
|---|---|---|
| Visual learning path | Build your own game | Badges & certificates |
python-learn-app/
├── public/
│ └── logo.png
├── src/
│ ├── components/ # Reusable UI components
│ │ ├── BottomNav.tsx
│ │ ├── ChallengeCard.tsx
│ │ ├── CodeEditor.tsx
│ │ ├── ConfettiBurst.tsx
│ │ ├── FunTaskCard.tsx
│ │ ├── GlassCard.tsx
│ │ ├── MatrixBg.tsx
│ │ ├── OracleMentor.tsx
│ │ ├── ProgressBar.tsx
│ │ ├── QuizQuestion.tsx
│ │ ├── SkillTreeMap.tsx
│ │ └── TerminalText.tsx
│ ├── screens/ # App screens
│ │ ├── Splash.tsx
│ │ ├── Home.tsx
│ │ ├── Chapters.tsx
│ │ ├── ChapterDetail.tsx
│ │ ├── Practice.tsx
│ │ ├── Boss.tsx
│ │ ├── Profile.tsx
│ │ ├── Settings.tsx
│ │ └── SkillTreeMapScreen.tsx
│ ├── data/ # Chapter content & themes
│ │ ├── chapters.ts
│ │ ├── themes.ts
│ │ └── whitehatChallenges.ts
│ ├── store/ # State management
│ │ └── appStore.ts
│ ├── utils/ # Utilities
│ │ ├── certificate.ts
│ │ ├── chapters.ts
│ │ ├── db.ts
│ │ └── pyodide.ts
│ ├── App.tsx
│ └── main.tsx
├── package.json
├── tsconfig.json
├── vite.config.ts
└── README.md
Contributions are welcome! Here's how:
- Fork the repository
- Create a feature branch (
git checkout -b feature/amazing-feature) - Commit your changes (
git commit -m 'Add amazing feature') - Push to the branch (
git push origin feature/amazing-feature) - Open a Pull Request
- Add new chapters or exercises
- Improve animations and UI
- Add more quiz question types
- Translate to other languages
- Fix bugs or typos
This project is licensed under the MIT License — see the LICENSE file for details.
- Pyodide — Python in the browser via WebAssembly
- Capacitor — Cross-platform native runtime
- Framer Motion — Production-ready animations
- CodeMirror — Extensible code editor
- Zustand — Bear necessities for state management
Built with Python 💻 — because everyone deserves to learn to code.
If this helped you learn Python, consider giving it a ⭐