London, UK
Feb 1, 2023   |  By Codemagic
CLI stands for command-line interface, a text-based interface you can use to input commands and perform various operations. If you’ve ever used the dart or flutter commands in your console, you’ve used a CLI. Sometimes, though, you may end up writing a CLI of your own.
Jan 31, 2023   |  By Codemagic
As a senior Flutter developer, a big part of my daily job consists of reviewing code, mentoring other developers, and helping them with their problems. One mistake that I noticed developers repeating on many occasions is misusing BuildContext. I analyzed why this happens and came to the conclusion that it is because of an incomplete understanding of what BuildContext is, how it works, and its scope and lifecycle.
Jan 23, 2023   |  By Codemagic
Codemagic is now officially integrated with Runway, the DevOps platform for mobile. But wait, you might be wondering, isn’t Codemagic already that as a CI/CD for mobile? Aren’t the two services interchangeable? In fact, it’s quite the opposite — they’re powerfully complementary.
Jan 2, 2023   |  By Codemagic
In this article, we are going to learn how to create a custom Content Blocker for our WebView instances using the flutter_inappwebview plugin. Content Blockers are usually used for blocking ads, but you can also use them to block any other content. Blocking behaviors include hiding elements, blocking loads, and, on iOS and macOS, stripping cookies from WebView requests.
Dec 14, 2022   |  By Codemagic
This month, both Flutter and Codemagic have an anniversary to celebrate! Flutter 1.0 was released in December 2018 at Flutter Live. At the same event, we launched Codemagic, the community’s favorite CI/CD tool for Flutter. This also marked the beginning of the ongoing partnership between the Flutter team and Nevercode, the company behind Codemagic CI/CD.
Dec 7, 2022   |  By Codemagic
At Google I/O 2021, Google announced the next evolution of Material Design, Material You, along with Android 12. The Material Design system’s biggest overhaul yet brought redesigned components, new colors, a wide range of shapes, simplified typography, new elevation, better accessibility, and many other tweaks. With this update, Flutter apps can have a consistent design across multiple platforms.
Dec 2, 2022   |  By Codemagic
Another year around the sun has passed, and Codemagic has already turned FOUR years old! Who remembers our launch in December 2018 at Flutter Live?! It feels like yesterday! We started out as a Flutter-specific CI/CD and then added support for other platforms, such as React Native, native iOS, native Android, Cordova, and Ionic. This year, we started supporting Unity CI/CD. We’re learning and growing year by year together with the community!
Nov 24, 2022   |  By Codemagic
Last year, we introduced an easier way of distributing your app to users via the App Store. It simplified and automated publishing apps on App Store Connect with a few lines you could add to your codemagic.yaml file. This feature automated your iOS releases from start to finish and pushed the CI-verified builds straight to the App Store. We are excited to announce that we have simplified this process even further! Now, you can directly reference the API key and authenticate with App Store Connect!
Nov 14, 2022   |  By Codemagic
Codemagic is a CI/CD (continuous integration and continuous delivery) tool that is best suited for mobile developers. It can help you speed up your release cycle, get actionable feedback faster, and forget about the pain of manually submitting your apps to stores. Codemagic is evolving fast: This year, we added M1 Mac mini build machines and changed our pricing so that everyone can afford to use the friendliest mobile DevOps tool on the market.
Nov 4, 2022   |  By Codemagic
Since the release of Xcode 14, numerous code signing issues have emerged, plaguing builds across various CI/CD platforms. And even though code signing process was never easy, issues like these were relatively uncommon in previous versions of Xcode, such as Xcode 13 and Xcode 12, leaving many developers worried. If you are facing some unfamiliar code signing issues with Xcode 14, while everything seems to be fine with your keys and certificates, you aren’t alone.
Jan 25, 2023   |  By Codemagic
Dart recently added experimental support for the new RISC-V CPU architecture and the first boards with these new chips are now starting to be available. One of these is the Sipeed Lichee D1, a RaspberryPi type device that is able to run Linux and Dart. At the same time, tiny but very cheap OLED screens are showing up in all sorts of devices, from soldering irons to high end music synthesizers. But what does it mean for Flutter and its mission "Beautiful apps for every screen" when the screen is 1 inch with a resolution of 128x64? Is that even possible? In this talk I'll cover how to get Dart running on one of these boards, how to use these tiny screens from Dart and what parts of Flutter can help with using screens this small.
Dec 15, 2022   |  By Codemagic
In this webinar Rudrank Riyam, iOS developer relations engineer at Codemagic introduces you to some basic concepts around iOS code signing, and then shows how to automate this process with Codemagic with its integration to Apple Developer Portal.
Oct 18, 2022   |  By Codemagic
This guide will show you how to set up a service account in Google Play Console and save the content of the JSON file in environment variables, and then publish the app to the store.
Oct 18, 2022   |  By Codemagic
This guide will show you how to publish your apps to TestFlight, TestFlight beta groups, and App Store using codemagic.yaml file and understand what are Magic actions.
Oct 17, 2022   |  By Codemagic
This guide will show you what build versioning means and what the requirements are in Google Play and Apple App Store. It will show you how to use the codemagic-cli-tools to get the latest version number from the stores and how to automatically increment it.
Oct 11, 2022   |  By Codemagic
This getting started guide shows how to use the codemagic.yaml file to configure your Codemagic CI/CD workflows.
Oct 11, 2022   |  By Codemagic
This guide will show you how to create AppStore connect API key and upload the signing certificate and provisioning profile, then how to reference them in codemagic.yaml and sigin the app.
Oct 11, 2022   |  By Codemagic
This guide will show you how to sign your Android app using code signing identities and codemagic.yaml.
Oct 11, 2022   |  By Codemagic
In this video, we're going to talk about environment variables & groups, and how to save and reference them in the codemagic.yaml file.
Oct 21, 2021   |  By Codemagic
If adding new iOS test devices to Apple Developer Portal is a chore, here's Codemagic's tutorial how to simplify this process – the job is done in just several clicks and a couple of taps.
Mar 13, 2022   |  By Codemagic
80+ must-have Flutter libraries to speed up your work. In the ebook "Flutter libraries we love" we focused on 11 different Flutter library categories. Each category has a list of Flutter li
Mar 13, 2022   |  By Codemagic
From that ebook you'll find everything you need to know about testing React Native Apps. Including real code examples that you can copy!😉
Mar 13, 2022   |  By Codemagic
Don't waste valuable developer resources on things that could be automated.

Codemagic is the developer's favorite CI/CD tool for mobile app projects. Build your Android, iOS, React Native, Ionic, Unity, and Flutter projects on Codemagic.

Codemagic is used by developers just as like many other CI/CD tools, but we excel at iOS by automating code signing and store distribution. We provide hosted (cloud) solutions with no need for on-premise machines. We keep up with the latest Xcode versions, Android SDKs, and other dev tools. All of this helps Codemagic to be effective with mobile projects so that there is no need to install these tools during build time, but they are already available. If you need something that is not already on the machine, you have the freedom to run any script as part of your build pipeline and install them.

Our vision is to bring continuous improvement to software development. Our mission is to give developers actionable feedback as fast as possible by separating signal from noise.