Why Strapi?

“The Time To Market of any product is very short nowadays.” This means the traditional approach to bring a product to market is no longer viable. Why? Let’s explore where in the traditional world would you start:

Conventionally you start by creating your infrastructure and then host your database, host your web server,  create your backend and expose the API, create your front end and finally create the templates or views to present your data. By that time you have lost months, but with Strapi, you create your API, build your frontend and then boom! You have an application market ready in no time. How exactly? Check by answering these following questions: Do you want :

  • A decoupled backend and frontend? 
  • To host these two systems separately? 
  • To have your own presentation layer for your frontend (e.g. React/ Angular/Vue)? 
  • To use any databases of your choice (MySQL, PostgreSQL, MongoDB or SQLite)? 
  • Couldn’t you be a fan of template engines? 
  • Freedom from sticking to one theme?
  • To provide your application for all possible channels? 
  • To create an API without writing a single line of code? 
  • Most importantly do you want it “FREE”?

 If all the above questions answers are “YES” then that is why you need Strapi!!

Now it is time to explore new, but from what? Traditional CMS?  Means a database, backend and frontend. Only if it was that simple! Let’s ask simple questions and see the answers: 

  • Where to store the content and digital assets? – Database
  • Where the content is created and managed? – Backend
  • Where content publishers and ux designers create and apply design schemas?  – Backend
  • Where published content is displayed? – Frontend

The answers to the questions above show that the business logic and the presentation logic is tightly coupled. There is no API to handle communication between stacks. It also requires maintaining its own web server and database. There your editors are writing and publishing on the back end of the same system where your website visitors are viewing. Blogging platforms, such as WordPress, Squarespace, and Wix follow the same structure. Now you can forget about all the cumbersome tasks with Strapi’s cool features.

Headless & NO Boilerplate code

The real need of any projects these days is to store and expose data as rapidly as possible. There comes the concept “Headless”, meaning no head or no view. This is dominated by API driven architecture. But the question might arise, “Can I not create and expose an API with another tool?”, Yes you can but Strapi will let you remove all boilerplate code and focus on business logic only. 

CRUD operations

50% of coding in any application development happens to build a CRUD functionality and provide an administration system. For that Strapi takes away the entire chunk of task and gives you an inbuilt administration system. 

100% Javascript

Use JavaScript for both of your cms and frontend to rule them all. 

Frontend agnostic

By exposing CRUD API Strapi allows data to be viewed from any endpoints rather than sticking to one way of presenting data. That means you choose how you want to display your data by creating your frontend in any language or framework you want.  

Expand app for various channels

Modern days consumers have a demand for “Access everywhere” – which not all businesses have adapted to this numerous opportunities yet. For instance:

  • Wearables
  • Chatbots
  • SmartTV
  • Smartphones
  • Smartwatches 
  • IOT devices
  • B2B portals
  • Traditional web ( desktops, laptops)
  • Marketplaces (Ali express, Amazon, ebay etc.) 
  • Point of Sale devices (Kiosk)
  • VR & AR

You just name it and your application should be available everywhere. 

So, if all of a sudden you have a new requirement for your smartphone, your application shouldn’t take a lot of effort to change either content, design and user experience. Strapi makes data available through a 100% customizable API to be a perfect fit for any channels or endpoints. 

Login flow by OAuth and OAuth2 providers

Save time and use authentication providers for login. You can check all supported providers list there: https://github.com/simov/grant#180-supported-providers–oauth-playground

Server-side pagination

Most of the applications need to return some list of entities that require pagination. Strapi provides out of the box server side pagination. 

Database agnostic

You have a freedom of relational or no sql database to use (MySQL, Postgres, SQLite, MongoDB). For instance Django only supports relational databases. 

Full text searching

If you need to search any data in the database or collections you have created Strapi gives you the full support.

File upload 

It allows files to be uploaded on any cloud storage or on the server itself. 

Data filter

It allows the user to filter data without writing SQL queries. 

Admin panel

Strapi allows administration of users and roles at API level. 

GraphQL 

By complementing REST, Strapi provides GraphQL features to easily fetch data for hierarchical structure of related objects.

Self-hosted

After the GDPR compliant requirement arrived security is extensively crucial for any companies these days. Strapi, therefore allows hosting your data safely on your own server or in the cloud. 

In a nutshell Strapi is a powerful tool that is developer first, content creator friendly and business conscious. Go and have it a go!

Leave a Reply