worklog logo

Metrics

Analyze your builds from any CI/CD of your choice

Uber-like two-sided peer-to-peer freight platform
Tools Providers
Fluxx iOS App screenshotFluxx iOS App screenshot preview
Metrics app on working on Macbook
fluxx main imagefluxx main image

Fluxx

Mental Health Care App That Works

Uber-like two-sided peer-to-peer freight platform
Tools Providers
Fluxx iOS App screenshotFluxx iOS App screenshot preview
Flutter logo
Redux logoFirebaseStripe logoFirestore logoGoogle Maps logoFirebase Cloud Messaging logo
Flutter logoFirebaseUnity logo
Wave app home screen panel
Wave app Get started page
Summary section grid picture

Summary

WorkloMetrics is a set of software components to collect and review software project metrics like performance, build stability, and codebase quality.It was created using Flutter for Web framework and Dart language. We chose Firebase for the backend part. It provides a client for Flutter that gives the possibility to use: Cloud Firestore, Sentry logging, and Firebase Analytics. Over time, Metrics was renamed into Flank Dashboard and was acquired by Google along with Flank.Metrics is a set of software components to collect and review software project metrics like performance, build stability, and codebase quality.It was created using Flutter for Web framework and Dart language. We chose Firebase for the backend part. It provides a client for Flutter that gives the possibility to use: Cloud Firestore, Sentry logging, and Firebase Analytics. Over time, Metrics was renamed into Flank Dashboard and was acquired by Google along with Flank.Metrics is a set of software components to collect and review software project metrics like performance, build stability, and codebase quality.It was created using Flutter for Web framework and Dart language. We chose Firebase for the backend part. It provides a client for Flutter that gives the possibility to use: Cloud Firestore, Sentry logging, and Firebase Analytics. Over time, Metrics was renamed into Flank Dashboard and was acquired by Google along with Flank.Wave app is part of a Wave mental health platform available for iOS and Android. It provides self-guided activities, quizzes, session scheduling with coaches, and daily check-ins to help manage users’ mental health. The app was created using Flutter and Dart. 

Firebase was used for the push notifications functionality (Firebase Cloud Messaging).

Unity enriches the app with immersive audiovisual elements. It was integrated into the app via a special Flutter plugin.

Worklog.AI is a time-tracking tool for software professionals. Created using Flutter framework and Dart language.

We chose Supabase for the backend part. It provides a client for Flutter that gives the ability to use: Authentication, Database (Postgres), and Realtime.

Our team fully created the UX, UI, and overall design of the tool. To communicate with users, we made a website, social networks, and a feedback board.

Summary Section line

select languages:

Dart

location:

USA
Worldwide

technologies:

Flutter, Firebase, Unity
Flutter, Firebase

year:

2022
2021
image grid

Background

Dr. Sarah Adler, Stanford Professor of Psychiatry and Clinical Psychologist, founded Wave to make evidence-based emotional healthcare available to everyone.

She wanted to build a mobile application backed by science and deeply mired in inclusive user experience.
  • No-code

    Webflow is a no-code platform with an easy entry threshold. It means that even non-technical specialists may edit any part of the web page.
  • Faster path to launch

    Instead of pulling software engineers from product work, the marketing, and design team can implement all the key ideas on the landing page.
  • Great SEO Support

    Webflow provides the ability to specify semantic details that search engine indexing bots can easily parse.
Dr Sarah Adler photo

Request

main task

Initially, the main task was to create a user-friendly mobile application around immersive Unity elements. The app should have the feature of 24/7 actual support from real-life coaches, be science-backed, and allow customizations.

Scope of the project 

The task was to create a two-sided peer-to-peer general freight platform that will match the user’s freight delivery requirements with someone heading to the user’s location. To test the client’s idea, we needed to create two apps: iOS and Android.

