Systems | Development | Analytics | API | Testing

Practical Guide: Flutter + Firebase + FlutterFire CLI + CI (Codemagic)

This article highlights three technologies that you can combine to create a super-app: Flutter, Firebase, and Codemagic. Our task is to configure Firebase for all platforms supported by the Flutter framework, utilize Firebase Remote Config to alter the appearance of our app without making these changes manually and then set up CI/CD using Codemagic to distribute our app via Firebase App Distribution. We’ll be creating a live demo of the app to demonstrate the power of these technologies.

A virtual device lab at your fingertips: new LambdaTest integration on board

LambdaTest is our newest Verified Step on board which allows you to perform automated and live cross-browser testing online on 3000+ real browsers and real devices. See how you can benefit by using their services combined with Bitrise!

Issues with Apple silicon and snapshot/golden testing

While the prospect of getting much faster build times with the Apple silicon (aka M1) processors seems very exciting, you may face issues that stem from the architectural differences between arm64 and x86. One of these issues is related to snapshot testing or golden testing on Flutter. You are not alone in this, as it’s a widespread issue in which snapshots generated on an Intel machine fail on Apple silicon machines — and vice versa.

Issues with uploading to the App Store and how to solve them

After you successfully build and test your app, you may want to upload the build to TestFlight or the App Store. Sometimes, you may face an unknown authentication error that makes it difficult for you to upload the iOS binary to App Store Connect. You may even face an authentication error after using a valid App Store API key. If you’ve faced this problem, you’re not alone.

How to implement GraphQL with Flutter + GraphQL example

Have you ever faced the task of implementing a REST API and had to call multiple endpoints to populate data for a single screen? You probably wished you had more control over the data returned by the endpoint so that you could fetch more data with a single endpoint call or have only the necessary data fields returned by the call. Follow along to see how you can achieve this with GraphQL. In this article, we’ll be implementing GraphQL in an existing codebase.