We're sorry but this page doesn't work properly without JavaScript enabled. Please enable it to continue.
Feedback

Building plugin ecosystems with Django

Formal Metadata

Title
Building plugin ecosystems with Django
Title of Series
Number of Parts
32
Author
License
CC Attribution 3.0 Unported:
You are free to use, adapt and copy, distribute and transmit the work or content in adapted or unchanged form for any legal purpose as long as the work is attributed to the author in the manner specified by the author or licensor.
Identifiers
Publisher
Release Date
Language

Content Metadata

Subject Area
Genre
Abstract
The power of some popular web applications like WordPress comes from a flexible plugin system. This talk will show how to implement such plugin architectures for Django applications including real-world examples. It is probably common sense by now that modular architectures win over monolithic architectures in a number of ways. Django gives us reusable apps, but just because they are reusable doesn’t mean they automatically integrate nicely with each other and a Python programmer is still required to glue them together. In this talk I will show how to build a rich Django application that provides a well-defined plugin API. The API will allow plugins to seamlessly integrate with the main application. The talk will show various patterns around URL routing, Django‘s signal system and the use of setuptools to provide auto-detection of installed plugins. Installing a plugin should not be much more complicated than a simple pip install. The explained architecture has been in use for some years in the pretix open source project and made it possible to us to grow a rich plugin ecosystem.