Our main technical decisions: Flutter, Firebase and Stripe.
Flutter
Firebase
Why Flutter?
  • The single code base for all platforms

    Gives an opportunity to build, test and deploy mobile applications for different platforms from a single codebase.
  • Application performance

    Great performance because it compiles native code. While other cross-platform frameworks do not compile and/or have other restrictions that directly affect application performance.
  • Ample UI features

    Everything is a widget and it comes up with a wide variety of high-quality pre-existing widgets that can easily be added to your app and create visually appealing apps that that most of the users like.
  • Google Maps integration

    Google Maps has 99% coverage of the world and 1 billion monthly active users. That’s why we chose this map provider. With the Flutter plugin that provides a Google Maps widget, it was allowed to integrate it in no time.
Why Firebase?
  • Backend-as-a-service

    Firebase is the BaaS that provided us the possibility to not implement essential features like Authentication, Data storage, database, and push notifications and don’t spend time on various environments, their management, and scaling. So we didn’t need a separate backend team and fully concentrated on the Frontend part.
  • Integrations

    Firebase provides a feature-rich client for Flutter that is easy to use and integrate. It gives a possibility to connect Flutter with all the services we needed: Cloud Firestore, Firebase Authentication, Firebase Cloud Messaging.
  • Cloud Firestore

    We used Cloud Firestore because it’s a scalable database that allows real-time data exchange and data subscriptions for reactive UI updates.
  • Authentication

    Firebase offers a simple and quick authentication process that allowed us to integrate authentication in our apps via Facebook, Google, and email sign-in.
  • Firebase Cloud Messaging

    This feature helps to configure push notifications on both platforms (Android and iOS) and implement important and necessary notifications such as informing about the acceptance of the request, successful completion of the order, and payment for it.
Why Stripe?
  • Quality and Reliable Reputation

    Stripe is one of the leading solutions for internet payments worldwide. During the last few years over 100k businesses in Australia started using Stripe to proceed with their payment process. It’s one of the very few platforms that provides the possibility to create a two-sided peer-to-peer platform.
  • Payment methods integration

    Allowed to accept cards (and potentially Apple Pay/Google Pay), and securely store payment data to make payments easily.
  • Two-sided payments

    Stripe provides conditions under which the application collects payment and pays out only after a successfully completed order.

Deliveries

We built mobile apps for iOS and Android platforms using the Flutter framework with perfect quality and performance. In this project, our state management was Redux, as it was used by the founding team engineers, and they had experience with it.

Scope of the project 

Our key focus was creating a solution providing 24/7 access to activities that help users manage their mental health with interactive mini-games.
We needed to create mobile applications for iOS and Android platforms to test the idea and get initial users.
Our main technical components: Flutter, Firebase and Unity.
Flutter logo
Flutter
Firebase
Why Flutter?
  • Flexibility

    The most notable thing about using Flutter is that you can write the code once and run it on different platforms. Worklog could be quickly extended to a mobile or desktop application.
  • Cross-browser Compatibility

    Thanks to Flutter you don’t need to worry about how your web application will look and work in each browser.
  • Flutter-Supabase Integration

    Supabase SDK makes it simple for Flutter developers to build secure and scalable products on this platform.
Why Flutter?
  • Unity integration makes it easy for Flutter developers to embed Unity in the app
  • Pixel-Perfect UI implementation

    Wave app is full of animations and visualizations, demanding attention to pixel-perfect accuracy. Its customizable widgets and fluid animation APIs empower developers to bring intricate designs to life with precision, while the Hot Reload feature facilitates rapid iteration, enabling seamless adjustments until perfection is achieved.
  • Rendering ability

    Flutter's rendering engine ensures performance across different devices and screen sizes, regardless of the underlying hardware specifications.
  • Native Performance

    Flutter delivers high-performance experiences on both iOS and Android platforms.
