Dev
Evolution of Blogzzly - Part Two

Tarv

June 9, 2025 at 9:00 PM

Months later, I'm out here vibing with God's green earth, touching so much grass that I might as well qualify as a lawn care specialist then boom, Railway slides into my inbox like, “Hey mate, how about we play a game of “Who’s poorer?”. Sounds like fun.” 😭

railway_trial_-The_evolution_of_Blogzzly-_Part_Two.png

When signing up, you get to discover they offer you a trial. Yes, a trial not a free account plan like most dev tools out there. That means that somewhere in the future you either pay up or just find another PaaS. Anyway at the time of building Blogzzly that didn’t really matter and it doesn’t really when you’re prototyping something fast fellow devs!! 🫵😂. Thank me later.

Like any sane person out there, I start pondering on where else I can host my database before my young blog disappears into oblivion. I look up free POSTGRESQL databases but to no avail. There aren’t many options out there when it comes to the world of free relational databases.

Due to the web scraping I have been doing up to this point and my exploits into trying to scrape DHH blogs I get the idea that I could turn Notion into my database! I can’t describe the bliss of discovering your favourite note taking app has an API 😂. Due to the fact that most of my projects up to this point have been consumption of APIs I feel pretty confident about this idea.

When I dive into building something new, I try using the new technology on something I have built before just to abstract away the complexity of trying to manage something new on top of an already new concept. A few weeks back I had built a scraper which I thought was ripe for this endeavour because it involved scraping data that needed to be stored somewhere which up to this point was a CSV file on my laptop. Between the Notion API Docs and my IDE, I manage to get that scraped data neatly organized in a database on Notion and the boy is happy 😎.

So I then set off to move the Blogzzly database into Notion. If you’re like me, you set off to do some research on how to accomplish what you have in mind and its viability. Lo and Behold, comes the knight in shining armour; GPTs (Generative Pre-trained Transformers) - the words after your favourite LLM aren’t gibberish 😂.

I could go on and on about why you’ll forever be going in circles if you decide to involve an LLM in making the architectural decision for you but let’s save the rant, shall we?

I quickly discover that you have a better chance at making any real progress if you just cut out the LLM at the very start. After that the only other bottleneck is your ego with flashy tech stacks.

55Hilarious-developer-memes-that-will-leave-you-in-splits-15.jpeg

Fr though! Your favourite YouTuber says that the best stack for a blog is the shiny NextJS while the next recommended video says you should not think anything that doesn’t start with the word Astro. SSR? Plain HTML does that all the time dude 😂🫴

I sit down and list what I really want for Blogzzly and the shortest path to achieving that.

Here it is:

  1. Content that is rendered directly from Notion
  2. Just number 1

My simple tech stack should just be a frontend that feeds on the Notion API to get the post and that’s just it. What do I have? A Django project that just begs to get content.

Here’s how I built it in under 24 hours:

  1. Convert it to a Flask project to make it even simpler and get rid of all the batteries Django carries around that I will most probably never get to use.
  2. Build a proxy server that interacts with the Notion API to fetch the posts and then use a markdown parser to convert the content into pure escaped HTML which it serves as the response along other post metadata as JSON.
  3. Consume the proxy API in the Flask App and thats it!

Simple ✅

SSR ✅

Easy content management ✅

Have an idea? Write in Notion and when it’s ready just mark it as published and just like that it appears on the blog. Cool, right? Any edits just involve editing the post in Notion and that’s it. The changes get rendered ASAP on refresh.

Guess what? The interface remained just as it was. Absolutely no change whatsover and that just goes to prove that the tech stack never matters.

Just do it in whatever you know easiest seriously. No one can tell the difference!