by FFCloud

Seamless Multiplatform Solutions

App solutions at any scale.
Delivering acceleration, flexibility, and cost efficiency.

Contact

Details

Work in action

Sunandbass App

Android iOS

A slick and engaging app was crafted for the global SUNANDBASS music festival and rocked the scene from 2015 to 2022.

Details

SafeViewKids App

Android iOS

A fun and engaging app empowers parents to control their children's YouTube experience with custom playlists, media time management, and a privacy-focused design for safe and enjoyable viewing.

Details

Primelogon

Android iOS MacOS Windows Chrome

Secure, passwordless login for efficient online shop order processing, private group blogs, simplified agency and administrators user management, and more.

Landingpage

Stock Embed

Chrome

A web embed for effortless stock data exploration, uncovering key trends and performance insights in an intuitive format that activates, engages, and inspires.

Details

Benefits and added value

Accelerated
time-to-market

Through:

  • Single codebase
  • Developer experience
  • Additional libs+services

Accelerated time-to-market

  • Single codebase
  • Developer experience
  • Additional code assets and libs

Developing an app for N platforms with a common codebase in Dart/Flutter saves up to (1 - 1 / N) x 100 percent of the time with equal resources, because separate apps for each platform do not have to be programmed.

For instance developing an app for iOS and Android saves up to (1 - 1 / 2) x 100 = 50%, for iOS, Android and Web up to (1 - 1 / 3) x 100 = 66% of the time needed to develop them separately.

The developer experience and just-in-time (JIT) compilation of Flutter accelerate the app development process by up to 20%.

Boost efficiency and speed with my over 20 ready-to-use assets, libs and services for common cases and functionalities.

Cost savings

Through:

  • Single codebase
  • Developer experience
  • Additional libs+services

Cost savings

  • Single codebase
  • Developer experience
  • Additional code assets and libs

Developing an app for N platforms with a common codebase in Dart/Flutter saves up to (1 - 1 / N) x 100 percent of the costs, because separate apps for each platform do not have to be programmed.

For instance developing an app for iOS and Android saves up to (1 - 1 / 2) x 100 = 50%, for iOS, Android and Web up to (1 - 1 / 3) x 100 = 66% of the costs needed to develop them separately.

The developer experience and just-in-time (JIT) compilation of Flutter accelerate the app development process by up to 20%.

Boost efficiency and speed with my over 20 ready-to-use assets, libs and services for common cases and functionalities.

Future-proofness

Through:

  • Open-source by Google
  • Strong community & extensive ecosystem
  • Long-term commitment

Future-proofness

  • Open-source by Google
  • Strong community & extensive ecosystem
  • Long-term commitment

Flutter as an open-source project from Google comes with continuous development and the use of the latest concepts and technologies with over 100 stable releases since 2018 as well as a large and dedicated community with over 45K Flutter libraries available for free use, 163K stars on GitHub, 178K posts on Stackoverflow, 132K members on Reddit, and more, ensures resources and provides efficient support for app development.

With an enthusiastic and supportive roadmap for further platform development, the Flutter team plan to have four stable releases and 12 beta releases during 2024, mirroring their achievements in 2023, and integrate with the astonishing work of the Google's IDX team.

High Performance

Through:

  • Platform-native compilation
  • Dart programming language
  • Highly skilled & specialized

High Performance

  • Platform-native compilation
  • Dart programming language
  • Highly skilled & specialized

Flutter apps typically achieve startup times under 200 milliseconds, which is comparable to native apps. This is due to the AOT compilation and efficient rendering pipeline. In various benchmarks, Flutter has been shown to start in 50% of the time it takes for comparable React Native apps due to its direct native code compilation.

Thanks to its efficient use of Skia for rendering, the same graphics engine used by Google Chrome and Android, Flutter stays well within the limit of keeping rendering per frame below 16 milliseconds to maintain 60fps refresh rate, ensuring fluid UI interactions. Flutter's UI thread typically consumes less than 10 milliseconds per frame, leaving ample headroom for complex animations and interactions without dropping frames. On devices that support higher refresh rates, Flutter can achieve up to 120fps, offering even smoother visual performance.

