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.
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.
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