A comprehensive travel planning platform with mobile apps on iOS and Android, and a full-featured Next.js website. Itinatour helps travellers discover destinations, plan itineraries, and explore the world.






Overview
Itinatour is a travel planning platform I founded and built from the ground up. The platform consists of cross-platform mobile applications for iOS and Android built with Flutter, and a responsive web application built with Next.js and TypeScript. The goal was to create a seamless experience for travellers to discover destinations, create personalised itineraries, and access travel information on any device.
Technical Architecture
The mobile apps are built with Flutter and Dart, taking advantage of a single codebase for both iOS and Android. The web platform uses Next.js with the App Router for server-side rendering, dynamic routing, and API endpoints. The backend is powered by Supabase (PostgreSQL) for the database, authentication, and real-time capabilities, with additional microservices written in Go for high-performance operations. The entire system is deployed on Vercel with automated CI/CD pipelines.
Key Features
The platform includes interactive maps powered by Mapbox for exploring destinations, AI-powered itinerary generation, comprehensive place and activity management with rich media, user authentication and trip management, and a full admin dashboard for content moderation. The mobile apps support offline functionality, push notifications, deep linking, and location services.
Startup Journey
As part of building Itinatour into a business, I participated in the University of Adelaide ThincSeed Pre-Accelerator program for founders. This involved refining the business model, understanding the market, and developing a go-to-market strategy alongside building the technical product. I manage all development tasks using an Agile Kanban approach with GitHub for version control.
What I Learned
Full Product Ownership
Building Itinatour from scratch taught me what it truly means to own a product end-to-end. From database schema design to App Store submissions, every decision was mine to make. I learned that the hardest part of building a product isn't writing the code — it's making the right trade-offs between scope, quality, and speed when you're the only developer.
Cross-Platform Architecture at Scale
Managing a Flutter mobile app, a Next.js web app, and Go microservices simultaneously forced me to think carefully about shared data models, API contracts, and deployment coordination. I learned to design APIs that serve both mobile and web clients efficiently, and to structure code so that business logic isn't duplicated across platforms.
Supabase & PostgreSQL in Production
Running Supabase as the primary backend taught me the power and limitations of a BaaS approach. I gained deep experience with PostgreSQL features like PostGIS for geospatial queries, row-level security policies, and real-time subscriptions. I also learned when to reach beyond Supabase and build custom Go services for performance-critical operations.
The Founder Mindset
The ThincSeed Pre-Accelerator shifted my perspective from 'engineer building features' to 'founder solving problems'. I learned to validate ideas before building them, think about unit economics, and communicate a product vision to non-technical audiences. This mindset now shapes how I approach every project — always asking 'does this solve a real problem?'
Key Challenges
- Building a performant cross-platform mobile app with complex mapping features
- Designing a scalable database schema for travel data with geospatial queries
- Implementing AI-powered itinerary generation with personalised recommendations
- Managing the full product lifecycle as a solo founder and developer