A framework for launching new Django projects quickly with a complete user authentication flow, custom user model, and social authentication options via Gmail, Facebook, Twitter, etc.
- Django 2.0 and Python 3.6
- Uses email/password for login/signup
- django-allauth for easy social authentication
- Custom user model
- Pipenv for virtualenvs
- Bootstrap v4
- Make sure Python 3.6x and Pipenv are already installed. See here for help.
- Clone the repo and configure the virtualenv:
$ git clone https://github.com/wsvincent/djangox.git
$ cd djangox
$ pipenv install
$ pipenv shell
- Set up the initial migration for our custom user models in
users
and build the database.
(djangox) $ python manage.py makemigrations users
(djangox) $ python manage.py migrate
- Create a superuser:
(djangox) $ python manage.py createsuperuser
- Confirm everything is working:
(djangox) $ python manage.py runserver
Load the site at http://127.0.0.1:8000.
- (Optional) Under "Sites" in the admin http://127.0.0.1:8000/admin/sites/site/ change "example.com" to "127.0.0.1" and the name to whatever your project is called, for example
djangox
.
-
Use django-environ for environment variables
-
Update EMAIL_BACKEND to configure an SMTP backend
-
Make the admin more secure
- Configuring Google
- Configuring Facebook
- Configuring Github
django-allauth
supports many, many other providers in the official docs
This project is heavily inspired by cookiecutter-django. If you're looking for an even more advanced framework that comes with deployment configurations, give it a look!