Об этом проекте
Vacademy — это открытая система управления обучением (LMS) с поддержкой ИИ, предназначенная для образовательных учреждений, преподавателей и учащихся. Проект организован как монорепозиторий, объединяющий серверную часть на микросервисах Java/Spring Boot и два интерфейса на React + TypeScript.
Основные возможности, описанные в README:
- Управление курсами: курсы, сгруппированные по уровням, предметам, модулям, главам и слайдам, а также централизованная учебная библиотека и управление документами по папкам.
- Управление пользователями и учреждениями: институты, потоки, записи преподавателей и студентов с массовым импортом студентов из CSV.
- Система аттестаций: создание аттестаций и листов с вопросами, тестирование в реальном времени, выдача домашних заданий, а также оценка и обратная связь с поддержкой ИИ.
- Опыт учащегося: персонализированная панель, доступ к учебным материалам, участие в аттестациях и отслеживание прогресса.
- Возможности ИИ, объединённые в инструменты VSmart: обработка аудио, чат-помощник, извлечение информации из документов и генерируемая ИИ обратная связь по аттестациям.
- Режим презентации: интерактивные презентации курсов с элементами управления докладчика и участием учащихся.
- Отчёты и аналитика: отчёты по учащимся и потокам, варианты экспорта и настраиваемые уведомления об отчётах.
- Отслеживание учащихся: журнал активности, мониторинг прогресса и метрики вовлечённости.
Архитектура: шесть специализированных серверных сервисов, каждый с собственной базой данных и портом — Auth (8071), Admin Core (8072), Community (8073), Assessment (8074), Media (8075) и Notification (8076) — а также общий сервис common и основанный на Python ai_service. Стек использует Java 17, Spring Boot, Maven, PostgreSQL, AWS S3, Redis и Nginx; для продакшена применяются Kubernetes/Helm, а для CI/CD — GitHub Actions. Интеграция OAuth2 поддерживает Google и GitHub; уведомления охватывают электронную почту (AWS SES), WhatsApp и push-уведомления.
Интерфейсы: панель администратора (ориентированная на десктоп, со Storybook) и панель учащегося (подход mobile-first, с использованием Capacitor). Оба приложения используют React, TypeScript, Vite, TanStack Router/Query/Table, Radix UI и Tailwind CSS. В README приведены подробные карты маршрутов для обоих приложений.
Начало работы: сценарий локальной установки одной командой или Docker Compose поднимает все сервисы с отдельными базами данных PostgreSQL для каждого сервиса, Redis и шлюзом Nginx; каждый сервис предоставляет Swagger UI и конечные точки проверки состояния actuator. Продакшен-развертывание использует Helm-чарты и конфигурацию на основе переменных окружения, управляемую через GitHub Secrets. Репозиторий распространяется по лицензии AGPL v3 и содержит документацию по локальной разработке, настройке секретов, миграции безопасности и каталогам функций.
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.