Skip to content

Building DryCoal: A Block-Based Web Publishing Platform

Over the past few years, I’ve spent a lot of time tinkering with tools for collaboration, sharing, and productivity. Everything these days seems more connected, interactive, and loaded with features. It’s incredible how far we’ve come. One trend I’ve noticed is how nearly every new tool includes a Notion-style block editor. And I totally get it—they’re amazing. They make creating and organizing content simple and intuitive.
But something’s been on my mind: Why hasn’t anyone really built a block editor specifically for web publishing? Sure, there are ways to share documents online and make them look like websites, but they’re often limited, not really optimized, or just plain expensive.
So, during my Christmas holidays, I decided to give it a shot myself. I didn’t have a big plan—just wanted to see how far I could get by putting together some tools I’ve been playing with for years. That’s how DryCoal came to life—a small project to make simple, content-focused websites using a block editor.

What Is DryCoal?

DryCoal is my experiment in building a straightforward way to create websites. The idea is simple: you write and structure your content in a block editor, hit “publish,” and the platform takes care of the rest—turning your content into a fast, static website.
I wanted to strip away all the complexity of traditional website builders while still giving people a way to publish something polished and functional.

How It Works (The Tech Stack)

DryCoal isn’t anything fancy—it’s just a combination of tools that work really well together:
The Core App: It’s built with Next.js, hosted on Hetzner through Coolify. These tools made it surprisingly easy to get everything up and running without much fuss.
The Design: I used ShadCN UI and Magic UI to create the interface. These libraries made it possible to get a clean, accessible design without spending weeks on styling.
The Editor: The editor is based on TipTap, which I customized to include blocks that make sense for websites—like navigation menus and metadata fields. It’s nothing groundbreaking, but it does the job.
Static Site Generation: When you hit “publish,” the platform uses Astro to generate a static bundle of your website. Every image, file, and page is rendered as static HTML, which means the final site is fast, lightweight, and doesn’t rely on JavaScript.
Storage and Hosting: Here’s the part I’m excited about: When your site is ready, the platform creates an S3 bucket on Scaleway (a cloud provider in France). The bundle is stored there, and you get a custom subdomain—or you can link your own domain directly to the bucket using Scaleway’s built-in DNS.

What’s the Point?

Honestly, this project is just me playing around with tools I’ve been curious about. I wanted to see if I could cobble together something useful over a couple of weeks, and it turns out, with the tools available today, you really can build something functional in a short amount of time.
DryCoal isn’t trying to compete with Wix, Notion, or any other big players. It’s just a small project to explore how block editors and static site generation can work together. And, frankly, I think it’s pretty cool that all these open-source tools and affordable cloud services made it possible.

What’s Next?

Right now, DryCoal is just a prototype, but I’m learning a ton from building it. I don’t know where it’s going, but I’m having fun experimenting. If you’re curious, feel free to reach out—I’d love to hear your thoughts, feedback, or just chat about the tools I’ve used.
Sometimes, the best projects are the ones you start just to scratch an itch. For me, DryCoal is exactly that—a holiday project to explore an idea and see where it leads. If nothing else, it’s proof that you don’t need a huge team or a massive budget to build something neat.
Thanks for reading! 😊

Want to print your doc?
This is not the way.
Try clicking the ⋯ next to your doc name or using a keyboard shortcut (
CtrlP
) instead.