Depiction of a forest fragrance

Mo's Blog

Switch to deSwitch to es

In Part III of the Strapi + Next.js series, we roll up our sleeves and dive into building the Strapi backend. You’ll learn how to create a localized "Article" content type, configure permissions, and expose a clean API for your frontend to consume. We also walk through defining custom routers, controllers, and services for full flexibility—plus how to manage environment variables for seamless integration with your Next.js app. By the end, you’ll have a powerful, multilingual CMS running locally and ready to scale.

In Part II of our Strapi + Next.js series, we dive into setting up the Next.js frontend from scratch—complete with TypeScript, Tailwind CSS, and localized routing using next-intl. You’ll learn how to scaffold your project, integrate internationalization, and connect to your Strapi backend using SSG and ISR. Whether you're building a multilingual blog, landing page, or documentation site, this guide sets the stage for a flexible, lightning-fast frontend powered by Strapi APIs.

Strapi and Next.js make a powerful duo for building modern, content-rich websites. With Strapi’s self-hosted headless CMS and Next.js’s flexibility (SSG, SSR, ISR), you get full control, speed, and scalability—ideal for localized apps, SEO-driven sites, or fast MVPs. In this first part of our walkthrough, we’ll show you how to set up your frontend with TypeScript, Tailwind, and i18n routing, laying the groundwork for a seamless integration with a Strapi backend.

Building a modern, fast, and scalable blog is easier than ever with the combination of Strapi and Next.js. Strapi, a headless CMS, allows you to manage your content effortlessly through its API-first approach. It provides flexibility, scalability, and a user-friendly interface for content creators, enabling seamless content management and localization.

On the other hand, Next.js is a powerful React framework that excels in building static and dynamic websites with minimal configuration. By integrating Static Site Generation (SSG) with Edge Caching, Next.js provides exceptional performance by pre-rendering your content and delivering it from the nearest server, making your blog blazing fast. This combination of Strapi's content management capabilities and Next.js's performance optimizations ensures a headless blog setup that's both efficient and easy to scale.

In this post, we'll guide you through setting up a headless blog using Strapi and Next.js, leveraging SSG and Edge Cache for outstanding speed and reliability.

TypeScript is a strongly typed superset of JavaScript that compiles to plain JS. It improves code quality, catches errors early, and enhances developer productivity with powerful IDE support like autocompletion, type inference, and safe refactoring. It makes large codebases easier to manage, scales better, and is widely adopted in professional frontend and fullstack development. Mastering TypeScript is essential for advancing in modern development practices.

I want to share anectdotal insights into how SSRIs might have cured my MDD after 20 years of suicidality.

I was born with ADD and barely made it through classes. I was good enough to pass without learning or doing home work, but as I grew up, Depression, addiction, chronic pain and psychosis became such a burden that I wanted to begin understanding what's wrong with me that no doctor can fix.

[...]

Git is a version control system that enables collaboration and code tracking. An important aspect is the use of branches to work on features and fixes. When working on a branch, two key commands are git merge and git rebase. The difference lies in how the history is handled. Merging preserves the history, while rebasing moves local commits on top of the latest remote changes, creating a linear history. Additionally, options like --no-ff and --squash affect how the commit history appears, with --no-ff keeping individual commits and --squash combining them into one.