Современная веб-платформа для управления устройствами, документации и идентификации оборудования с помощью искусственного интеллекта. Проект специально разработан для работы на Raspberry Pi в локальной сети.
- 🚀 Особенности
- 🛠 Технологический стек
- 📦 Требования и зависимости
- 🔧 Установка и запуск
- 📜 Доступные скрипты
- 📂 Структура проекта
- 🌐 Деплой и CI/CD
- 🤝 Контрибуция
- 📄 Лицензия
- Документация по устройствам: Полная база данных руководств и SCPI-команд.
- ИИ-Ментор: Идентификация оборудования по фотографии для быстрого доступа к документации.
- Пульт управления: Интерактивный интерфейс для отправки команд на устройства через Raspberry Pi.
- Real-time взаимодействие: Использование WebSockets для мгновенного обновления статусов.
- Локальная автономность: Работает без интернета в локальной Wi-Fi сети Raspberry Pi.
Интерфейс системы управления и документации
- Frontend: React 19, Vite 7
- Backend: Node.js, Express
- База данных: MongoDB (через Mongoose)
- Стилизация: SASS, CSS Modules
- Real-time: WS (WebSockets)
- Роутинг: React Router 7
- Линтинг: ESLint 9
Для запуска проекта вам потребуются:
- Node.js: версия 22.x или выше
- npm: версия 10.x или выше
- MongoDB: локальный экземпляр или доступ к Atlas
-
Клонирование репозитория
git clone https://github.com/your-username/documentation.git cd documentation -
Установка зависимостей
npm install
-
Настройка окружения Создайте файл
.envв корне проекта (если требуется) для параметров подключения к БД. -
Запуск в режиме разработки
npm run dev
Приложение будет доступно по адресу http://localhost:5173
npm run dev— Запуск клиента и сервера одновременно (через concurrently).npm run build— Сборка фронтенда для продакшена в папкуdist.npm run lint— Проверка кода линтером ESLint.npm run preview— Предпросмотр собранного проекта.npm run start— Запуск только серверной части.
documentation/
├── backend/ # Серверная логика (Express, Mongoose)
├── src/ # Исходный код фронтенда
│ ├── components/ # Общие UI компоненты
│ ├── features/ # Функциональные модули (Network, etc.)
│ ├── pages/ # Страницы приложения
│ ├── style/ # Глобальные стили (SASS)
│ └── main.jsx # Точка входа React
├── public/ # Статические ресурсы
├── .github/ # Настройки CI/CD (GitHub Actions)
├── vite.config.js # Конфигурация Vite
└── package.json # Зависимости и скрипты
Проект использует GitHub Actions для автоматизации процессов:
- CI: При каждом пуше в ветку
web-servisвыполняется проверка линтером и сборка. - CD: После успешной сборки триггерит деплой на Render через Webhook.
Будем рады вашему участию! Порядок действий:
- Сделайте Fork проекта.
- Создайте ветку (
git checkout -b feature/NewFeature). - Закоммитьте изменения (
git commit -m 'Add some NewFeature'). - Отправьте ветку (
git push origin feature/NewFeature). - Откройте Pull Request.
Этот проект лицензирован под MIT License — подробности в файле LICENSE.
Сделано с ❤️ для разработчиков и инженеров.