Flutter Workshop

Overview

This repository contains the materials, code, and exercises from the Flutter Workshop. It is aimed at helping beginners and intermediate developers get hands-on experience with Flutter, a popular framework for building cross-platform mobile applications.

Key Sections:

  • Basic Flutter Setup: Instructions on setting up a Flutter development environment.
  • Widgets and Layouts: Examples and exercises on working with various Flutter widgets.
  • State Management: Covers different state management techniques in Flutter, including setState(), Provider, and more.
  • Project Examples: Contains example projects developed during the workshop.

Folder Structure

flutter_workshop/
│
├── Setup_Instructions/        # Guide to set up Flutter and run the first app
│   ├── flutter_installation.md # Step-by-step guide to install Flutter SDK
│   └── first_app.md           # Tutorial on creating and running the first Flutter app
│
├── Widgets_and_Layouts/       # Examples and exercises on Flutter widgets and layouts
│   ├── basic_widgets.dart     # Examples of basic widgets like Container, Row, Column, etc.
│   └── custom_layouts.dart    # Examples of creating custom layouts
│
├── State_Management/          # State management techniques
│   ├── setstate_example.dart  # Example of state management using setState()
│   └── provider_example.dart  # Example using the Provider package for state management
│
└── Projects/                  # Sample projects from the workshop
    ├── todo_app/              # Simple To-Do app using Flutter
    └── weather_app/           # Weather app using an API integration

Getting Started

  1. Clone the repository:

    git clone https://github.com/josethomas45/flutter_workshop.git
  2. Install Flutter: Follow the instructions in the Setup_Instructions/flutter_installation.md file to install Flutter on your machine.

  3. Run the examples: Navigate to the folder of the example you want to try and use the Flutter CLI to run the app:

    flutter run

Key Topics Covered

  1. Flutter Basics:

    • Introduction to Flutter and setting up a development environment.
    • Basics of widgets, layouts, and creating user interfaces in Flutter.
  2. State Management:

    • Simple state management using setState().
    • Using the Provider package for more scalable state management in larger apps.
  3. Project Examples:

    • A To-Do List App: A simple app to add, delete, and manage tasks.
    • A Weather App: Fetches weather information using an API and displays it using a clean Flutter UI.

Requirements

  • Flutter SDK: Download the Flutter SDK for your platform.
  • Dart: Flutter is powered by Dart, which comes with the SDK.
  • Android Studio or Visual Studio Code: For an integrated development environment (IDE) with Flutter support.

How to Contribute

Contributions are welcome! Follow the steps below to contribute:

  1. Fork the repository.
  2. Create a new branch (git checkout -b feature-branch).
  3. Make your changes and commit them (git commit -m 'Add new feature').
  4. Push the changes to your branch (git push origin feature-branch).
  5. Create a pull request.

License

This project is licensed under the MIT License. See the LICENSE file for more details.


Contact

For any questions, suggestions, or feedback, please feel free to reach out:

Jose Thomas
GitHub Profile