In my recent journey, I found myself exploring something I had never done before: relying on a service to handle a website. As a senior developer, I have always strived to maintain full control over my projects. However, my perspective shifted when I discovered Notion—a platform that intrigued me with its ability to power websites, as I described in this post.

In my post, I touched on the idea of hosting the landing page for my new course using Notion. However, as I delved further into the project, I realized that I needed to customize it in ways that were not readily achievable with Notion or its associated tools. Specifically, I wanted to embed a payment modal, a task that proved challenging within the limitations of a no-code solution.

Here’s how I tackled the situation: I initially built the landing page in Notion, appreciating its user-friendly drafting capabilities. Afterward, I exported it as HTML—a clean and minimally-styled output. To ensure a responsive design, I added some additional code snippets. I then proceeded to customize the HTML to accommodate the necessary payment processing elements, making several adjustments along the way.

For publishing, I have chosen to utilize Cloudflare Pages. Consequently, I transitioned from a purely no-code approach to combining no-code tools for creating a draft that was later enhanced with code. This blended approach appealed to me, as it allowed me to leverage the ease of use offered by Notion while retaining the ability to further refine and customize my project.

As I embark on my next course, The JavaScript Course, I remain committed to using Notion for its unparalleled flexibility—a valuable asset in simplifying the course delivery process. However, I have decided to limit Notion’s use to that specific aspect of my project, alongside my personal materials. It truly is an excellent platform for this use case.

Looking ahead, once the course concludes, I might consider exporting it from Notion and constructing a static site. This approach would provide the benefits of effortless drag-and-drop updates, instantly reflecting the ongoing cohort-based course structure where new lessons are unlocked daily. Once the curriculum is “finished,” the site could enter some form of “archive mode.” While the feasibility of this idea remains uncertain, I find it rather intriguing.

Despite the allure of fully embracing the no-code philosophy, I find myself hesitant due to concerns about relinquishing control. As a developer, control and freedom are paramount to me and highly valued in my work.

In conclusion, my foray into using a service like Notion to power my websites has been illuminating. It has allowed me to strike a balance between the convenience of a no-code solution and the ability to dive into coding for further customization. This newfound approach offers me the control and flexibility I desire while still leveraging the benefits of user-friendly platforms like Notion.