Skip to content

rajin-khan/flutter-self

Repository files navigation

Flutter

Flutter Learning Repository


This repository is part of a bigger project, with a fixed time frame to learn mobile app development with Flutter.

Course Overview

This repository documents the journey of learning Flutter and Dart through the Udemy course, "Learn Flutter & Dart to Build iOS and Android Apps". The course covers a comprehensive range of topics, from basic Dart programming to advanced Flutter concepts, aimed at mastering cross-platform mobile development.


Objectives

The main objectives of the course I'm following are to:

  1. Understand Dart Programming Language

    • Learn the syntax and structure of Dart.
    • Master variables, data types, functions, and control flow.
    • Implement Object-Oriented Programming (OOP) concepts using Dart.
  2. Master Flutter Basics

    • Build simple UI layouts using Stateless and Stateful Widgets.
    • Utilize built-in widgets to create responsive and interactive UI components.
    • Understand state management using setState and Inherited Widgets.
  3. Learn to Navigate and Route within Flutter Apps

    • Implement basic and named routes for navigation.
    • Create complex navigation structures with nested and dynamic routes.
  4. State Management and Data Handling

    • Manage state effectively using Provider and Riverpod.
    • Handle user inputs and form validation.
    • Fetch and manage data using APIs and JSON parsing.
  5. Mastering Flutter’s UI/UX Design Capabilities

    • Use Flutter’s rich set of material design components.
    • Customize UI components with themes and animations.
    • Implement custom widgets for a unique app design.
  6. Integrate External APIs and Services

    • Make network requests and handle responses.
    • Integrate Firebase for authentication, cloud storage, and real-time databases.
    • Utilize third-party APIs for enhanced app functionality.
  7. Local and Remote Data Storage

    • Implement local storage solutions using Shared Preferences and SQLite.
    • Utilize Firebase Firestore for cloud-based data management.
  8. Advanced Concepts and Techniques

    • Explore advanced state management techniques using Bloc and Redux.
    • Learn about Flutter’s navigation 2.0 API for complex app navigation.
    • Implement performance optimizations and best practices for smooth animations.
  9. Build and Publish Apps

    • Configure the app for release on both iOS and Android platforms.
    • Debug and test the app using real devices and emulators.
    • Publish the final app on Google Play Store and Apple App Store.

Repository Structure

The repository is organized in terms of the apps created while learning the core concepts.


Resources


Progress Tracker

Week Modules Completed Key Concepts Covered
Week 1 1–2 Dart basics, Stateless/Stateful Widgets
Week 2 3–4 State management, UI Components, Navigation
Week 3 5–6 Data handling, APIs, JSON parsing
Week 2 7–8 Firebase integration, User authentication
Week 4 9–10 Advanced navigation, Flutter animations
Week 5 Final Project App development, testing, deployment

Modules Completed:

  • Introduction
  • Flutter & Dart Basics I - Getting a Solid Foundation [DICE ROLLER APP]
  • Flutter & Dart Basics II - Fundamentals Deep Dive [QUIZ APP]
  • Debugging Flutter Apps
  • Adding Interactivity, More Widgets & Theming [EXPENSE TRACKER APP]
  • Building Responsive & Adaptive User Interfaces [EXPENSE TRACKER APP]
  • Flutter & Dart Internals [TODO APP]
  • Building Multi-Screen Apps & Navigating Between Screens [MEALS APP]
  • Managing App-wide State [MEALS APP]
  • Adding Animations [MEALS APP]
  • Handling User Input & Working with Forms [SHOPPING LIST APP]
  • Connecting a Backend & Sending HTTP Requests [SHOPPING LIST APP]
  • Using Native Device Features (e.g., Camera) [FAVORITE PLACES APP]
  • Push Notifications & More Building a Chat App with Flutter & Firebase [CHAT APP]
  • Next Steps & Roundup

A dev quote for you:

Readme Quotes

About

projects and applications i made while learning mobile app development with flutter

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published