Why Firebase?
  • Cloud Messaging

    A cross-platform messaging solution that lets us reliably deliver messages at no cost. Helps to push urgent notifications to the user to remind about upcoming sessions, new activities available, and new messages from the coach.
  • Flutter integration

    Integrating Flutter with Firebase enables seamless full-stack development, providing robust backend services such as real-time databases, authentication, cloud storage, and analytics, which accelerate app development and enhance functionality with minimal effort.
  • Firebase Test Lab

    Firebase offers a seamless and integrated solution for the entire software development life cycle, from testing to deployment. With the help of Firebase Test Lab, we thoroughly test applications on a variety of physical devices and configurations, allowing us to identify and resolve any potential issues before release. This all-in-one solution streamlines the development process, saving valuable time and resources.
  • Integration with Flutter

    The Firebase plugin for Flutter allows for direct access to Firebase services, including authentication, real-time databases, and cloud storage. This integration enhances development and enhances app functionality.
  • Security rules

    Row-level security help to create complex access policies with SQL queries. Each rule is attached to a table, and authorisation is ensured for every single query.
Why Unity?
A cross-platform messaging solution that lets us reliably deliver messages at no cost. Helps to push urgent notifications to the user to remind about upcoming sessions, new activities available, and new messages from the coach.
  • Cross-Platform Compatibility

    Unity allowed us to create apps that can run on multiple platforms, including iOS and Android. This capability reduces development time and costs by enabling one to write code once and deploy it across various devices with minimal modifications.
  • Cross-Platform Compatibility

    Unity allowed us to create apps that can run on multiple platforms, including iOS and Android. This capability reduces development time and costs by enabling one to write code once and deploy it across various devices with minimal modifications.
  • High-Quality Graphics and Performance

    With its powerful rendering capabilities and optimized performance, Unity enables the creation of visually stunning and responsive experiences.
  • Native Performance

    Flutter delivers high-performance experiences on both iOS and Android platforms.
Why Flutter?
  • Flexibility

    The most notable thing about using Flutter is that you can write the code once and run it on different platforms. Worklog could be quickly extended to a mobile or desktop application.
  • Cross-browser Compatibility

    Thanks to Flutter you don’t need to worry about how your web application will look and work in each browser.
  • Flutter-Supabase Integration

    Supabase SDK makes it simple for Flutter developers to build secure and scalable products on this platform.
Why Webflow?
  • No-code

    Webflow is a no-code platform with an easy entry threshold. It means that even non-technical specialists may edit any part of the web page.
  • Faster path to launch

    Instead of pulling software engineers from product work, the marketing, and design team can implement all the key ideas on the landing page.
  • Great SEO Support

    Webflow provides the ability to specify semantic details that search engine indexing bots can easily parse.

Deliverables

As part of the Wave project, we have successfully developed a highly engaging and interactive mental health Flutter mobile application for both iOS and Android platforms.
We have integrated Firebase Cloud Messaging (FCM) so WaveLife users can receive timely updates, alerts, and personalized messages, enhancing engagement and user retention.

Despite the visible aspect of our work for the end user, extensive efforts have been made behind the scenes. Here are some of the key achievements of our project:

  • Command Line Application: The Metrics project includes a CLI specifically designed for use with Continuous Integration systems. The CLI facilitates easy integration with the CI system and helps ensure up-to-date data is available on the Metrics Web Application.
  • Command Line Application: The Metrics project includes a CLI specifically designed for use with Continuous Integration systems. The CLI facilitates easy integration with the CI system and helps ensure up-to-date data is available on the Metrics Web Application.
  • Firebase Instance Configuration: The project includes preconfigured environments for Firebase instances, making it easy to set up and use.
  • Firestore Database: All data collected by the Metrics components is stored securely in a Cloud Firestore database. This data is protected by a comprehensive set of Firestore security rules to ensure that only authorized users have access.
  • Logging and Analytics Collection: The Metrics project includes tools for logging and analytics collection, allowing monitoring of the performance of the projects and making data-driven decisions. The logging is performed on the user's Sentry account if enabled, and analytics are reported to the user's Firebase Analytics account.
  • Deployment and Synchronization: The Metrics software components include a set of tools for deployment and data synchronization, making it easy to keep projects up-to-date and running smoothly. Additionally, the project includes installers for creating new Firebase instances, making it simple to get started with the Metrics solution.

In conclusion, the Metrics project delivers a comprehensive solution for monitoring and improving software projects' performance, stability, and quality. The project's user-friendly UI, secure data storage, and robust set of tools make it an ideal choice for organizations of all sizes.

fluxx details imagefluxx details imagefluxx details imagefluxx details image

