django-djeddit

https://badge.fury.io/py/django-djeddit.svg https://travis-ci.org/EatEmAll/django-djeddit.svg?branch=master https://codecov.io/gh/EatEmAll/django-djeddit/branch/master/graph/badge.svg https://img.shields.io/badge/python-2.7%2C%203.4%2C%203.5%2C%203.6-blue.svg https://img.shields.io/badge/django%20versions-1.8%2C%201.9%2C%201.10%2C%201.11%2C%202.0-blue.svg

Bare bones Django forum application with Reddit like features developed as a Django reusable app.

  • comments are ranked using wilson scoring interval and displayed in a collapsable tree structure (using django-mptt)
  • voting functionality for threads & comments
  • compatible with mobile screen sizes (using Bootstrap)
  • users management page for admins
  • admins can lock/unlock, edit, delete threads and posts, edit & delete topics

django-registration-redux is recommanded to go along with this app if you need out of the box user registration functionality.

Working demo: http://eatemall.pythonanywhere.com

Documentation: https://django-djeddit.readthedocs.io.

Screenshots

https://raw.githubusercontent.com/EatEmAll/django-djeddit/master/media/Threads.jpg https://raw.githubusercontent.com/EatEmAll/django-djeddit/master/media/User.jpg https://raw.githubusercontent.com/EatEmAll/django-djeddit/master/media/Comments.jpg

Supported Dajngo versions

The app is currently tested with Django 1.8, 1.9, 1.10 and 1.11, 2.0

Quickstart

Install django-djeddit:

pip install django-djeddit

Add it and its dependencies to your INSTALLED_APPS:

INSTALLED_APPS = [
    ...
    'crispy_forms',
    'mptt',
    'djeddit',
    'meta',
    ...
    ]

djeddit_settings to context_processors:

'context_processors': [
    ...
    'djeddit.context_processors.djeddit_settings',
    ...
]

jango-djeddit’s URL patterns:

urlpatterns = [
    ...
    url(r'^', include('djeddit.urls')),
    ...
]

Migrate models:

python manage.py migrate djeddit

Create a topic:

You can use New Topic dialog in topics page if you’re logged in as a superuser or you can create one in a python console:

from djeddit.models import Topic
Topic.objects.create(title='Test Topic')

Credits

Dependencies:

Tools used in rendering this package: