An unfinished roadside assistance platform, taken over and brought to release.
Wein connects drivers in Algeria who need help on the road with nearby towing companies, mechanics and independent providers. We took over its in-progress Flutter customer and provider apps and Laravel backend, stabilised both apps, relocated and recovered the backend, and delivered both Android apps to Google Play closed testing.

- Client
- Wein
- Industry
- Automotive · Roadside Assistance
- Market
- Algeria
- Release Stage
- Google Play Closed Testing
Wein didn't need a blank-canvas build. It needed a team that could pick up an in-progress, two-sided product, make the customer app, the Wein Partner provider app and the backend work together reliably, and get them to a controlled release. We took over the codebase, fixed the client-reported issues, moved and recovered the Laravel backend, completed the realtime request, offer, tracking and notification integration, and shipped both apps to Google Play closed testing.
- Takeover of an inherited Flutter codebase across two Android apps
- Stabilisation and client-reported issue fixes before release
- Laravel backend relocation and recovery on Railway (EU)
- Both apps released to Google Play closed testing
The product, by the numbers
Product scope and configuration, not downloads or revenue
Android Apps Released
2
Roadside Services
25
Service Categories
9
Languages, RTL Supported
3
An in-progress product, not a blank canvas
The engagement started with an existing, unfinished codebase. Both mobile apps needed stabilisation, the backend needed to be relocated and recovered, and a list of client-reported issues stood between the product and a release. The two sides of the marketplace, drivers and providers, also had to share one request lifecycle and behave like one product rather than two unrelated apps.
The priority was to make both sides work together reliably and reach a controlled release, without throwing away the work already done or presenting it as an entirely new build.
Inherited Flutter codebase
Two in-progress Android apps to understand, continue and stabilise.
Backend to relocate and recover
The Laravel services both apps depend on needed a new, working home.
Two sides, one lifecycle
Requests, offers, tracking and notifications had to flow correctly between both apps.
Three languages
Arabic, French and English, with right-to-left layouts and language switching.
- In-progress codebase from an earlier team
- Client-reported issues blocking release
- Backend needing relocation and recovery
- Customer and provider apps not yet release-ready
- Codebase taken over and development continued
- Both apps stabilised and reported issues resolved
- Laravel backend relocated and recovered on Railway (EU)
- Both Android apps in Google Play closed testing, with Play App Signing
Stabilise both apps, recover the backend, then release
We took over the existing Flutter applications and their Laravel backend, worked through the client-reported issues and stabilised both the customer and provider experiences. In parallel we relocated and recovered the backend, restoring the service foundation both apps rely on.
With the foundation back in place, we completed the mobile-to-backend integration across the realtime architecture: requests, offers, live tracking and push notifications, using WebSockets over the Pusher protocol against Laravel Reverb and Firebase Cloud Messaging.
Finally, we prepared and delivered both Android apps through Google Play closed testing with Play App Signing, keeping the existing Arabic, French and English experience, including right-to-left layouts and language switching.
A two-sided marketplace across four areas
Customer app
- 25 services in 9 categories
- Location pin, photos and voice note
- Choose from live provider offers
- Shareable tracking link for family
Wein Partner app
- Online and offline availability
- Nearby requests and counter-offers
- Job stages and earnings dashboard
- Verification documents and plans
Dispatch & realtime
- 10, 25 and 50 km broadcast tiers
- Laravel Reverb WebSockets
- Push notifications via FCM
- Queued jobs with Horizon
Admin & localisation
- Filament admin for services and providers
- Subscriptions, banners and support tickets
- Arabic, French and English with RTL
- Background location with prominent disclosure
Inside the apps
Original store-presentation graphics supplied by the client. Prices, earnings, ratings and job counts are interface examples, not verified results; one screen shows a demonstration map location.
Wein customer app — for drivers who need help






Wein Partner app — for towing companies, mechanics and providers






One request lifecycle, shared by both apps
A driver identifies the problem, drops a pin and can attach photos and a voice note. Nearby providers receive the request and send prices; the driver picks an offer instead of receiving an unexplained assignment. From there, both apps follow the same job stages, with chat, ratings and reviews after the job.
Broadcast tiers: 10 km · 25 km · 50 km — configuration, not arrival-time guarantees.
The stack behind Wein
Flutter
Riverpod, GoRouter, Dio and EasyLocalization across both Android apps.
Laravel 11 & Filament
Backend services and the administration panel for services, providers and settings.
MySQL, Redis & Horizon
Data, caching and queued jobs for broadcasting and notifications.
Laravel Reverb
WebSockets over the Pusher protocol for live offers and tracking.
Google Maps & FCM
Location, tracking and push notifications to drivers and providers.
Railway & Play App Signing
EU-region backend hosting and secure Google Play releases.
From takeover to release
Closed testing is a controlled release stage, not a public production launch
2 Apps
In Closed Testing
Recovered
Laravel Backend
25 / 9
Services / Categories
3
Languages With RTL
How the takeover unfolded
- 01
Phase 01
Takeover & audit
Inherited Flutter apps, backend and reported issues reviewed and prioritised.
- 02
Phase 02
Stabilise the apps
Customer and provider experiences fixed and made release-ready.
- 03
Phase 03
Recover the backend
Laravel services relocated and restored on Railway in the EU.
- 04
Phase 04
Integrate realtime
Requests, offers, tracking and notifications working end to end.
- 05
Phase 05
Release
Both Android apps delivered to Google Play closed testing.
Services used for Wein
- 01On-Demand App DevelopmentTwo-sided apps with dispatch, offers and live tracking.
- 02Flutter DevelopmentStabilising and extending Flutter apps.
- 03Laravel & PHP DevelopmentLaravel backends, Filament admin and recovery.
- 04Software Maintenance & RescueTaking over and stabilising inherited projects.
- 05Mobile App DevelopmentAndroid and iOS apps built and released.
- 06Automotive IndustrySoftware for dealers, workshops, fleets and roadside services.
Stuck with an unfinished app?
Tell us where you want to go. We'll show you how to get there, and then build it with you.