Overview
Snackeroo is a travel and snack blog by Amby, who does the writing, and Sev, who does the web development. They’re an American-Swiss duo based in Washington DC. The site has over 150 posts organized by country and city, an interactive map, and client-side search, plus newsletter, contact, and comment forms. It started as an easy way to keep family and friends up to date and to pass tips along to people traveling the same routes.
Frontend
The site is built with Hugo, using Go html/template layouts and hand-written SCSS compiled by Hugo Pipes, so there’s no CSS framework. A small vanilla-JavaScript file handles the mobile navigation and form validation. Leaflet and OpenStreetMap power the interactive map, and Lunr.js provides client-side search built from the page data at build time. There’s no Node build step.
Backend
A small Go microservice on the standard-library net/http (no framework) handles the comment, contact, and subscribe forms, along with newsletter and unsubscribe endpoints. There’s no traditional database; content and form submissions live in Contentful, a headless CMS. Blog posts, countries, and cities are pulled from Contentful at build time by a Python script and written into Hugo content. Notifications go out over Telegram, the newsletter goes out through Mailjet, and a token-bucket rate limiter guards the Contentful calls.
Infrastructure
The whole setup is defined in Terraform, using the Cloudflare, Google, and Contentful providers. The static site runs on Cloudflare Pages, rebuilt on every push to master through Cloudflare’s GitHub integration and again whenever a Contentful webhook fires on publish. Cloudflare also handles DNS and the CDN. The Go service runs on Google Cloud Run in us-central1, built with ko and pushed to Google Artifact Registry.