pycon logo

PyCon 2011 Atlanta

March 9th–17th

Log in or Sign Up

Askbot: open source Q&A forum in Python and Django

log in to bookmark this presentaton

Novice / Poster
Askbot is an open source user-moderated Question and Answer Forum web application, written in Python and Django. The source code of Askbot is available via the Python Package Index and the GitHub.

Abstract

Askbot is a production quality, free and open source Question and Answer Forum web application, written in Python and Django.

Askbot has features similar to StackOverflow - has a workflow to ask and answer questions, post comments, vote, label the questions with tags, has a user karma system integrated with voting and the content moderation system, the badges and the email alert system that can be configured by each user individually.

The built-in user authentication system supports traditional password authentication method, and the federated protocols - OpenID, OAuth, and the Facebook Connect adaptation of OAuth. In addition, users can log in via multiple methods simultaneously and manage their login methods.

The Askbot forum administrator has access to a detailed registry of settings, available through the administrative web-interface. There are dozens of settings controlling various aspects of the forum software.

Askbot has several facilities to customize the appearance of the site. One facility is provided by the administrative interface, accepting customizations of the cascading style sheet, the HTML <head> element, the custom versions of the site header and the footer, and the additional javascript code. Secondly, Askbot has a theming system, where themes can be authored by designing html templates and the cascading style sheet.

Reliability of Askbot is insured via routine testing against the continuously updated suite of automated unit tests (372 test cases were available at the time of submitting this abstract). The needs for the site maintenance are addressed via a set of the management commands.

Askbot has been extensively tested with the MySQL and PostgresQL database backends and the database schema is maintained by the Django South database migration system, therefore deployments of Askbot forums can be easily kept up to date.

Being a Django application, Askbot can run alongside other components written using the Django Framework. The source code of Askbot is available via the Python Package Index and the GitHub. The installation as well as other aspects of using Askbot are explained on the project documentation pages.