Образовательная LMS для школьников 8-11 классов: лаборатории химии и биологии в браузере, AI-кот на GigaChat, тренажёр заданий по FIPI-кодификатору, встроенный Tailchat по SSO, 152-ФЗ compliance.
Periodic Table · 3D Atom · Ions · Calculators · Ketcher · PhET
Шесть интерактивных модулей в браузере. PeriodicTable.tsx — 118 элементов в 4-слайдовой карусели (основное / атомные / физико-химические / история открытия). Atom3DViewer.tsx на Three.js в 3 режимах (Bohr / Educational / Cloud) с Fibonacci-sphere ядром, trails электронов, drag/zoom. IonsDatabase.tsx — 54 иона с 3 уровнями данных и 10 CSS-анимациями. ChemistryCalculators.tsx — 6 вкладок: балансировка через Gaussian elimination, молярная масса, эмпирическая формула, таблица растворимости 23×14, предсказатель реакций, генератор задач (84 шаблона, 3 уровня, печать). Molecule Builder/Editor/Explorer на Ketcher 3 + Viewer3D. PhET Simulations от University of Colorado Boulder.
GigaChat-2 · 4 скина · 17 анимаций · CatAction · FIPI-кодификатор
Анимированный кот-маскот на каждой странице: 4 скина (orange/gray/black/white) в 17 состояниях из Mattz Art Pixel Art + drag/sleep. Физика: Surface.el live-tracking, enterScreen при навигации, scroll-привязка к элементам. ИИ-чат на GigaChat-2 с CatContext (14/19 пунктов навигации в зависимости от роли) + RAG по образовательной базе через retrieve_chunks + build_rag_context, кэш в Redis по cat_ctx:{user.id}. CatAction — структурированные действия (открыть страницу, начать тренажёр) превращают кота в навигационного помощника. Тренажёр ЕГЭ/ОГЭ замаплен на FIPI-кодификатор 2025 — при ошибке AI разбирает её и предлагает похожие задачи.
SSO-мессенджер · OCR→GigaChat-2-Max · XP/streak · PDF-сертификаты
TailChat (chat.chemcat.ru) встроен через iframe + SSO: пользователь авторизованный в ChemCat автоматически попадает в чат. Автосинк users → tailchat-users, courses → groups, enrollments → members, друзья учитель↔ученик. Локализация — 458 client-translations + 77 server-translations через localStorage. AI-конспект (только для учителей): фото с доской / учебник / тетрадь → OCR извлекает текст (включая рукописный) → GigaChat-2-Max превращает в структурированный конспект → Activity в курсе с TipTap-редактором. Геймификация: achievements CRUD, XP за ДЗ, streak дней подряд. PDF-сертификаты с публичной верификацией /certificates/verify по уникальному коду.
Только GigaChat · parental consent · 4 параллельных аудита
Compliance под 152-ФЗ: единственный AI-провайдер — GigaChat (Sber), оплата в рублях, данные в РФ; OpenAI/ChatGPT удалены из кода полностью. Модуль /pdn/* — реквизиты Оператора, политика, оферта, subject-rights flow. Парентальный консент для учеников младше 14 лет. 54-ФЗ: PAYMENT_AUDIT structured JSON-лог, фискализация YooKassa. Аудит 2026-04-24 (4 параллельных): code/security/UI/plan — все P0/P1 закрыты: httpOnly cookies, секреты в .env (chmod 600), pre-commit hook на 11 regex-паттернов, CORS whitelist, rate-limit Redis, N+1 fixes (selectinload), magic-byte валидация (DOCX через ZipFile, HEIC ftyp-боксы), YooKassa webhook IP-spoof защита.
Курсы, домашка, дневник, расписание, родители, чат, оплата, compliance
36 377 LOC Python, 38 роутеров, 314 endpoints, Docker chemcat-api :9000
50 061 LOC TS, standalone, PM2 chemcat-web :3009 + 8 BFF-групп
31 модуль моделей, 15 alembic-миграций, RAG ai_kb_chunks
256MB allkeys-lru: sessions, rate-limit, SSE registry, cat_ctx cache
chat.chemcat.ru, 458 client + 77 server i18n, автосинк
5 дашбордов, 13 counters, AlertManager
Open-source FastAPI LMS, глубоко кастомизирован