Какой набор инструментов использовать для шаблона приложения на Python?
Я ищу лучшие практики / инструменты / идеи для включения в шаблон проекта Python.
Цель - стандартизация структуры новых проектов в компании.
Такой шаблон не должен быть связан с какой-либо конкретной веб-платформой, базой данных и т. д.
Он должен служить отправной точкой для создания нового бэкэнд-сервиса в Python.
С моей точки зрения, шаблон должен включать в себя:
базовую структуру папок для исходников и тестов
надежный способ организации настроек проекта / конфигурации
линтер / статический анализатор кода
инструмент форматирования кода
скрипты для локального развертывания и тестирования
документацию / автодокументацию
Поделитесь, пожалуйста, своими идеями / мыслями о том, что актуально сейчас в 2020 году.
Спасибо
базовую структуру папок для исходников и тестов --- это сильно зависит от задачи, но как пример можете взглянуть на структуру создаваемую в джанго
надежный способ организации настроек проекта / конфигурации --- отдельный .py или .json файл.
линтер / статический анализатор кода --- это подтягивает IDE в которой вы работаете.
инструмент форматирования кода --- автоформатирование в IDE
скрипты для локального развертывания и тестирования --- setup.py или любая библиотека для тестирования, начиная с unittest, плюс возможно внешний CI.
документацию / автодокументацию --- sphinx.
Существует много шаблонов различных проектов на Python на Github, будь-то распространяемый пакет или Django/Flask/... приложение. Если отличные шаблоны от wemake-services для Python-пакетов, Django-приложений