The project is developed using Python, Django, and Bootstrap.
This repository contains the source code for a Django Bootstrap/Authentication Template Project.
To setup the Python/Django build environment, execute:
make installThis project is configured to work with a Virtualenv which has now been setup in the venv folder. If you're unfamiliar with how this works, read up on Virtualenv here. The short version is, virtualenv creates isolated environments for each project's dependencies. To activate and use this environment when developing, execute:
source venv/bin/activateAll commands below will now be run within the virtualenv (though make commands will always automatically enter the virtualenv before executing).
To ensure the database is in sync with the latest schema, database migrations are generated and run with Django. To run migrations, execute:
make migrateOnce migrations have been run, you can create a super user, which is a standard user that also has access to the /admin site.
python manage.py createsuperuserBefore commits are made, be sure to run tests and check the generated coverage report.
make testTo get started with minimal effort, assuming you have followed the "Getting Started" directions above, you should have the ENVIRONMENT environment variable set to "dev". For convenience, helium-cli, which is compatible with this project and provides a useful set of tools for maintaining, building, and deploying the code, has also been installed.
To start a local server, execute:
helium-cli start-serversA development server will be started at http://localhost:8000.
If the USE_NGROK environment variable is set when a dev server is started (using runserver, pyngrok
will be used to open a ngrok tunnel. This is especially useful when using webhooks.
You can also deploy builds of the code using helium-cli, for instance, to deploy main to stage, execute:
helium-cli deploy-build main stageAnsible deployment scripts can be found in the ansible directory.
As a starting point for using this project as a template for a new project, search for usages of "MYPROJECT" and begin refactoring from there.