Since 2003, I’ve been maintaining a forum. It was constantly growing, from 60 users to 1800 at the time of writing. As the forum was growing, the demand for moderation work was growing as well. I recruited moderators from the most active and trustworthy users. It helped maintain the order on the forum, but the load on the moderators was constantly increasing.
While learning about the new Web 2.0 services, I got an idea of finding a forum engine with tags. I found a mod for phpBB, which adds tags, but I must confess that I don’t particularily like phpBB and want to move out of it.
Looking for alternative forum engines, I’ve come across Vanilla and I loved it. It’s modular, it looks sexy, it’s got a lot of plugins, it’s easy to upgrade. But… it doesn’t support tags!
What does support the tags, is Blogoforum. There’s nothing but tags. It’s… overtagged. And it’s not an open-source forum engine, it’s a service. So moving myforum to it isn’t an option at all.
The conclusion is, that there is no forum engine with tags, that I can move my phpBB forum to. I thought that I couldn’t write a forum engine myself, because it’s too much hassle. Until I met Django. With Django framework, writing such a forum looks doable. I’ve written down the features that I’d like my forum to have:
- Easy migration from phpBB
- Usage patterns similar to phpBB
- Migrate the phpBB data
- Support the old, PHP links, redirecting to the current links
- bbcode support
- Threads with posts
- Each thread has tags
- Each user can tag the thread independently
- Tags can be moderated and mapped. If a user creates a tag, it can be a “standalone tag”, but it can be then mapped to some “supertag” afterwards.
- Each post can be dugg or burrowed
- Splitting and merging the posts
- Textile markup for posts
- Private forums
- Whispering was cool (from Vanilla)
- Integration with WordPress. Display some topics from the blog.
- A shoutbox? hm…
- Search (custom engine or some readily available?)
So the key feature, besides all the Web 2.0 related stuff, is the easy migration from phpBB. I even consider connecting directly to the phpBB database, with no migration. This would also ensure that if someone doesn’t like my engine, it’s possible to just turn on the old one (phpBB).