Prototypes, not presentations

Advertise a freight request and have your goods delivered quicker and cheaper using the Fluxx geolocational algorithm to match your delivery with a peer travelling to your location.

Subsidise your cost of travel and earn money by delivering freight to others on your route. Freight sizes are categorised, so no matter what you drive, there's something that you can carry.

Scope of the project 

The task was to create a two-sided peer-to-peer general freight platform that will match the user’s freight delivery requirements with someone heading to the user’s location. To test the client’s idea, we needed to create two apps: iOS and Android.

Our main technical decisions: Flutter, Firebase and Stripe.

Why Flutter?

  • The single code base for all platforms

    Gives an opportunity to build, test and deploy mobile applications for different platforms from a single codebase.
  • Application performance

    Great performance because it compiles native code. While other cross-platform frameworks do not compile and/or have other restrictions that directly affect application performance.
  • Ample UI features

    Everything is a widget and it comes up with a wide variety of high-quality pre-existing widgets that can easily be added to your app and create visually appealing apps that that most of the users like.
  • Google Maps integration

    Google Maps has 99% coverage of the world and 1 billion monthly active users. That’s why we chose this map provider. With the Flutter plugin that provides a Google Maps widget, it was allowed to integrate it in no time.
Why Firebase?
  • Backend-as-a-service

    Firebase is the BaaS that provided us the possibility to not implement essential features like Authentication, Data storage, database, and push notifications and don’t spend time on various environments, their management, and scaling. So we didn’t need a separate backend team and fully concentrated on the Frontend part.
  • Integrations

    Firebase provides a feature-rich client for Flutter that is easy to use and integrate. It gives a possibility to connect Flutter with all the services we needed: Cloud Firestore, Firebase Authentication, Firebase Cloud Messaging.
  • Cloud Firestore

    We used Cloud Firestore because it’s a scalable database that allows real-time data exchange and data subscriptions for reactive UI updates.
  • Authentication

    Firebase offers a simple and quick authentication process that allowed us to integrate authentication in our apps via Facebook, Google, and email sign-in.
  • Firebase Cloud Messaging

    This feature helps to configure push notifications on both platforms (Android and iOS) and implement important and necessary notifications such as informing about the acceptance of the request, successful completion of the order, and payment for it.
Why Stripe?
  • Quality and Reliable Reputation

    Stripe is one of the leading solutions for internet payments worldwide. During the last few years over 100k businesses in Australia started using Stripe to proceed with their payment process. It’s one of the very few platforms that provides the possibility to create a two-sided peer-to-peer platform.
  • Payment methods integration

    Allowed to accept cards (and potentially Apple Pay/Google Pay), and securely store payment data to make payments easily.
  • Two-sided payments

    Stripe provides conditions under which the application collects payment and pays out only after a successfully completed order.

Deliveries

We built mobile apps for iOS and Android platforms using the Flutter framework with perfect quality and performance. In this project, our state management was Redux, as it was used by the founding team engineers, and they had experience with it.

We configured and tested a couple of Firebase environments for development, testing and production. Created a set of security rules for Firebase to protect the data along with a set of security rules tests to ensure that they cover every possible scenario of how users can interact with the platform.

Our team configured a two-sided platform inside Stripe. We made custom integration using Firebase Cloud Functions between Firebase and Stripe (now Stripe has a special extension for Firebase that can speed up development even more).

Scope of the project 

The task was to create a two-sided peer-to-peer general freight platform that will match the user’s freight delivery requirements with someone heading to the user’s location. To test the client’s idea, we needed to create two apps: iOS and Android.

Our main technical decisions: Flutter, Firebase and Stripe.
Flutter
Firebase
fluxx details imagefluxx details imagefluxx details image

Prototypes, not presentations

Advertise a freight request and have your goods delivered quicker and cheaper using the Fluxx geolocational algorithm to match your delivery with a peer travelling to your location.

Subsidise your cost of travel and earn money by delivering freight to others on your route. Freight sizes are categorised, so no matter what you drive, there's something that you can carry.

Scope of the project 

