Skip to main content

Bare bones Django forum application with Reddit like features

Project description

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:

History

0.1.0 (2017-04-15)

  • First release on PyPI.

0.1.5 (2017-05-26)

  • Added tests for models, forms, views

  • Urls that include topic titles with spaces in them don’t work // fixed

  • Competability fixes for Django 1.9 and 1.8 and Python 2.7

  • client side fixes for added compatibility with mobile screen sizes

  • font-awsome fonts are not loading // fixed

  • Added description field for Topic model

  • moved base.html to root template dir

0.2 (2017-07-04)

  • Admins can lock/unlock & delete threads, delete posts

  • Admins can edit thread title, url, and post content

  • added users management page for admins

  • admins can edit & delete topics

  • added fields upvotes, downvotes, wsi (Wilson score interval) to Post model

  • removed score field from Post model

  • comments are ranked using wilson scoring interval

  • added comments paging functionality (using “Load n more comments” links)

0.3 (2018-06-02)

  • added option to define url prefix in settings.TOPICS_URL for topic & thread pages

  • added sitemap support

  • added url slugs to threads

  • added ip & user agent tracking for posts

  • added compatibility to Django 2.0

  • added thread stickies (can be added or removed by admins)

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

django-djeddit-0.3.4.tar.gz (1.1 MB view hashes)

Uploaded Source

Built Distribution

django_djeddit-0.3.4-py2.py3-none-any.whl (1.1 MB view hashes)

Uploaded Python 2 Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page