Recently we released a new version of our showcase Flutter app Wonderous which added support for landscape form factors on larger devices. In this post, we’re going to look at some of the techniques we used and showcase some real-world code examples. Switching layout orientation One of the tried and true methods you can use […]
gskinner blog - News and views on the world of interactive media from the gskinner team
]]>While building the Wonderous app with Flutter, we wanted to craft a great experience for visually impaired users. In this post we’ll look at how screen readers work, and then run through the Top 10 accessibility lessons we learned.
gskinner blog - News and views on the world of interactive media from the gskinner team
]]>We learned a lot about rendering optimization while building the Wonderous app and wanted to share our top 5 optimization tips to make your Flutter app run smoother.
gskinner blog - News and views on the world of interactive media from the gskinner team
]]>Add beautiful animated effects & builders in Flutter, via an easy, highly customizable unified API.
gskinner blog - News and views on the world of interactive media from the gskinner team
]]>For some reason, starting a new project always brings a small feeling of inherent joy and excitement. There is something about a clean slate that is just very comforting, the lack of constraints, the promise of the unknown! However, one thing that can tend drain this joy a bit are the rote tasks involved in […]
gskinner blog - News and views on the world of interactive media from the gskinner team
]]>v4.0 of the "XD to Flutter" plugin is available now, with a focus on simplifying and improving the Dart code it generates.
gskinner blog - News and views on the world of interactive media from the gskinner team
]]>When it comes to implementing a url-based Router (aka Nav2) there are really 2 high-level components to the API: A controller to read/write to the current url A parsing/matching system to convert a url into a stack of views, or pages. The interesting thing here, is that the controller portion, is a fairly stable, boring […]
gskinner blog - News and views on the world of interactive media from the gskinner team
]]>There are so many great libraries on pub.dev these days it can be hard to sift through them all. The flutter team maintains their own list of favorites, and we thought it might be worthwhile to put together a list of our own favorite libs! Some of these we published ourselves, and others are third […]
gskinner blog - News and views on the world of interactive media from the gskinner team
]]>One of the great things about Github Actions is how easily it lets you setup continuous integration testing for your flutter applications. In this post we’ll go through the basic implementation of a CI workflow in flutter. Step 1: Create some tests The first step in CI testing is obviously to write some tests! Writing […]
gskinner blog - News and views on the world of interactive media from the gskinner team
]]>We’ve recently released a new package for use with all “Nav 2” implementations, called routed_widget_switcher: https://pub.dev/packages/routed_widget_switcher It allows you to declaratively switch child widgets based on the current Router location: RoutedWidgetSwitcher is intended as a complimentary package for any Router (aka Nav2) implementation, including popular routing solutions like GoRouter, RouteMaster or VRouter etc. It is […]
gskinner blog - News and views on the world of interactive media from the gskinner team
]]>