boilerplate-python/README.md

59 lines
1.7 KiB
Markdown
Raw Permalink Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

Python Boilerplate
==================
Stuff used for a new python project 🐍
💡 Idea
-------
1. Keep in mind the **Standalone Python script** proposed by _Vincent Bernat_ ( [🇫🇷](https://vincent.bernat.ch/fr/blog/2019-script-python-durable) | [🇬🇧](https://vincent.bernat.ch/en/blog/2019-sustainable-python-script) ).
1. Ease new project start
1. Give a try to the _GitLab_ group organisation
🚀 Use quick-start
-----------------
Get the source & edit settings:
```bash
git clone git@<GIT REPO URL>:<GIT REPO PATH>.git && cd <GIT REPO NAME>
cp client.sample.py client.py
${EDITOR} client.py
```
Set up environment & run help:
```bash
mkdir ~/.venvs && python3 -m venv ~/.venvs/<GIT REPO NAME>
source ~/.venvs/<GIT REPO NAME>/bin/activate
pip install -r requirements.txt
./main.py -h
```
🚧 Development
--------------
### 🚀 Quick-start
- Built with `Python 3.8`
- Code linting with [`flake8`](https://pypi.org/project/flake8/), [`pylint`](https://pypi.org/project/pylint), [`black`](https://pypi.org/project/black) & [`pydocstyle`](https://pypi.org/project/pydocstyle/).
- Install development tools:
* `pip install -r requirements-dev.txt`
- A `Makefile` with tools: run `make help` to have a look
- Use the `pre-commit` git hook
* `make init-pre-commit`
### 📌 Dependences
Details in [`requirements.txt`](requirements.txt) & [`requirements-dev.txt`](requirements-dev.txt)
### 🤝 Contributing
- Roadmap ➡️ [_project kanban_](https://gitlab.com/forga/devel/boilerplate/python/-/boards)
- Question, suggestion, issue ➡️ [_project issues_](https://gitlab.com/forga/devel/boilerplate/python/-/issues/new)
- Code submission ➡️ [_project merge request_](https://gitlab.com/forga/devel/boilerplate/python/-/merge_requests/new)