Fruccola bird automated restaurants
Fruccola bird automated restaurants
Fruccola Bird’s mission is to make healthy and fresh food accessible to everyone in a convenient and efficient way using the most advanced technologies. The company was founded in 2019 and backed by the still successfully operating Fruccola restaurant and a Hungarian VC SZTA.
Our partner said
Overview
automated restaurants and mobile apps
The main goal of Fruccola Bird is to revolutionize the food service by combining the finest ingredients with the latest food technology. Their high-tech automated restaurants are located in office buildings and will provide meals that are always fresh and healthy. Meals can be ordered by a dedicated mobile application, where pre-orders and a food calendar can be built up based on our detailed nutritional info. Also instant orders can be made based on the available meals. No need to wait for a courier to deliver food halfway across town, just popping to one of the automated restaurant in an office and hot meal will be ready within 25 seconds of completing an order.
Challenges
The following components were developed as part of the system behind Fruccola Bird automated restaurant:
Admin page where the available meals, locations can be created, information about the orders and users can be gathered, the stock of the automated restaurant can be recorded.
Customer facing native mobile application for Android and iOS, where user can register and place order for the meals.
Kiosk application – an alternative for the customer facing applications – where orders can be placed onsite and payment made with credit card on an integrated terminal.
Sales module, which handles the request from the mobile applications and integrates the 3rd party solutions (e.g. payment service, invoicing module).
Vending module, which communicates with the onsite automated restaurant (e.g. serving the meals, configuring the temperature etc.).
Implementation
modular system
After the architectural design the Sales and Admin module was started in parallel with the mobile application development
On the frontend side of the Admin module Angular 8+ framework was used.
A Sales module is based on microservice architecture and the most important components are the followings:
- Sales: handles orders and users
- Payment: handles the credit card payments in the mobile application, it integrates a 3rd party solution
- Invoice: 3rd party solution was integrated in order to handle invoice after orders
Based on the design we started the implementation of mobile application functionalities on iOS platform to detect if there is any inconvenience in the user flow and after validation we continuously focused on the Android platform.
Based on the design we started the implementation of mobile application functionalities on iOS platform to detect if there is any inconvenience in the user flow and after validation we continuously focused on the Android platform.
For the purpose of controlling the vending machines from the server side in cooperation with Hunify Labs we defined the structure of the messages – that is sent to the vending machines – and the communication channels, so the Vending module development could be started smoothly.
This module is also a Spring Boot application which communicates through an Amazon MQ (Amazon Message Queue) with the vending machines, listens to the status changes and send notifications when mistakes happen.
In the last phase of the development we did the integration testing of the different components in the system, it sometimes required onsite presence at Hunify HQ in Budaörs. During the integration testing period we found bugs which were fixed. After that the publication of the mobile applications had been started. The delivered system was presented at a demo event where real users tested the applications and the vending machines and a technical auditor validated the solution.
The microservices are deployed to the AWS cloud and use the following cloud computing services:
- Amazon S3 (Simple Storage Service) for storing files (e.g. invoices and food photos)
- Amazon RDS (Relational Database Service) for persisting user and ordering data in a database
- Amazon Route 53 for DNS configuration