DEV Community

Cover image for Nice to meet you, Strapi!
Danilo Tenorio Raisi
Danilo Tenorio Raisi

Posted on

Nice to meet you, Strapi!

Strapi is one of the largest and best Headless CMS that exist. It is Open Source and can be used for free without limitations.

Looking for portuguese content? Click here

They offer an enterprise plan, with support and some important features for companies, and also a specialized Cloud if you want to use.

As our goal is to keep everything at no cost (or as cheap as possible, depending on the size of your project), we will use services with a generous free tier (prioritizing Open Source, of course).

Headless CMS, what's that?

At this point, if you don’t know, you should be wondering “but what is a Headless CMS?”.

Well, let's first understand what a CMS is.

CMS is the English acronym for Content Management System.

With a CMS, you can organize texts, images, videos and various other elements, making it easy to publish content on the web.

CMS platforms can provide both content and front end, enabling some kind of customization.

Do you want an example? That place we are, Dev.to. Behind this article, there is a system called Forem, which allows me to write it and publish it for you to read.

In addition, it also provides an API, so I can use the content created here elsewhere.

We enter here in the concept of Headless CMS. A system like Strapi manages and provides content through a REST or GraphQL API, being the responsibility of those who consume this content to show user-friendly.

Why Strapi?

The first time I was introduced to Strapi, I was looking for a CMS that was easy to deploy and maintain. Among the many options I analyzed, Strapi proved more promising for being Open Source, extremely lightweight, highly customizable, providing a good experience for editors.

When I started with Strapi, it was still in v3 (the version that is still used on the site I am migrating). Currently, we are in v5.

During this series, we will see how relatively simple it is to create content in Strapi, how we can reuse concepts and generate a lot of dynamic content.

In fact, what is this migration I'm doing, you should be wondering.

Basically, I created a landing page for a project that I have as a hobby, and wanted a way to leave everything with the best level of customization possible.

Even creating new pages, menus, everything!

Here comes one of the best parts of Strapi, to be Headless!

And why Headless?

I’ve worked with WordPress and Drupal, for example, and one of the most “annoying” things in producing and maintaining content in them is customization.

As my purpose for this project was to create a “website creator”, I chose to keep content in Strapi and develop the necessary components to display this content with React and Next.

The current site is working, but as it already has a time that has been developed, I decided to give a refresh and change the technology behind.

The back end will be maintained with Strapi, only improving types and components (be patient, during the series we will better understand all this).

Already, the front will migrate from Next to Astro (I can write an article about why this change later).


Outro

I could stretch myself in this article and talk about several good and bad things from Strapi, but I prefer to leave to treat them at the right time, as we migrate everything.

In addition, Strapi has a fantastic documentation and, as I usually say, nothing better than the documentation to start.

Then follow some important links:

Ah, you can see the comparisons between Strapi and several CMS:

Top comments (0)