О проекте
Integ Admin — это админ-панель для управления интеграциями с integ-core. Приложение построено на Angular 20 с использованием Server-Side Rendering и Angular Material.
Что это такое?
Integ Admin предоставляет удобный веб-интерфейс для:
- Управления интеграциями — создание, редактирование, удаление интеграций
- Управления handlers — настройка обработчиков вебхуков с тестированием
- Управления агентами — настройка промптов AI агентов
- Управления secrets — безопасное хранение секретов
- Управления access tokens — генерация и управление токенами доступа
- Работы с D1 — браузер Cloudflare D1 баз данных с SQL консолью
- Работы с KV — браузер Cloudflare KV хранилища с Monaco editor
- Инструментов разработчика — Base64 encoder/decoder, HTTP proxy
- Эмулятора — тестирование HTTP обработчиков
- Управления промптами — шаблоны промптов
- Тестирования — массовое тестирование интеграций
Технологический стек
Frontend
- Angular 20 — современный фреймворк с standalone components
- Angular Material 20 — UI компоненты с Material Design 3
- Angular SSR — Server-Side Rendering для улучшенного SEO
- TypeScript 5.8+ — строгая типизация
State Management
- @ngneat/elf — легковесное state management решение
- @ngneat/elf-devtools — инструменты разработчика
- @ngneat/elf-persist-state — персистентность состояния
Утилиты
- RxJS 7.8 — реактивное программирование
- @jsverse/transloco — интернационализация (uk, en, ru)
- ngx-monaco-editor-v2 — Monaco editor для редактирования кода/JSON
- date-fns — работа с датами
- jwt-decode — декодирование JWT токенов
Архитектура
Приложение построено по модульной архитектуре с четким разделением на:
- Core — ядро приложения (25 сервисов, guards, interceptors, 26 интерфейсов)
- Admin — админская секция (12 feature pages, layout с sidenav)
- Shared — 31 переиспользуемый компонент
src/app/
├── core/ # Ядро приложения
├── admin/ # Админ секция
└── shared/ # Shared компонентыФилософия проекта
Проект следует принципам:
- Минимализм — код должен быть максимально лаконичным
- Типобезопасность — вся кодовая база строго типизирована
- Модульность — каждая сущность в своем модуле
- Standalone Components — современный подход Angular без NgModules
- Самодокументируемый код — без комментариев, говорящие имена
Следующие шаги
- Быстрый старт — начните работу с проектом
- Секреты и Doppler — настройка переменных окружения
- Архитектура — узнайте больше об архитектуре
- Правила стилей — гайдлайны по написанию SCSS
- Правила кода — code style и best practices