Cache once, serve everyone
The API fetches each piece of live data once and shares it between every user asking for it. That keeps answers fast and stays well inside the data providers' rate limits as usage grows.
Case study
How Techlina designed, built and shipped a bus, tram and train app for the West Midlands, with a Java backend and a single low-cost server.
At a glance
Brumly is Techlina's own product: a free app for getting around the West Midlands by bus, tram and train. It was designed and built in-house by Techlina's engineering team, from the first screen to the store submissions, using the same approach we use for client apps.
It is a small product next to the government and enterprise systems our team usually works on. That is the point of including it: it shows the whole job, from idea to app stores, done in-house on a realistic budget.
Travel information for the West Midlands is spread across several operators and data sources. The aim was one simple, free app that brings live information for buses, trams and trains together, and that stays cheap to run while it finds its audience.
Engineering decisions
The API fetches each piece of live data once and shares it between every user asking for it. That keeps answers fast and stays well inside the data providers' rate limits as usage grows.
One right-sized Lightsail server with a fixed monthly price runs the API and caches in Docker. There are no surprise bills from auto-scaling while the audience grows.
Maps use MapLibre with OpenFreeMap tiles, so there is no per-map-view charge from a commercial map provider.
Automated build and submission tooling produced iPhone and Android builds from one codebase, with the same release steps each time.
Your project
The 6-Week App Launch uses the same stack and the same discipline: a tight scope, one codebase for both platforms, a well-built API and hosting sized for where you are now, not where you hope to be in five years.
See the 6-Week App LaunchTell us what you want to build. We'll give you an honest view of scope, timing and price.