Logiscare go!

Logiscare go!

  • (144)
Description
Client

Our client provides one of the most advanced satellite tracking system in Europe. We have been approached to build a modern cross-platform mobile and desktop application for their system.

Project

From the very beginning we had 3 objectives in mind. We need to avoid any unnecessary increase of the system cost, make real time data updating as effective as possible and build modular application in order to reuse the already written code for the other platforms like web, desktop and even Google’s operating system called Fuchsia.

Results

Initial idea to offer modern look with fully customized user interface has been achieved by building a mobile application supporting customization per professions and even more modular version of the web application, which can be customized for each customer separately.

Screenshots
Challenges solved

Custom map implementation
  • Instead of using Google Maps, we implemented open-source maps called Openlayers.
  • Map business logic is developed and maintained in JavaScript.
  • Mobile app communicates with the map through the bridge between JavaScript and Flutter
  • Resizable map is shown in webview on both android and iOS.
Network communication - Incremental updates through WebSocket
  • Logistical systems require non-stop data updates. We achieved that by using WebSocket technology. Application opens a channel on the server and subscribes to the required services. Data is pushed to the application without any further requests. This approach helped to decrease data transmission significantly.
  • Websocket technology is also great for a system, which needs to notify the client app without sending push messages.
Localizations
  • Application is localized to 7 languages including Greek.
Firebase Push Messaging
  • Official plugin for FCM used to have some issues on iOS at a time. We fixed it in iOS code and delivered stable functionality.
Application rebranding for resellers
  • Application is easily re-brandable for resellers by setting up configuration files and platform-specific resources like an app icon.
Modularity
  • Application is built from widgets, which can be easily re-used on other platforms like web or desktop.
Remote configuration of screens/widgets
  • Application can be personalized by JSON configuration.
Invoices and Stripe payments, Apple Pay, Google Pay (waiting for Google review)
  • Modules for Apple Pay and Google Pay are developed in iOS respectively Android native code, which is executed from Flutter app.