Wordpress alternative using Python
Why is there still no Python-based alternative to WordPress? Let’s take a look at the existing solutions available for managing content in Python.
Good News! There are alternatives.
Some of the CMS solutions we tested in Python:
- Storyblok (a headless alternative)
- Hyde (it’s more of a counterpart for Jekyll)
- Pelican (another static site generator)
Problems we had with the traditional CMS
They work - sure - but all of them forced us to use their whole stack. They require you to install a big package and you can’t simply add them to your existing projects.
With frameworks like Django in Python, Laravel in PHP and Rails in Ruby you can easily create a simple blog-admin-interface (title, text, image) in a few steps. But do you really need to blow up your project with CMS functionality when you can have a decoupled service?
Headless/API-based CMS are now opening the field for more programming languages by not forcing you to use one specific technology - also hosting for Python and Django projects got a lot easier - thanks to Heroku & Divio Cloud.
Let’s compare some CMS types
|Traditional / |
|Decoupled / |
|Free choice of technology||Yes||Yes|
|Frontend editing capabilities||Yes||Yes|
|Highly customizable frontend||Yes||Yes|
|Easier to scale for high traffic||Yes||Yes|
|Themes and templates||Yes||Yes|
|Support for native apps||Yes||Yes|
|Custom field types||Yes||Yes||Yes|
The future proof alternative
Sometimes we already have a Python/Django application up & running and simply want to plugin a CMS for our editors. With the next generation of CMS this is now easier than ever.
Storyblok the next-gen API-based CMS is built to augment your web framework or the technology you already use with powerful frontend editing capabilities to bring your static websites to life. Different from other API-based CMS solutions the editor can directly work on the front end of the website. With an intuitive interface like that you don’t need to give trainings for your clients to let them figure out what happens when they fill out a form in an old school CMS.
“Talk is cheap. Show me the code.” - Linus Torvalds
I want Python - Now!
We wrote an article on how you can add an API-based CMS to Python/Django in about 5 minutes - the best thing - the customization options are endless. It’s the ideal choice for creating landing pages, complex grid/column layouts and of course blog entries.
Next: Learn about components
How thinking in components can increase your productivity? Components are units of code that are nestable, reusable and decoupled. They help you to don’t repeat yourself writing the same functionality or HTML tags multiple times. They ease the process of thinking because in the world of components everything is just a component. You don’t need to figure out how to structure your project in logical parts. This makes your project also much more maintainable when you work in a team.