Skip to content

A generic application to make the development of Django modules easier.

License

Notifications You must be signed in to change notification settings

jlebunetel/toolbox

Repository files navigation

toolbox

A generic application to make the development of Django modules easier.

version python_version pre-commit_action pytest_action bandit_action pip-audit_action

Features

  • Provides a generic Django web app.

Getting started

Requirements

Install

Download this repository and unzip it on your computer. You should rename the folder toolbox-main in toolbox.

Or clone the repository directly on your computer:

git clone git@github.com:jlebunetel/toolbox.git

You need an accessible PostgreSQL database before starting the application. You can use Docker Compose to get one conveniently:

docker compose run

To start the demo application, please run:

make quickstart

Wait a bit for the application to build, then you can access it with your favorite internet browser to the following address: http://127.0.0.1:8000.

📝 The default superuser login and password are: demo / demo.

That's all!

Install a development environment

Create a virtual environment (make venv) and install development dependencies in it (make install-dev).

Activate your virtual environment (source venv/bin/activate with bash or . venv/bin/activate.fish with fish shell).

Run pre-commit install to install pre-commit into your git hooks.

You can update your hooks to the latest version automatically by running pre-commit autoupdate.

If you want to manually run all pre-commit hooks on a repository, run pre-commit run --all-files.

📝 A Makefile provides helpfull commands to manage this very project. Run make help to list available commands.

Tech/framework used

  • Django: a Python-based free and open-source web framework;
  • Bulma: the modern CSS framework that just works.

Contributing

For the sake of simplicity, to ease interaction with the community, we use the GitHub flow for open-source projects. In a few words:

  • The main branch is always stable and deployable;
  • Tags from the main branch are considered as releases;
  • Contributors have to fork or create a new feature-branch to work on (if they are allowed to in the original repository) and propose a pull request to merge their branch to main.

This project follows the Conventional Commits specification. You can use cz commit to easily write commit messages.

If you'd like to contribute, please raise an issue or fork the repository and use a feature branch. Pull requests are warmly welcome!

Versioning

We use SemVer for versioning. See the CHANGELOG.md file for details.

Licensing

The code in this project is licensed under MIT license. See the LICENSE file for details.

Contributors