=============================
django-djeddit
.. image:: https://badge.fury.io/py/django-djeddit.svg
:target: https://badge.fury.io/py/django-djeddit
.. image:: https://travis-ci.org/EatEmAll/django-djeddit.svg?branch=master
:target: https://travis-ci.org/EatEmAll/django-djeddit
.. image:: https://codecov.io/gh/EatEmAll/django-djeddit/branch/master/graph/badge.svg
:target: https://codecov.io/gh/EatEmAll/django-djeddit
.. image:: https://img.shields.io/badge/python-2.7%2C%203.4%2C%203.5%2C%203.6-blue.svg
:target: https://travis-ci.org/EatEmAll/django-djeddit
.. image:: https://img.shields.io/badge/django%20versions-1.8%2C%201.9%2C%201.10%2C%201.11%2C%202.0-blue.svg
:target: https://travis-ci.org/EatEmAll/django-djeddit
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 <https://github.com/django-mptt/django-mptt>
_) - voting functionality for threads & comments
- compatible with mobile screen sizes (using
Bootstrap <https://github.com/twbs/bootstrap>
_) - users management page for admins
- admins can lock/unlock, edit, delete threads and posts, edit & delete topics
django-registration-redux <https://github.com/macropin/django-registration>
_ 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
.. image:: https://raw.githubusercontent.com/EatEmAll/django-djeddit/master/media/Threads.jpg
.. image:: https://raw.githubusercontent.com/EatEmAll/django-djeddit/master/media/User.jpg
.. image:: 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
:
.. code-block:: python
INSTALLED_APPS = [
...
'crispy_forms',
'mptt',
'djeddit',
'meta',
...
]
djeddit_settings to context_processors:
.. code-block:: python
'context_processors': [
...
'djeddit.context_processors.djeddit_settings',
...
]
jango-djeddit's URL patterns:
.. code-block:: python
urlpatterns = [
...
url(r'^', include('djeddit.urls')),
...
]
Migrate models:
.. code-block:: python
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:
.. code-block:: python
from djeddit.models import Topic
Topic.objects.create(title='Test Topic')
Credits
Dependencies:
- django-mptt_
- crispy_forms_
- django-meta_
- django-ipware_
.. _django-mptt: https://github.com/django-mptt/django-mptt
.. _crispy_forms: https://github.com/django-crispy-forms/django-crispy-forms
.. _django-meta: https://github.com/nephila/django-meta
.. _django-ipware: https://github.com/un33k/django-ipware
Tools used in rendering this package:
- Cookiecutter_
cookiecutter-djangopackage
_
.. _Cookiecutter: https://github.com/audreyr/cookiecutter
.. _cookiecutter-djangopackage
: https://github.com/pydanny/cookiecutter-djangopackage
History
0.1.0 (2017-04-15)
++++++++++++++++++
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)