The task was to create a two-sided peer-to-peer general freight platform that will match the user’s freight delivery requirements with someone heading to the user’s location. To test the client’s idea, we needed to create two apps: iOS and Android.

Our main technical decisions: Flutter, Firebase and Stripe.

Why Flutter?

  • The single code base for all platforms

    Gives an opportunity to build, test and deploy mobile applications for different platforms from a single codebase.
  • Application performance

    Great performance because it compiles native code. While other cross-platform frameworks do not compile and/or have other restrictions that directly affect application performance.
  • Ample UI features

    Everything is a widget and it comes up with a wide variety of high-quality pre-existing widgets that can easily be added to your app and create visually appealing apps that that most of the users like.
  • Google Maps integration

    Google Maps has 99% coverage of the world and 1 billion monthly active users. That’s why we chose this map provider. With the Flutter plugin that provides a Google Maps widget, it was allowed to integrate it in no time.
Why Firebase?
  • Backend-as-a-service

    Firebase is the BaaS that provided us the possibility to not implement essential features like Authentication, Data storage, database, and push notifications and don’t spend time on various environments, their management, and scaling. So we didn’t need a separate backend team and fully concentrated on the Frontend part.
  • Integrations

    Firebase provides a feature-rich client for Flutter that is easy to use and integrate. It gives a possibility to connect Flutter with all the services we needed: Cloud Firestore, Firebase Authentication, Firebase Cloud Messaging.
  • Cloud Firestore

    We used Cloud Firestore because it’s a scalable database that allows real-time data exchange and data subscriptions for reactive UI updates.
  • Authentication

    Firebase offers a simple and quick authentication process that allowed us to integrate authentication in our apps via Facebook, Google, and email sign-in.
  • Firebase Cloud Messaging

    This feature helps to configure push notifications on both platforms (Android and iOS) and implement important and necessary notifications such as informing about the acceptance of the request, successful completion of the order, and payment for it.
Why Stripe?
  • Quality and Reliable Reputation

    Stripe is one of the leading solutions for internet payments worldwide. During the last few years over 100k businesses in Australia started using Stripe to proceed with their payment process. It’s one of the very few platforms that provides the possibility to create a two-sided peer-to-peer platform.
  • Payment methods integration

    Allowed to accept cards (and potentially Apple Pay/Google Pay), and securely store payment data to make payments easily.
  • Two-sided payments

    Stripe provides conditions under which the application collects payment and pays out only after a successfully completed order.

Deliveries

We built mobile apps for iOS and Android platforms using the Flutter framework with perfect quality and performance. In this project, our state management was Redux, as it was used by the founding team engineers, and they had experience with it.

We configured and tested a couple of Firebase environments for development, testing and production. Created a set of security rules for Firebase to protect the data along with a set of security rules tests to ensure that they cover every possible scenario of how users can interact with the platform.

Our team configured a two-sided platform inside Stripe. We made custom integration using Firebase Cloud Functions between Firebase and Stripe (now Stripe has a special extension for Firebase that can speed up development even more).

fluxx details imagefluxx details imagefluxx details imagefluxx details image

Prototypes, not presentations

Advertise a freight request and have your goods delivered quicker and cheaper using the Fluxx geolocational algorithm to match your delivery with a peer travelling to your location.

Subsidise your cost of travel and earn money by delivering freight to others on your route. Freight sizes are categorised, so no matter what you drive, there's something that you can carry.

Scope of the project 

The task was to create a two-sided peer-to-peer general freight platform that will match the user’s freight delivery requirements with someone heading to the user’s location. To test the client’s idea, we needed to create two apps: iOS and Android.

Our main technical decisions: Flutter, Firebase and Stripe.

Why Flutter?

  • The single code base for all platforms

    Gives an opportunity to build, test and deploy mobile applications for different platforms from a single codebase.
  • Application performance

    Great performance because it compiles native code. While other cross-platform frameworks do not compile and/or have other restrictions that directly affect application performance.
  • Ample UI features

    Everything is a widget and it comes up with a wide variety of high-quality pre-existing widgets that can easily be added to your app and create visually appealing apps that that most of the users like.
  • Google Maps integration

    Google Maps has 99% coverage of the world and 1 billion monthly active users. That’s why we chose this map provider. With the Flutter plugin that provides a Google Maps widget, it was allowed to integrate it in no time.
