Quokka is a flexible and modular CMS powered by Python, Flask, and MongoDB. Initially, Quokka was an attempt to implement all the CMS features in a non-relational database and it is a reason why Flask and MongoDB are used. Moreover, employing a set of Flask application and its extensions Quokka also provides a full-stack platform for generic applications. This project is distributed under the MIT license.
With Quokka you can develop blogs, social networking websites, intranets, simple e-commerce solutions, content portals and magazines, polls, giveaways, tutorials, courses, etc. Quokka works with several major operating systems, including Ubuntu, Debian, OpenSUSE, CentOS, Distros Linux, MacOs.
Quokka CMS features
Quokka provides customizable admin interface that is built using Flask-Admin and supports theme tweaks, while control over both content and admin interfaces is managed by Role Based Access. Also this CMS features management commands and Admin file browser. Data can be exported to json or csv.
Quokka is perfect for blogs, since it includes Blog/News posting app and comments support, as well as support of beauty URLs and SMART-SLUG (it is a WordPress plugin that ‘smartifies’ post, page, tag and category slugs and allows them to convey the very essence of the content's titles). Also Quokka is ready to use Celery. It is an asynchronous task queue/job queue based on distributed message passing. Tasks can execute either asynchronously or synchronously. Celery is used in production systems to process millions of tasks a day.
Quokka uses TinyMCE WISIWYG Editor. Default website theme is based on zurb.foundation CSS framework. Although there is opportunity to change appearance using Flask themes. A theme in this case is a folder that includes static media (e.g. CSS files, images, JavaScript) and Jinja2 templates, with some metadata.
Quokka tries to implement quokka-modules similarly to Django. It means that there is no need to install or include new modules in config files, or change quokka code to load the module. Dropping new module package in quokka/modules and restarting your server is enough. quokka-modules are built following the Flask Blueprints pattern. There is support for most popular modules, like cart, e-commerce, LMS, etc.
Quokka is a young but promising CMS with interesting approach to the back-end database and features implementation. Visit quokkaproject.org to get more information.