A car dealer's platform rebuilt in Rust, without losing a URL, a car or a login
G8 Motor, a car dealer in Portugal, ran its stock website and back office on a Rails 6.1 app from 2018. We rewrote it in Rust on the same database and photos, so staff kept their logins, then gave the public site a new design, a 3D showroom and SEO built for search engines and AI assistants.
- Client
- G8 Motor
- Platform
- Website and back office
- Industry
- Automotive
- Launched
- 2026
The challenge
The old app still worked, but it ran on an aging Rails 6.1, shared one server with its database and carried bugs that cost the dealer leads: the public search filters never worked and phone photos could appear rotated.
What we built
A full rewrite that kept everything the business relied on, followed by a new public site. Built in Rust with axum and PostgreSQL, and deployed on Kubernetes.
Same URLs, data and logins
The new app reads the same database, the same photo storage and the same password hashes, so links, stock and staff accounts carried over as they were.
A modern public site
A fast, mobile-first stock website with a WhatsApp button, redesigned once the rewrite was live.
A 3D virtual showroom
A three.js stand where visitors look around the cars, the brands and the contact details, downloaded only when a visitor opens it.
Search and AI visibility
Meta tags, JSON-LD, a sitemap, an FAQ and an llms.txt generated from live stock, so search engines and AI assistants can describe the dealer and its cars.
Photos straight from a phone
The back office fixes the orientation, resizes to 1920 px, removes GPS and other metadata and processes one photo at a time, so a phone camera is all staff need.
Privacy and security
Privacy and terms pages with the company's legal data, analytics only after cookie consent, Turnstile on public forms and on login, and email signed with DKIM, SPF and DMARC.
Engineering results
Counted in the code in September 2026; memory measured in production in October 2026.
- Rollback was a DNS change while the old server stayed available
- Record counts compared between the old and new databases before the switch
- No photos copied: the new app uses the same storage bucket
- Read replicas serve the public pages, with automatic fallback to the primary
Technology
- Rust
- axum
- PostgreSQL
- three.js
- Amazon SES
- Cloudflare Turnstile
- Kubernetes
- Honeybadger
Need software built around your business?
Integrations, internal tools, apps and platforms, built to order by senior engineers directing AI agents. Tell us what you need and we will show you how we would build it.