Corp/README.ru.md
2026-06-17 16:54:08 +03:00

3.8 KiB
Raw Blame History

Язык: English | Русский | Deutsch | Español

EUSRR

EUSRR - внутренний корпоративный сервисный портал на Django, Django REST Framework, Next.js, PostgreSQL, Redis, Celery и WebSockets. Проект включает LDAP-интеграцию, уведомления, документооборот, закупочные процессы, календарное планирование и модули самообслуживания сотрудников.

Проект демонстрирует full-stack разработку продукта: backend-архитектуру, REST API, ролевую модель доступа, асинхронные задачи, обновления в реальном времени, структуру frontend-приложения, тестирование, конфигурацию для деплоя и production-style документацию.

Основные модули

  • Справочник сотрудников, профили, отделы, роли и LDAP-синхронизация.
  • Заявки и маршруты согласования со статусами и уведомлениями.
  • Закупочные процессы, маршруты утверждения, учет позиций и отслеживание поставок.
  • Документы, файлы, комментарии и внутреннее взаимодействие.
  • Календарь и планирование с общими событиями.
  • Коммуникации в реальном времени, WebSocket-уведомления и chat-oriented workflows.
  • Интеграция с LogStorm для аналитики посещаемости.

Стек

  • Backend: Python, Django, Django REST Framework, Channels, Celery, Redis, PostgreSQL.
  • Frontend: Next.js, React, TypeScript, Tailwind CSS, Recharts, React Table.
  • Integrations: LDAP, Web Push, Telegram/Synology-style notification adapters, LogStorm API.
  • Testing: pytest для backend-тестов, Node test runner и ESLint для frontend-проверок.
  • Deployment: Docker-oriented settings, environment-based configuration, Nginx-ready service layout.

Структура репозитория

backend/   Django backend, APIs, Celery tasks, migrations, tests, docs
frontend/  Next.js frontend application
docs/      Architecture notes, implementation reports, guides, diagnostics

Локальный запуск

Backend:

cd backend
python -m venv .venv
source .venv/bin/activate
pip install -r requirements.txt
cp ../.env.example ../.env
python manage.py migrate
python manage.py runserver

Frontend:

cd frontend
npm install
cp .env.example .env.local
npm run dev

Frontend открывается на http://localhost:3000. Переменная NEXT_PUBLIC_BACKEND_URL должна указывать на backend.

Проверка

Backend:

cd backend
pytest

Frontend:

cd frontend
npm test
npm run lint
npm run build

Security Notes

Публичная версия подготовлена как portfolio snapshot. Env-файлы, локальные базы данных, media uploads, certificates, private keys, generated builds и deployment-specific artifacts исключены из version control.

Все credentials должны передаваться через environment variables. Example-файлы содержат только placeholders и не должны использоваться как production secrets.

Demo Data

Репозиторий не содержит production data. Любые company-specific values нужно заменить локальными demo data перед запуском вне исходной среды.