example | ||
spirit | ||
tests | ||
.editorconfig | ||
.gitattributes | ||
.gitignore | ||
.travis.yml | ||
HISTORY.md | ||
LICENSE | ||
MANIFEST.in | ||
README.md | ||
requirements.txt | ||
runtests.py | ||
setup.cfg | ||
setup.py | ||
TODO |
Spirit
Spirit is a Python based forum built using the Django framework.
To see it in action, please visit The Spirit Project.
Requirements
- Python 2.7, 3.3 or 3.4 (recommended)
- Django 1.8
- PostgreSQL (recommended) or MySQL or Oracle Database
Dependencies
Check out the requirements provided.
Installing (Advanced)
Check out the example provided.
In short:
Add url(r'^', include('spirit.urls')),
to your urls.py
Add from spirit.settings import *
to the top of your settings.py file,
otherwise you will have to setup all django's related constants (Installed_apps, Middlewares, Login_url, etc)
Run:
pip install -r requirements.txt
python manage.py migrate
python manage.py createcachetable
python manage.py collectstatic
You will need to setup a search engine, Spirit is configured to work with Woosh by default.
An email server is required, you can host your own (ie: exim), or hire an external service provider (ie: Mandrill).
Start a development server:
python manage.py runserver
Visit (http://127.0.0.1:8000/)
On production, you would rather run Spirit on a real web server. ie: gunicorn + Nginx. Running Spirit on a virtualenv is adviced.
Updating
If you are upgrading from any release previous to v0.3:
- Run
python manage.py migrate djconfig --fake-initial
- Add
AUTH_USER_MODEL = 'spirit.User'
(or your custom user model) to yoursettings.py
.- Remove the
AbstractForumUser
from your custom user model (if you have one).- Change
spirit.models.AbstractUser
todjango.contrib.auth.models.AbstractUser
in your custom user model (if you have one).Deprecation notice:
AbstractForumUser
andAbstractUser
will no longer exist in future releases.
Run:
pip install -r requirements.txt
python manage.py makemigrations
python manage.py migrate
python manage.py collectstatic
python manage.py rebuild_index --noinput
Testing
The runtests.py
script enable you to run the test suite of spirit.
- Type
./runtests.py
to run the test suite using the settings from thetests
folder. - Type
./runtests.py example
to run the test suite using the settings from theexample
folder.
License
MIT