Flutter applications tend to have optimized memory usage due to the efficient garbage collection in Dart. While exact memory usage can vary based on the app, Flutter's memory footprint is competitive with native applications. The CPU usage of Flutter apps is optimized through direct native code execution. Benchmarks show that Flutter apps often utilize less CPU compared to hybrid frameworks that rely on a JavaScript bridge, such as React Native.

The Flutter Gallery app, which showcases various Flutter widgets and layouts, scores consistently high on rendering benchmarks. For instance, it can render complex UIs at 60fps with minimal CPU and memory overhead.

Cost example

An app for Android and iOS is to be developed. With an assumed lifespan of 5 years and 20% annual costs for operation and support, the app implemented with Flutter only just reaches the initial costs of the native approach, whereas these have already doubled since implementation when the end-of-life is reached.

Flutter-based approach

  • High performance through high-quality expertise and specialization in the technology stack.
  • Seamless integration with the backend, enabling efficient and cohesive development.
  • Accelerated development with decreased costs through specialization and utilizing pre-built, robust code assets and libs for free.
Architectural layers

Fast lane with pre-built assets

Save time and budget with integrated compliance as a service, leveraging existing solutions to streamline processes, reduce complexity, and avoid extended timelines. Boost efficiency and speed without re-creating functions or adding extra payroll costs.

See examples below.

Client-side code assets and libs

Navigation routing enabled for deeplinking
Push & local notifications
Background processing worker
Remote data retrieval with offline caching
Video and audio streaming
Analytics integration

[ ... ]

Code sample

Code example: A pure Dart worker framework

A worker framework for seamlessly integrating with view states for executing tasks in separate isolates to prevent the UI from being blocked.

__worker-usage.dart__ __worker-api.dart__ __worker-platform-stub.dart__ __worker-platform-native.dart__ __worker-platform-web.dart__ __worker-utils.dart__

Server-side (micro)services

Image Conversion and Processing
PDF Generation
Video Streaming
Push notifications
Privacy-conform analytics solution
Content Management solution

[ ... ]

Services sample

Service example: Convert and resize images

A microservice seamlessly integrating with Flutter's NetworkImage for receiving optimized image resources depending on device.

Request

Response

Usage

import 'package:flutter/material.dart'; import 'package:cached_network_image/cached_network_image.dart'; void main() { runApp(MyApp()); } class MyApp extends StatelessWidget { @override Widget build(BuildContext context) => MaterialApp( home: Scaffold( appBar: AppBar( title: Text('CachedNetworkImage Example'), ), body: Center( child: Column( mainAxisAlignment: MainAxisAlignment.center, children: [ // Standard NetworkImage widget Image( image: NetworkImage( // URL of the image // Take [MediaQuery.of(context).devicePixelRatio] into account to // optimize resulting image to high-DPI displays like Retina '{{url}}' ), width: {{width}}, height: {{height}}, ), SizedBox(height: 20), // CachedNetworkImage widget, providing placeholder, errorWidget, and imageUrl CachedNetworkImage( // URL of the image // Take [MediaQuery.of(context).devicePixelRatio] into account to // optimize resulting image to high-DPI displays like Retina imageUrl: '{{url}}', placeholder: (context, url) => CircularProgressIndicator(), // Placeholder widget while image loads errorWidget: (context, url, error) => Icon(Icons.error), // Widget displayed if image fails to load width: {{width}}, height: {{height}}, ), ], ), ), ), ); }
Services sample

Service example: Get stock quotes

A microservice to get stock quotes by symbols.

Request

Response

Me

Gunther

Software Engineer and Solution Architect | Two decades of experience in full stack development | Industrial solutions, web applications, mobile apps | Early Flutter adapter

Flutter is a groundbreaking technology that redefines true multi-platform development, delivering massive business value by dramatically increasing the efficiency of building modern, cross-platform apps.

More

Gunther