START-UP FUNDING: LAST STEPS BEFORE FUNDING? Before you go out and start approaching potential investors to join you on your journey, there are several steps before funding that you must take. This to-do list ensures that you stand a good chance of impressing...


Setting up Continuous Integration (CI) for Flutter mobile apps can indeed be a complex task. Cross-platform mobile development involves building applications that can run on multiple platforms, such as iOS and Android, using a single codebase. This introduces additional challenges when it comes to setting up CI pipelines because you need to ensure that the code is properly tested and built for each target platform.
When new code is pushed, the system must be triggered, then build, sign and deploy apps to Google Play and Apple.

There are so many options available

I have tried various off-the-shelf solutions in my search for a satisfactory outcome, but thus far, I have been unable to find a solution that meets my expectations. The primary difficulties I encounter are as follows:

  1. Code signing certificates and keys need to be located outside of the company hardware, which represents a security risk.
  2. Systems such as Bitrise and Circle CI are extremely slow, and on a Friday, when many are using their services, it can grind to a halt.
  3. Creating and modifying the build pipeline can be slow and hard to debug as the service is being run in the cloud, and it’s difficult to pinpoint problems and slow to iterate on.

I had tried solutions such as Jenkins, whereby you are required to set up a server to run on your hardware, but this was overkill in my opinion, and not that straightforward either, and anyhow GitHub had something far better for my needs.

The Github runner solution

By utilising GitHub Actions and using a remote runner, the builds are done on our hardware, but we are taking advantage of GitHub to trigger the builds.
This results in an easy-to-set-up, easy-to debug and, even if run on old hardware, a much, much faster build than the cloud-based solutions.

Technically I use a straightforward yaml file to trigger a script that executes Fastlane for iOS and Fastlane for Android. Fastlane takes care of the build and deployment to the app stores for us.

This is by far the best CI solution that I’ve used; it’s entirely free and secure, given we are not sharing keys or certificates, and if required, extra remote runners can be added to scale the solution.

Ready To Get Started?

Steps before funding: Have a prototype/wireframe

Now that you have a unique idea and a killer business plan, you might want to have something to show to an investor. Show them your product.

When it comes to showing off your product there are a few ways of doing so. The first is the simplest. Wireframes.



A wireframe is a way to design a website or an app at the basic structural level. It is a great way to layout content and to demonstrate its functionality quickly, effectively, and financially efficiently.


An app prototype is the next level up from wireframes. It is a visual mock-up that looks like the real app and shows off the app’s fundamental design and function. However, it does not contain working code. The benefit of prototypes is that they show off a more fleshed out app than wireframes, however, they are normally far more expensive and can take longer to develop. 

Additionally, there are a lot more things that you should also think about, at Novaflip we are more than happy to sit down and talk you through the process. For more information do not hesitate to get in touch.

Ready To Get Started?