Created 1 year ago
Last updated: 2 months ago

Booking Overview for Saunas in Oslo

usefulness
users
fun factor

Oslo Badstuforening is a great non-profit Sauna association in Oslo. They have multiple saunas in Oslo, and you can book them online. However, the booking system is not very user-friendly (they use something called Planyo), and it's hard to get an overview of the saunas. So I created this website to make it easier to get an overview of the saunas.

screenshot of sauna overview

The scrapes the data from the Planyo iframe that is normally embedded on the Oslo Badstuforening website. This data is stored in a PlanetScale database, and the website fetches the data from there. The website is a Next.js app, and is hosted on Vercel. It uses the app router.

a booking overview example

Every minute a cron job will trigger a serverles function to scrape the Planyo iframe. It's pretty simple JSDOM-based scraping, and works pretty well. The Planyo iframe is very slow, sometimes takes several seconds to load. So I've had to be weary of the 10 second timeout on serverless functions on Vercel.

Github Source