Hobart.com.au
A multi-domain tourism platform: one codebase running 20 location-based sites, with a Flask API pulling live tour and accommodation data from Wotif, Rezdy and others.
Overview
hobart.com.auHobart.com.au is a location-based tour and accommodation listings platform, and one of the more technically involved projects in my portfolio. One codebase runs 20 domains, each tailored to its location, with a Flask API aggregating tour and accommodation data from booking platforms like Wotif and Rezdy. Each visitor sees a site specific to where they are and what they're looking for.
What we did
- Custom Flask API for third-party data aggregation
- Wagtail (Django) front end for content and editorial control
- Single codebase running 20 location-specific domains
- Visitor-specific content rendering
- Integration with Wotif, Rezdy, and other tourism APIs
- Performance optimisation across the domain network
Tech stack
The Project
Twenty location-based tourism sites, one codebase.
Hobart.com.au is the visible face of a bigger platform: one Python application powering 20 location-specific tourism sites.
The technical problem: how do you run a network of tourism sites that each feel local, without maintaining twenty separate codebases? Twenty individual sites is an impossible maintenance load. One site stretched to twenty locations through configuration alone ends up feeling generic.
One Python codebase runs all 20 domains: Wagtail (Django) for content and a custom Flask service for the API layer. Each domain has its own editorial layer, location-specific content and branding, but they share the logic for content management, search and the third-party integrations.
The Flask API connects to booking platforms (Wotif, Rezdy and others), pulls live availability and listings, normalises the data across providers, and serves it to every domain in a consistent shape. Visitors see local tours, accommodation and content, and the editorial team never duplicates work across sites.
I built it end to end: the Flask API, the Wagtail front end, the multi-domain setup, the integrations, and the performance and security work to run it reliably. It's an application that happens to look like a website.
Get in touch
Like what you see?
Get in touch and let's build something great for your business.
Let's talk about your project.
Ready to get started? I'd love to hear about your business and what you're looking to achieve online.