Why Firebase?
  • Backend-as-a-service

    Firebase is the BaaS that provided us the possibility to not implement essential features like Authentication, Data storage, database, and push notifications and don’t spend time on various environments, their management, and scaling. So we didn’t need a separate backend team and fully concentrated on the Frontend part.
  • Integrations

    Firebase provides a feature-rich client for Flutter that is easy to use and integrate. It gives a possibility to connect Flutter with all the services we needed: Cloud Firestore, Firebase Authentication, Firebase Cloud Messaging.
  • Cloud Firestore

    We used Cloud Firestore because it’s a scalable database that allows real-time data exchange and data subscriptions for reactive UI updates.
  • Authentication

    Firebase offers a simple and quick authentication process that allowed us to integrate authentication in our apps via Facebook, Google, and email sign-in.
  • Firebase Cloud Messaging

    This feature helps to configure push notifications on both platforms (Android and iOS) and implement important and necessary notifications such as informing about the acceptance of the request, successful completion of the order, and payment for it.
Why Stripe?
  • Quality and Reliable Reputation

    Stripe is one of the leading solutions for internet payments worldwide. During the last few years over 100k businesses in Australia started using Stripe to proceed with their payment process. It’s one of the very few platforms that provides the possibility to create a two-sided peer-to-peer platform.
  • Payment methods integration

    Allowed to accept cards (and potentially Apple Pay/Google Pay), and securely store payment data to make payments easily.
  • Two-sided payments

    Stripe provides conditions under which the application collects payment and pays out only after a successfully completed order.

Deliveries

We built mobile apps for iOS and Android platforms using the Flutter framework with perfect quality and performance. In this project, our state management was Redux, as it was used by the founding team engineers, and they had experience with it.

We configured and tested a couple of Firebase environments for development, testing and production. Created a set of security rules for Firebase to protect the data along with a set of security rules tests to ensure that they cover every possible scenario of how users can interact with the platform.

Our team configured a two-sided platform inside Stripe. We made custom integration using Firebase Cloud Functions between Firebase and Stripe (now Stripe has a special extension for Firebase that can speed up development even more).

cub line

Launch Success

Currently, Worklog is in its beta stage. With very low effort we received the first subscribers.

Launch Success

72 percent of users report lower anxiety, depression, stress, and/or burnout within eight after using the app and attending sessions with Wave coach.
Users reduced anxiety:
72%
sessions:
1K+
Completed exercises:
11K+
users:
5K+
Final thoughts

With Wave, we seized the opportunity to develop an app that goes beyond traditional coaching sessions, offering continuous support for mental health and overall well-being. 

Leveraging Flutter's cross-platform capabilities, we ensured seamless performance and consistent user experience across both iOS and Android platforms with added unique dynamic interactions and experiences. 

We’re proud to be a part of the team and excited to continue working together to make Wave a widely recognized and impactful platform for mental well-being.

year:
2022
solid software.
cross lines
Performance Report by

Our team's productivity was analyzed by a third-party: Haystack. They found out that we achieved the same level of quality as elite performers, with key results including a 0.48% Change Failure Rate.

Complete the form and we will shortly be in touch with you.

comment photo
Dr. Sarah Adler
Founder of Wave

"Solid Software helped us leverage our small engineering team. We have been thrilled the ease of communications with a remote team as well as the quality of the work.  Our Solid team easily adjusted to change in leadership and adapted to our needs as a growing business."

comment photo
Philipp Temmel,
Curator of Creativerly

"Worklog is especially aimed at software professionals. It was built to help you with your journey to eliminate all the frictions that distract you from engineering."

Looking for your project done right?

next project

arrow icon
also you can:

Select languages

Dart

Technologies

Flutter, Supabase, Webflow

check it out
arrow icon
Worklog

Worklog

Worklog is a time-tracking tool that has been specifically designed for software engineers.