Book Image

Taking Flutter to the Web

By : Damodar Lohani
Book Image

Taking Flutter to the Web

By: Damodar Lohani

Overview of this book

Using a shared codebase in addition to an extensive range of tools in the Flutter ecosystem optimized for browsers, the Flutter framework has expanded to enable you to bring your mobile apps to the web. You’ll find out how web developers can leverage the Flutter framework for web apps with this hands-on guide. Taking Flutter to the Web will help you learn all about the Flutter ecosystem by covering the tools and project structure that allows you to easily integrate Flutter into your web stack. You’ll understand the concepts of cross-platform UI development and how they can be applied to web platforms. As you explore Flutter on the web, you'll become well-versed with using Flutter as an alternative UI platform for building adaptive and responsive designs for web apps. By the end of this Flutter book, you'll have built and deployed a complete Flutter app for the web and have a roadmap ready to target the web for your existing Flutter mobile apps.
Table of Contents (17 chapters)
1
Part 1: Basics of Flutter Web
5
Part 2: Flutter Web under the Hood
9
Part 3: Advanced Concepts

Understanding the basics of state management

Before we begin with the basics of state management, there is one thing we need to understand, and that is that Flutter is a declarative framework. Flutter builds the user interface based on the current state, in other words, UI = f(state), as in, UI is the function of the state. We do not imperatively change the UI – for example, in Android, we are used to textView.setText(). However, in Flutter, we just change the value that the Text widget is bound to, and Flutter rebuilds the widget to reflect the change in value.

Now that we understand the declarative framework, let’s begin with the basics of state management. For that, we first need to understand what the state of an application is. If we are talking in the broadest possible sense, an application state is anything that is in memory while the application is running, including assets, variables, fonts, and the animation state, and most of these things are managed by...