The Jíme Brno App
from a Developer's Perspective
# Web Application
Con Gusto
2022
The Con Gusto group, which owns several Brno restaurants, decided to launch its own delivery service Jíme Brno. They entrusted Cognito with the complete development of the web application for their exclusive delivery service, from implementation design to market launch. Alongside the delivery system, we were also tasked with building a management information system connected to Septim, the most widely used restaurant POS system.
Technical analysis
and architecture design
Based on the user brief and technical analysis, we designed a system architecture composed of several standalone applications:
- E-shop interface for customers (www.jimebrno.cz), where customers can order food from Con Gusto's restaurants. The solution also includes content and menu administration for the restaurants.
- Tablet-optimized dashboard in individual restaurants for managing incoming orders.
- Delivery operator dashboard - real-time overview of orders and courier locations.
- Mobile app for couriers.
- Management information system.
Technology
stack
At Cognito, we specialize in web application development in PHP and Symfony Framework. We have large e-shops and SaaS applications running on this platform, so the technology choice was a no-brainer. We worked in a small team and chose the monolith approach with logically separated code for each application to maximize development speed.
For data storage, we used PostgreSQL accessed via Doctrine ORM and DBAL, with Redis for caching.
Frontend
and mobile app
For users, we generate server-side templates in Twig and use Vanilla JavaScript with the Stimulus library for browser-side interactivity.
The courier mobile app is built on cross-platform React Native, communicating with the server via REST using ApiPlatform.
All of this is complemented by our in-house CMS Winston for content management and the Marco e-commerce platform.
Iterative
development process
Our standard workflow includes requirements gathering by the account manager and UX designer, creation of an interactive prototype, UI design after prototype approval, and handoff to the frontend developer.
Meanwhile, the backend team prepares the data architecture. Development runs in 14-day sprints with testing cycles. Each sprint is followed by approval or adjustments for the next iteration.
Performance tuning continued for another week after launch, because testing real-world operations with moving couriers and continuous orders is practically impossible in a simulated environment.
Fun fact
to wrap up
What initially looks like a few lines of code but ends up taking the entire team days of work:
Sound notifications on restaurant tablets the iOS platform completely ignored audio output on iPads. The solution was push notifications via an external service.
Delivery addresses each restaurant has its own delivery zones affecting shipping cost and minimum order. Google Maps autocomplete proved unusable in the Czech Republic due to outdated addresses, so we integrated Smartform.cz with its relevant address database and handle distance calculations via Google Distance Matrix API.
Our
approach
From brief through architecture design to launching the delivery service. Complete development of 5 interconnected applications in one ecosystem.
Analysis & architecture design
UX prototyp a UI design
Development in 2-week sprints
Integration and troubleshooting
Launch and performance tuning
Services and products
we delivered
Custom Development
End-to-end custom web application development—from the e-shop interface through tablet dashboards to a mobile courier app.
Digitalizace a integrace
Integration with Septim POS, SmartForm for address validation, and Google Distance Matrix API for delivery zone calculations.
PHP a Symfony
Monolith with logically separated code for 5 applications on the enterprise-grade Symfony framework.