About •  Books •  Apps •  Jobs •   Feeds •  Twitter
Login

Features of a good Django plugin

Well, my opinion on them anyway.

A while back I wanted to allow openid logins on my site. A simple problem which a few plugins released to the Django community make easier. However there's quite a few of them (we list 4, there's more) and none of them quite work the way I want.

So what's wrong with them? Most of them define front end templates or particular models or a particular way of doing it. I don't want that, I just want to make my application do openid authentication. So in frustration I have something which is a complete rip off of django-simple-openid from BenoĆ®t Chesneau.

When I'm building a website I do the following:

If I'm going to create all these steps I want a plugin that fits into this pattern. A lot of them end up being like contrib.comments, something you have to fight to get customised. As an example, here's what I would like to see in an openid plugin:

Thinking about it this mirrors the general Django philosophy in many ways. Perhaps a list for what a plugin should have:

The primary job of someone using your plugin is to integrate it with their application. Let's make that a bit easier. 

Disclaimer: the new openid implementation from Simon Willison looks great. Although it does look worryingly complex, it seems to (at my quick glances over the code) accomplish the above.

Other disclaimer: it's easy to say this standing up on my ivory tower since I haven't actually released my openid library, because its a hacked up mess. Chances are as soon as I write about this, someone will come along and point out their Django openid plugin which does it just the way I want. I hope so.

Comments

There are no comments.

Login to add comments