Reborn of an API — Kabina CMS DevLog #1

Furkan Zerman
Upskilling
Published in
3 min readMay 16, 2022

Hello Cockpit Lovers and users. Cockpit CMS was a great project for developing an API fast and also it could handle 1200 requests per second on Lampp in Ubuntu 20.04. However, some reasons cause me to create an idea about the death of this project in my mind 😒. Of course, I have a proof for creating this idea.

  • No regular updates.
  • No security updates or vulnerability reports.
  • No documentation of the project’s codebase for developing an extension or any update.
  • No changelog.
  • No any automatic update feature for the backend.
  • No official clients or SDK.

You can say at this moment, that it is a simple project and it is designed based on simplicity. However, remember this is an API-based CMS project on the web. Your data transfer should be secure and modern. Clients love simplicity. Yes, that's right. But also they hate security vulnerability. As web developers, we should remember that always.

If I answered some possible questions, let's get started to explain the new modern system of Kabina. Yes, I forked it, and it will be published its new name “Kabina”.

Reborn of an API

Kabina uses Symfony as a core framework. Using an open-source and popular framework as the core of this project is awesome for developers and us. Because an existing framework can save a lot of hours for you. Okay, but why Symfony or why not Laravel? We can discuss it in the comments or on Github. The explanation of this choice may require a long article 😅. So, I don't explain it in this article.

👉 Disclamer: Kabina is not affiliated or supported by Symfony.

Modern Authentication System

Kabina uses JWT tokens for authentication. Don’t assume it is like an API key. Kabina uses refresh-access tokens for authentication in requests.

https://developer.ebay.com/api-docs/res/resources/images/ebay-rest/refresh_token_650x460.png

This system provides some pros for us.

  • No required session storage in the database.
  • Simple implement to mobile apps.
  • User-specific access management.

New High Customizable Dashboard

Kabina uses Sonata for the dashboard core. We try to create a simple and good-looking dashboard that is our best. There is no screenshot at this moment. However, you can see it in the next devlogs.

Summary

To sum up, you can see some details about the Kabina in this article. I talked about these three topics:

  • New Symfony Core
  • New Modern Authentication Sytem
  • New High Customizable Dashboard

If you are interested in this project, you can follow my Twitter for more news. You can contribute to this project by donating money or helping with some needs such as development, marketing…

All links you need are here: https://linktr.ee/stingydev

Thanks for reading this article. See you in the next articles. Happy Coding 💻 ☕️.

--

--