Skip to content

advancedmonitoring/hba-boilerplate

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

50 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Handler Based Arch Boilerplate

Шаблон позволяет быстро запустить новый проект на основе HBA архитектуры

Данная архитектура дает возможность быстрой разработки высоко интерактивного
клиент - серверного приложения

Python 3.10 Python 3.11 Advanced Monitoring HBA GitHub Demo App Telegram channel

ВведениеОсобенностиНастройка установкиУстановкаЧто дальшеДокументация

Введение

setupGif

HBA архитектура создана, чтобы помочь разработчикам сосредоточится на бизнес-логике. Каждое приложение на основе данной архитектуры имеет простой и понятный процесс валидации, проверки и обработки запроса из любого интерфейса.

Архитектура использует метод доставки данных конечному пользователю с помощью сокет соединения, поэтому каждое приложение получается полностью интерактивным порталом, достаточно лишь придерживаться простых правил при написании кода.

Впоследствии, если вы будете придерживаться единообразия в написании кода, у вас будет легко расширяемое приложение с прозрачной логикой, где каждый модуль занимается своей задачей: валидация, проверка прав, проверка логики, реализация логики, отображение.

Особенности

api-ws   low-fw-rel

result   done

docs   ws-docs

Настройка установки

Скрипт setup.sh содержит ряд команд, которые выполняются последовательно:

  • update_project_files

На данном шаге происходит обновление файлов проекта: изменение название папки с приложениями, изменение путей импорта внутри файлов, создание локального файла настроек. Данный шаг является обязательным, отключать его не рекомендуется.

  • create_virtualenv

Шаг создания виртуального окружения. В скрипте используется команда python3.10 -m venv ENV. Вы можете изменить версию python, изменить название виртуального окружения или отменить создание окружения и сделать это самостоятельно после настройки проекта.

  • activate_virtualenv

Этот шаг лишь активирует созданное ранее виртуальное окружение. Если вы решите создать виртуальное окружение самостоятельно — этот шаг лучше также закомментировать.

  • install_dependencies

Установка зависимостей для локальной разработки requirements/local.txt. Этот шаг также можно отключить, если вы устанавливаете и настраиваете виртуальное окружение самостоятельно.

  • print_tutorial

Просто показывает дальнейшие шаги.

  • remove_extra_data

Данный шаг удаляет временные файлы (файл установки проекта, папку .git)

Если на любом из шагов возникли проблемы — вы всегда можете начать сначала 🙂

Установка

git clone https://github.com/advancedmonitoring/hba-boilerplate.git ./название_проекта
cd ./название_проекта
./setup.sh my_awesome_project

После выполнения команды в текущей директории будет находиться готовый к использованию проект.

Что дальше?

Backend

Первое, что нужно сделать дальше — активировать виртуальное окружение. Если в процессе установки вы отключили автоматическое создание окружения, создайте его самостоятельно, активируйте и установите необходимые зависимости.

Следующий шаг — применение миграций БД (python manage.py migrate). По умолчанию в качестве базы данных проект использует SQLite, которого должно быть достаточно для начала разработки.

Рекомендуется как можно раньше заменить БД на ту, которую вы будете использовать в боевом режиме. В шаблоне же используется БД, которая не требует дополнительных системных зависимостей.

После применения миграций создайте первого пользователя-администратора с помощью python manage.py createsuperuser.

На этом всё, сервер можно запустить python manage.py runserver.

Frontend

Откройте новую вкладку терминала и перейдите в директорию frontend.

По умолчанию в проекте настроено Vue-приложение, но никаких ограничений на frontend фреймворки нет - вы можете перенести логику работы с данными на любой стек.

Если вы решите оставить текущий фреймворк, достаточно установить зависимости (npm install) и запустить frontend сервер (npm run serve).

Документация

Участники