Image for post
Image for post

While Flutter is a relatively new framework, there are already plenty of options to choose from. The most popular ones at the moment are Bloc, Redux and Provider while MobX and Flutter_hooks are some of the new exciting options

I chose to use Provider since there are plenty of tutorials out there and seemed like a user-friendly approach to state-management.

Using provider for User instance

The main reason I want to user Provider is to avoid prop drilling the userId of the current user through the whole widget tree. I want this variable to fetch all the lists of that user from my FireStore database…


Image for post
Image for post

Did you miss the latest Flutter Interact 2019 livestream? No worries! Here are some of my favorite announcements.

Flutter 1.12

The latest version of Flutter is already available today. Some of the new features include:

  • Google Fonts support
  • Dark mode support for iOS 13
  • Default androidX support for new projects (THANK YOU)
  • Reworked Flutter Gallery app to try out new widgets

Flutter on the desktop

Desktop support has reached alpha-level quality for building native MacOs apps.

Flutter for the web

During the presentation, Tim Sneath (Group Product Manager) hammered on the fact that Flutter for the web is exactly the same framework as the one you’ve been using to create…


Image for post
Image for post

What is Android X?

Android X, short for Android Extension Libraries, is the redesigned Library for the android platform with the main focus of making the package names more intuitive.

Migrating to Android X in Flutter

App-level build.gradle

In this file, specify you want to use androidX by editing the AndroidTestImplementation to ‘com.androidx.test… Also, use multidex (allows you to build more complex apps) by adding it to our dependencies and enable it in the defaultConfig object.

App-level build.gradle file

gradle.properties

This file provides several options to configure how your app should be built. By adding the android.enableJetifier and android.useAndroidX it will try to use androidX

gradle.properties

Problems?

If this method doesn’t…


Image for post
Image for post

Main.dart

Flutter uses main.dart as an entrypoint to start your app. In this file, we simply set our home property of the material app to a widget called App, that we will make in a separate file called app.dart

Creating our screens

All the screens I use in my app will be located in a folder I named screens, still inside of the lib folder. Each screen contains a Scaffold widget that returns the content of your screen inside of the body property.

App.dart

All the NavBar-goodness is located in the app.dart file, our homescreen of the material app, remember? We will use…


Image for post
Image for post

If you’ve ever spent some time with Flutter, you should be pretty familiar with something called ‘The Widget Tree’. For those unfamiliar with the term, basically everything in Flutter is a widget that’s nested inside another widget, that’s inside of another widget, and so on.
To make sense of this hierarchy, there’s a feature in the Flutter plugin (for VS Code and Android Studio) called shortcuts.
To acces these shortcuts, you click on the little lightbulb to the left of your widget. …


Image for post
Image for post

Finding clear, helpful and correct resources can be difficult when learning a new programming language or framework. I’ve made a list of the most helpful sources I found helpful during my time learning Flutter.

Complete basics

If you’re thinking about learning Dart as your first programming language, you’ll need to start at the beginning. Learning what data types are, classes, models, functions, and so on, are necessary to completely understand what you’re learning.

  • Flutter Crash Course: Installation, programming basics and Flutter development.

UI building

Looking to build a stylish UI in Flutter? …


Image for post
Image for post

If you have watched any footage of the recent Google I/O’s, you’ve probably heard of Flutter. It’s Google’s answer to React Native, a framework to write apps for IOS, Android and since this may, also the web. But why should you give Flutter a shot?

It’s fast.

Flutter has been proven to be faster than other cross-platform frameworks, since it doesn’t rely on intermediate code representation, such as a JS-bridge in React Native. A Flutter application is built directly into the machine code, which eliminates any performance bugs of the interpretation process.

Another aspect where Flutter seems to be faster is the…


Image for post
Image for post
Photo by Clifford Photography on Unsplash

Blockchain this! Blockchan that!

Blockchain is getting to the point of becoming mainstream nowadays. We even hear about it on the news, especially with the hype surrounding Bitcoin. But often when new technologies surface, many people don’t fully get it. So here’s my attempt at explaining the basics of blockchain.

What is it?

Blockchain is a technology that helps a group of people to trade information that is truthful, without the need of a third party.
It is the underlying technology of almost all cryptocurrencies, but that’s only one usecase.

Right, let’s look at an example.


Intro

Bird was één van de eerste en populairste scooter-sharing apps voordat de hype begon. Hierdoor hebben ze logischerwijs meer ervaring dan hun concurrenten. Laten we een kijkje nemen of deze ervaring kan vertaald worden in een goede app.

Image for post
Image for post
logo bird app

Launch scherm

Bij het opstarten van de app wordt er gevraagd om je email adres in te geven met daaronder een knop met de tekst “Rijden”. In het algemeen is hier niets mis mee, maar door gebruik te maken van een delightful animation kan dit scherm iets leuker zijn voor de gebruiker i.p.v. het standaard formulier. Het zou ook handig zijn voor de gebruiker…

Robbe Buyle

Design & Development student.

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store