This is the server/web application that powers the GO-EV Car Share scheme on the Isles of Scilly.
The project is run by the Isles of Scilly Community Venture CIC and is licensed under the GNU AGPL v3 licence. It provides a web application and server component implemented in python/Django that works with the MaxBox in vehicle "box" to provide a fully integrated community car share management system.
We are happy to receive issues and pull requests. If you are interested in exploring substantial changes or new features, please contact us first to discuss via email or Github Issues. If you are interested in adopting this stack for your own community car share project (or something else) we'd love to hear from you.
This repository contains a single codebase following the standard Django patterns. Dependencies are managed with poetry. Front-end UI is implemented using Django templates and Tailwind.
First, clone this repository, then set up the dependencies with docker by running:
$ make start-docker
Install dependencies (setting up a virtualenvironment in your preferred way first):
$ poetry install
Initialise the database, and setup a super user.
$ python manage.py migrate
$ python manage.py createsuperuser
To keep the stylesheets up to date, you should have the django tailwind task running while using your development environment:
$ python manage.py tailwind start
Finally, in another terminal, you can start the development server:
$ python manage.py runserver
and access the login page through your browser:
http://localhost:8000/users/login
The backoffice and Django admin areas can be found at:
http://localhost:8000/backoffice
http://localhost:8000/admin
We use the _black_python code style. You can reformat your code changes before you commit:
$ make format
Happy hacking!