The client
Personal brand project. What The Canuck?! is our own travel and lifestyle brand, not a client engagement - built and run in-house. The site brings together travel stories, an interactive map of every trip taken, and the brand's house-sitting assignments and social content in one place.
The challenge
The brand's content lived scattered across Instagram, TikTok, blog posts and a mental map of past trips, with no single home that tied it together. There was no way for a visitor to see, at a glance, everywhere we had travelled, what we'd recommend, or where we were house-sitting next.
The solution
I built the site from scratch as a custom Laravel application with a Filament admin panel behind it, so the we could run and update everything ourselves.
Travel, mapped
A travel history map (/our-travels/{year}) plots every trip on an interactive Mapbox map. Car and bus journeys follow real road routes pulled from the Mapbox Directions API and cached for 30 days, rather than straight lines between points. A progress bar with month ticks lets visitors scrub through the year, and on mobile a location-and-date pill keeps context visible as the map plays. A companion Location History timeline shows recent travels chronologically, with transport-method icons (plane, car, train, bus, boat) and alternating map thumbnails.
Social content, home-grown
Instagram and TikTok feeds are pulled directly into the site rather than just linked out to: a Polaroid-style carousel surfaces recent Instagram posts with captions and hashtags, and a separate carousel holds TikTok videos, both managed from the admin panel rather than re-embedded by hand.
House-sitting assignments
A dedicated carousel section showcases our Trusted Housesitters placements, with drag-and-drop reordering in the admin so the most relevant assignments can always be pinned to the front.
A site the brand controls
Every section above - articles, products, map/location data, social carousels, house-sitting cards - is managed through the Filament admin panel, so new content goes live without a developer touching code.
The launch
The site was built and iterated on a separate staging subdomain before going live on the production domain, each with its own database so testing never touched live data. A dynamically generated sitemap keeps search engines current as content is added, and the required legal pages (terms, privacy, cookies) sit behind a cookie-consent banner that gates Google Analytics until a visitor accepts.
The results
All of the brand's travel history, recommendations and social content live in one connected site instead of scattered across platforms
The interactive map and timeline turn "everywhere we've been" into something visitors can actually explore, not just a claim
We publish and reorder content ourselves through the admin panel, with no developer needed for day-to-day updates
Tech stack: Laravel, Filament, Alpine.js, Mapbox GL JS (with the Mapbox Directions API), Instagram and TikTok integrations, Google Analytics