Современная ERP-система для управления складом с элегантным светлым дизайном, построенная на Next.js 15, React 19, TypeScript и PostgreSQL.
-
📦 Управление коробками
- Создание и управление коробками
- Отслеживание содержимого
- Генерация штрих-кодов для коробок
- Сканирование для быстрого доступа
-
🏷️ Управление продуктами
- Добавление и редактирование продуктов
- Генерация штрих-кодов для продуктов
- Отслеживание количества
- Категоризация продуктов
- Прикрепление фотографий
-
📱 Сканирование штрих-кодов
- Сканирование штрих-кодов в реальном времени
- Поддержка формата EAN-13
- Валидация префиксов (200 для коробок, 300 для продуктов)
- Ручной ввод штрих-кода
- История сканирования
-
🔍 Поиск и фильтрация
- Поиск продуктов по названию или штрих-коду
- Фильтрация продуктов по категории
- Расширенные параметры поиска
-
📊 Отчеты
- Отчеты о содержимом коробок
- Отчеты о запасах продуктов
- Функционал экспорта
-
Фронтенд:
- Next.js 15 (App Router)
- React 19
- TypeScript
- Tailwind CSS с современной светлой темой
- HeadlessUI для компонентов пользовательского интерфейса
- Framer Motion для анимаций
- React Hot Toast для уведомлений
- Recharts для визуализации данных
- QuaggaJS для сканирования штрих-кодов
- Heroicons для иконок
- BWIP-JS для генерации штрих-кодов
-
Бэкенд:
- Next.js API Routes
- PostgreSQL
- TypeScript
-
Инструменты разработки:
- ESLint
- Prettier
- TypeScript
Система использует современный светлый дизайн с акцентом на удобство использования:
- Единая светлая тема для лучшей читаемости и стильного вида
- Тщательно продуманные отступы и типографика
- Мягкие тени и современные скругленные углы
- Семантическая цветовая схема:
- Primary: оттенки синего для основных действий
- Accent: зеленые оттенки для подтверждения и успеха
- Warning: оранжевые оттенки для предупреждений
- Danger: красные оттенки для ошибок и удаления
- Node.js 18 или выше
- PostgreSQL 14 или выше
- npm или yarn
-
Клонируйте репозиторий:
git clone https://github.com/butovx/milaerp.git cd milaerp -
Установите зависимости:
npm install # или yarn install -
Настройте переменные окружения:
cp .env.example .env
Отредактируйте
.envс вашими учетными данными базы данных и другими настройками. -
Настройте базу данных:
npx prisma generate npx prisma db push
-
Запустите сервер разработки:
npm run dev # или yarn dev -
Откройте http://localhost:3000 в вашем браузере.
src/
├── app/ # Каталог Next.js app
│ ├── api/ # API-маршруты
│ ├── boxes/ # Страницы управления коробками
│ ├── products/ # Страницы управления продуктами
│ └── scan/ # Страница сканирования штрих-кода
├── components/ # Многоразовые компоненты
├── lib/ # Служебные функции и конфигурации
├── utils/ # Вспомогательные утилиты
├── hooks/ # Пользовательские хуки React
└── types/ # Определения типов TypeScript
GET /api/products- Получить все продуктыGET /api/products/[id]- Получить продукт по IDGET /api/products/barcode/[code]- Получить продукт по штрих-кодуPOST /api/products- Создать новый продуктPUT /api/products/[id]- Обновить продуктDELETE /api/products/[id]- Удалить продукт
GET /api/boxes- Получить все коробкиGET /api/boxes/[id]- Получить коробку по IDGET /api/boxes/barcode/[code]- Получить коробку по штрих-кодуPOST /api/boxes- Создать новую коробкуPUT /api/boxes/[id]- Обновить коробкуDELETE /api/boxes/[id]- Удалить коробку
GET /api/box-items- Получить все элементы коробкиPOST /api/box-items- Добавить элемент в коробкуDELETE /api/box-items/[boxId]/[productId]- Удалить элемент из коробки
- Сделайте форк репозитория
- Создайте ветку для вашей функции (
git checkout -b feature/amazing-feature) - Зафиксируйте ваши изменения (
git commit -m 'Add some amazing feature') - Отправьте в ветку (
git push origin feature/amazing-feature) - Откройте Pull Request
Этот проект лицензирован по MIT License - см. файл LICENSE для деталей.
Для получения поддержки, пожалуйста, откройте issue в GitHub-репозитории или свяжитесь с командой разработчиков.