Приложение для управления территориями, устройствами и клиентами с поддержкой BLE устройств и синхронизации данных.
- Angular 20.3.0 - основной фреймворк
- TypeScript - язык разработки
- Bootstrap 5 - UI компоненты и стили
- FontAwesome - иконки
- NgBootstrap - Angular компоненты Bootstrap
- Less - препроцессор CSS
- Web Bluetooth API - работа с BLE устройствами
Устанавливаем утилиту для скачивания:
sudo apt install curl
Скачиваем инсталлятор Node Version Manager и запускаем:
curl https://raw.githubusercontent.com/creationix/nvm/master/install.sh | bash
Выбираем нужную версию NodeJS:
nvm list-remote
Устанавливаем нужную версию NodeJS:
nvm install v22.12.0
Устанавливаем CLI:
npm install -g @angular/cli@20
Переходим в каталог репозитория.
Скопируйте каталог .vscode_template в .vscode и внесите правки,
соответствующие вашему окружению.
Устанавливаем зависимости:
npm install
Запуск сервера разработки:
ng serve
Приложение будет доступно по адресу http://localhost:4200/.
Приложение автоматически перезагружается при изменении исходных файлов.
Создание нового компонента:
ng generate component component-name
Также можно использовать:
ng generate directive|pipe|service|class|guard|interface|enum|module
Сборка проекта для продакшена:
ng build
Артефакты сборки сохраняются в каталоге dist/.
Запуск юнит-тестов:
ng test
Тесты выполняются через Karma.
docker build -t angular-control-app .
С настройкой базового URL:
docker run -p 8080:80 -e BASE_URL="https://api.example.com" angular-control-app
Без дополнительных настроек:
docker run -p 8080:80 angular-control-app
- src/app/ - основное приложение и конфигурация
- src/pages/ - страницы приложения (lazy-loaded)
- src/components/ - переиспользуемые компоненты
- src/services/ - сервисы для работы с данными
- Управление территориями - создание, редактирование, удаление
- Управление устройствами - привязка устройств к территориям
- Управление клиентами - регистрация, поиск, связывание клиентов
- Система платежей - регистрация и история платежей
- BLE устройства - сканирование и управление Bluetooth устройствами
- Синхронизация данных - обмен данными с внешним API
- Импорт/экспорт - резервное копирование данных
Приложение использует localStorage браузера для хранения данных:
- Территории и их настройки
- Устройства территорий
- Клиенты и их связи
- История платежей
Для получения дополнительной помощи по Angular CLI используйте:
ng help
Или посетите Angular CLI Overview and Command Reference.