Here is a quick overview of kii architecture, so you can quickly understand what are kii built-in components and their role.
Kii functionalities are splitted accross several Python packages, called apps. They are indeed regular django apps.
Kii apps references¶
Provides base API views and logic.
This app is not written yet.
Provides app-related features, such as base model and view, a registry and a base class for kii apps, autoregistration of kii apps urls, and menu management.
Provides many model mixins, base templates, views and forms that are used accross all model-related kii apps (stream, particularly).
It’s a core part of kii.
Implements stream items tagging.
The foundations are here, but this app is not fully written. User interface, form and filtering are still to be done.
Implements comments, trackbacks, pingbacks and webmentions for stream items.
Only comment-related logic has been written for now.
A glue app that sticks all kii apps together. Especially, this app provides a default settings file, some base templates, and most of the default theme static files.
This app is in charge of providing hook-logic, so third-party apps can extend or override the default behaviour of kii apps.
Implements all permission-related stuff on models, views and forms.
A big one, because it implements the core design concept of kii: stream and items. This app relies heavily on most of other core apps, and also provides needed forms, views, urls and templates.
This package is used as a repository for testing code and data. It also provides test urls and settings.
This app should implements theme related logic (like template loaders), but the “how” part is not really clear in my head at the moment.
User related-stuff, such as login, registration, forgotten-password, etc.
Except for the login part, almost averything needs to be done here.
A collection of utility classes and functions that does not fit in other apps.