3.8 KiB
3.8 KiB
School CRM - Система управления задачами для образовательных учреждений
Описание проекта
School CRM - это веб-приложение для управления задачами и проектами в образовательных учреждениях. Система позволяет эффективно организовывать работу между администрацией, учителями и сотрудниками школы.
Основные возможности
🔐 Многоуровневая аутентификация
- Локальная авторизация - встроенная система пользователей
- LDAP-интеграция - поддержка доменной аутентификации
- Ролевая модель:
- Администратор - полный доступ ко всем функциям
- Учитель - создание и управление своими задачами
📋 Управление задачами
- Создание задач с детальным описанием и сроками
- Назначение исполнителей - несколько пользователей на одну задачу
- Индивидуальные сроки для каждого исполнителя
- Копирование задач - быстрая репликация существующих шаблонов
- Мягкое удаление с возможностью восстановления
📊 Система статусов
- ⏳ Назначена
- 🔄 В работе
- ✅ Выполнена
- ❗ Просрочена (автоматическое определение)
📎 Работа с файлами
- Загрузка документов - до 15 файлов, максимум 300MB
- Организованное хранение - структура папок по задачам и пользователям
- Безопасное скачивание - проверка прав доступа
📝 Логирование и аналитика
- Детальная история действий - кто, что и когда сделал
- Отслеживание изменений статусов и назначений
- Мониторинг загрузки файлов
Технологический стек
Backend
- Node.js - серверная платформа
- Express.js - веб-фреймворк
- SQLite - база данных
- Multer - обработка загрузки файлов
- Bcryptjs - хэширование паролей
Frontend
- Чистый JavaScript - без зависимостей от фреймворков
- HTML5/CSS3 - адаптивный интерфейс
- AJAX - асинхронные запросы к API
Безопасность
- Сессии - управление аутентификацией
- Проверка прав доступа - на всех уровнях
- Валидация данных - клиентская и серверная
Установка и запуск
Предварительные требования
- Node.js 14+
- npm или yarn
Шаги установки
- Клонировать репозиторий
- Установить зависимости:
npm install - Настроить переменные окружения в
.env - Запустить сервер:
npm start - Открыть в браузере:
http://localhost:3000
Конфигурация
Создайте файл .env со следующими параметрами: