└── README.md /README.md: -------------------------------------------------------------------------------- 1 | # Flutter Learning Path πŸš€ 2 | 3 | Welcome to Zero to Flutter! This repository serves as a structured guide to help you master Flutter development from basics to advanced concepts. 4 | 5 | ## What is Flutter? πŸ€” 6 | 7 | Flutter is Google's UI toolkit for building beautiful, natively compiled applications for mobile, web, desktop, and embedded devices from a single codebase. 8 | 9 | ### Why Choose Flutter? ✨ 10 | 11 | - **Single Codebase**: Write once, deploy anywhere 12 | - **Hot Reload**: See changes instantly during development 13 | - **Rich Widget Library**: Beautiful built-in Material and Cupertino widgets 14 | - **High Performance**: Native compilation and hardware acceleration 15 | - **Strong Community**: Active developer community and extensive packages 16 | - **Cross-Platform**: Deploy to iOS, Android, Web, Desktop from one codebase 17 | 18 | ### Flutter vs React Native: What to Choose? πŸ€·β€β™€οΈ 19 | - #### Choose Flutter When: 20 | - Performance is crucial 21 | - You need pixel-perfect designs across platforms 22 | - You're building a complex UI with custom animations 23 | - You want a single codebase for mobile, web, and desktop 24 | - Your team can invest time in learning Dart 25 | 26 | - #### Choose React Native When: 27 | - You have a strong JavaScript team 28 | - You need extensive third-party integrations 29 | - Platform-specific look and feel is important 30 | - You're building an app that shares logic with a web version 31 | - Quick prototyping is prioritized over perfect UI consistency 32 | 33 | ## Learning Path πŸ“š 34 | 35 | ### 1. Fundamentals 36 | - Dart Programming Language 37 | - Variables and Data Types 38 | - Control Flow 39 | - Functions 40 | - Classes and Objects 41 | - Async Programming 42 | - Flutter Basics 43 | - Project Structure 44 | - Widgets Overview 45 | - State Management Basics 46 | - Basic Layouts 47 | 48 | ### 2. UI Development 49 | - Widgets Deep Dive 50 | - Stateless Widgets 51 | - Stateful Widgets 52 | - Built-in Widgets 53 | - Layouts 54 | - Row and Column 55 | - Stack 56 | - Container 57 | - ListView 58 | - GridView 59 | - Styling 60 | - Themes 61 | - Custom Styling 62 | - Responsive Design 63 | 64 | ### 3. State Management 65 | - setState 66 | - Provider 67 | - Riverpod 68 | - Bloc 69 | - GetX 70 | 71 | ### 4. Navigation and Routing 72 | - Navigator 1.0 73 | - Navigator 2.0 74 | - Named Routes 75 | - Dynamic Routes 76 | - Deep Linking 77 | 78 | ### 5. Data Management 79 | - Local Storage 80 | - SharedPreferences 81 | - SQLite 82 | - Hive 83 | - Network 84 | - REST APIs 85 | - GraphQL 86 | - WebSockets 87 | - Firebase Integration 88 | 89 | ### 6. Advanced Topics 90 | - Custom Animations 91 | - Custom Painters 92 | - Platform Specific Code 93 | - App Performance 94 | - Testing 95 | - Unit Tests 96 | - Widget Tests 97 | - Integration Tests 98 | - CI/CD 99 | - App Publishing 100 | 101 | ## Learning Resources πŸ“– 102 | 103 | ### Official Resources 104 | - [Flutter Official Documentation](https://docs.flutter.dev) 105 | - [Dart Official Documentation](https://dart.dev/guides) 106 | - [Flutter YouTube Channel](https://www.youtube.com/c/flutterdev) 107 | - [Cookbook](https://docs.flutter.dev/cookbook) 108 | 109 | ### Courses 110 | - [Online courses](https://docs.flutter.dev/resources/courses) 111 | - [freeCodeCamp.org](https://youtu.be/VPvVD8t02U8?si=YvuO0twIGUO6uXHm) 112 | - [Mitch Koko](https://youtu.be/TclK5gNM_PM?si=rxRCAUmfWEvomIqy) 113 | - [Rivaan Ranawat](https://youtu.be/CzRQ9mnmh44?si=-xnV3ZmZw_Lhd8FR) 114 | - [dbestech](https://youtu.be/DsTMhjaRQws?si=OuS20RjsZXgaBRRK) 115 | 116 | ### Books 117 | [Recommended books about flutter](https://docs.flutter.dev/resources/books) 118 | 119 | ### YouTube Channels 120 | - [dbestech](https://www.youtube.com/@dbestech) 121 | - [Rivaan Ranawat](https://www.youtube.com/@RivaanRanawat) 122 | - [Romain Girou](https://www.youtube.com/@Romain_Girou) 123 | - [The Flutter Way](https://www.youtube.com/@TheFlutterWay) 124 | - [Mitch Koko](https://www.youtube.com/@createdbykoko) 125 | - [HeyFlutterβ€€com](https://www.youtube.com/@HeyFlutter) 126 | 127 | ## Projects for Practice πŸ’ͺ 128 | 129 | ### Beginner Level 130 | 1. Todo App 131 | 2. Calculator 132 | 3. Weather App 133 | 4. Quiz App 134 | 135 | ### Intermediate Level 136 | 1. Social Media Clone 137 | 2. E-commerce App 138 | 3. Food Delivery UI 139 | 4. Chat Application 140 | 141 | ### Advanced Level 142 | 1. Full-Stack Social App 143 | 2. Music Player with Animations 144 | 3. Video Streaming App 145 | 4. Real-time Gaming App 146 | 147 | ## Contributing 🀝 148 | 149 | Feel free to contribute to this learning path! You can: 150 | - Add new resources 151 | - Improve existing content 152 | - Share your projects 153 | - Report issues 154 | - Suggest improvements 155 | 156 | Happy Coding! 🎯 157 | 158 | *Note: This repository is maintained by Udhay Adithya. Feel free to reach out for any queries or suggestions.* 159 | --------------------------------------------------------------------------------