ESP32-S3 Bench Guide
ESP32-S3 N16R8 bench guide: live pinout, lessons, simulators and the bench log.
7000+ задач, карточки, маршрутные листы, QR-листы, pixel art worksheets, тестирование учеников по ссылке и QR-коду. Всё, что нужно учителю математики.
Translation pending
EducationJavaScript · CSSGitHub @evilfaustOnlineOwner unconfirmed
Have you tried it? One tap is enough. No sign-in needed.
No updates detected yet. GitHub releases will appear here.
Owners of public repositories under a personal GitHub account can sign in to verify ownership and manage the introduction themselves. No administrator approval is needed.
Sign in, generate a verification file, and commit it to this repository’s default branch within 30 minutes. Files on other branches or forks do not count. Then check the file below to manage the project without administrator approval. Keep the file to retain your access.
If needed, you will go to sign-in. After signing in, return here and press your chosen verification button again.
Run /nomorevibe verify in your project folder to verify ownership and manage the introduction yourself.
Verify in one minuteAsk about other verification options
Инструменты учителя математики: база задач, генератор работ, геометрия с GeoGebra, онлайн-тесты, ТДФ-конспекты
Translation pending
Taken from the repository README
Loading the full README. The saved excerpt is shown below.
Lemma — веб-платформа для учителя математики: рабочее пространство (календарь, журнал, КТП, заметки), база задач с семантическим поиском, генераторы вариантов ЕГЭ/ОГЭ и тренажёров, онлайн-тесты для учеников, аналитика результатов, модули геометрии, теории и ТДФ. Production: l.oipav.ru — учительский интерфейс · student.oipav.ru — ученический · lemma.oipav.ru — лендинг · task-ege.oipav.ru — backendRead the full README ↗
Lemma — веб-платформа для учителя математики: рабочее пространство (календарь, журнал, КТП, заметки), база задач с семантическим поиском, генераторы вариантов ЕГЭ/ОГЭ и тренажёров, онлайн-тесты для учеников, аналитика результатов, модули геометрии, теории и ТДФ.
Production: l.oipav.ru — учительский интерфейс · student.oipav.ru — ученический · lemma.oipav.ru — лендинг · task-ege.oipav.ru — backend
| Интерфейс | URL (production) | Что делает |
|---|---|---|
| Учительский | l.oipav.ru (закрытый, вход по логину) | Пространство учителя, задачи, генераторы, выдача тестов, аналитика |
| Ученический | student.oipav.ru | Тесты по коду/QR, личный кабинет, курсы, достижения |
| Лендинг | lemma.oipav.ru | Промо-страница |
Моё пространство — учительское фло вокруг реального расписания:
База задач:
Генераторы работ:
Тригонометрия (11 генераторов): единичная окружность, значения функций, выражения, обратные функции, уравнения (в т.ч. f(kx+b)=a), формулы приведения и сложения, двойной аргумент, шифровки, смешанная работа.
Устный счёт (7 генераторов): арифметика, степени и логарифмы, степени и корни, логарифмы, действия с десятичными и обыкновенными дробями, смешанная работа.
Геймификация: QR-листы, пиксель-арт (одиночный и командный), шифровки, маршрутные листы, марафон защиты задач с live-доской, кроссворды.
Геометрия: собственная база + банк МЦНМО (17,6 тыс. задач с фасетными тегами), GeoGebra-чертежи (живой апплет + PNG/SVG-экспорт), компоновка листов S/M/L/XL, печать с физическими mm/pt.
Листки: 41 лист Гордина (планиметрия и стереометрия, 1641 задача) + редактор собственных листков.
Теория: статьи на Markdown + KaTeX в редакторе CodeMirror, каллауты, палитра формул, GeoGebra-иллюстрации, печать конспектов.
ТДФ (Теоремы, Определения, Формулы): структурированные конспекты по классам, опросники и флешкарты, листы формул, КИМ-стиль печати с двухфазной пагинацией.
Ученики: прогресс, тепловая карта ошибок, достижения (random + conditional), личный кабинет с историей попыток, онлайн-курсы с публикацией уроков и домашних заданий.
Авторизация: роли superadmin / editor / viewer, доступ по секциям, журнал действий, мультиучительство (данные скоупятся по владельцу). См. AUTH.md.
Frontend (ege-tasks/):
React.lazy())window.print() + @media print, html2pdf.jsBackend (pocketbase/):
pocketbase-ege, порт 8095pdf-service-ege, порт 3001: парсер «Решу ЕГЭ», LLM-нормализация LaTeX, распознавание бланков, векторный поиск (sqlite-vec). PDF не генерирует — серверный Puppeteer выпилен в июне 2026pb-files на Raspberry Pi — библиотека материалов и файлов учителяInfrastructure:
workflow_dispatch, автодеплой отключён осознанно)# 1. Установка зависимостей
git clone https://github.com/evilfaust/lemma.git
cd lemma
cd ege-tasks && npm install && cd ..
# 2. Backend
# Локальной БД нет — фронтенд всегда ходит на task-ege.oipav.ru.
# Чтобы поднять свой бэкенд, измените PB_BASE_URL
# в ege-tasks/src/shared/services/pocketbaseUrl.js
# 3. Dev-сервер фронтенда
./start.sh # или: cd ege-tasks && npm run dev
# → http://localhost:5173
# Сборка production (3 приложения: index.html + student.html + landing.html)
cd ege-tasks && npm run build
# Тесты (Vitest, ~6 сек)
cd ege-tasks && npm test
cd ege-tasks && npm run test:watch
# Пересчёт векторного индекса задач (вручную, требует Ollama на локальной машине)
cd vector-benchmark && npm run index
lemma/
├── ege-tasks/ # Frontend (React + Vite)
│ ├── src/
│ │ ├── components/ # ~260 компонентов
│ │ │ ├── workspace/ # Моё пространство: календарь, журнал, КТП, заметки, дела
│ │ │ ├── auth/ # LoginPage, UserManager, AuditLog, ProtectedRoute
│ │ │ ├── catalog/ # Справочники (темы, теги, источники, дубли)
│ │ │ ├── geometry/ # Модуль геометрии (редактор, чертежи)
│ │ │ ├── listki/ # Листки Гордина + редактор своих
│ │ │ ├── tdf/ # Теоремы, определения, формулы
│ │ │ ├── theory/ # Теория (Markdown + CodeMirror + GeoGebra)
│ │ │ ├── student/ # Ученический интерфейс
│ │ │ ├── trig/ # Тригонометрические подкомпоненты
│ │ │ ├── worksheet/ # Переиспользуемые элементы листов
│ │ │ ├── marathon/ crossword/ mc-test/ pixel-art/ qr-worksheet/ route-sheet/
│ │ │ └── shared/ # MathRenderer, LatexField, CropModal
│ │ ├── contexts/ # ReferenceDataContext, AuthContext
│ │ ├── hooks/ # ~47 custom хуков
│ │ ├── shared/services/pb/ # API по доменам (26 модулей) + barrel pocketbase.js
│ │ ├── utils/ # Helpers (LaTeX, shuffle, QR, normalize, …)
│ │ ├── landing/ # Автономный лендинг (без Ant Design)
│ │ ├── App.jsx # Teacher routes
│ │ └── StudentApp.jsx # Student routes
│ ├── public/ # Static assets (ачивки, логотипы)
│ └── src/__tests__/ # 436 тестов (Vitest)
│
├── pocketbase/ # Backend (deployed to VPS)
│ ├── pb_migrations/ # Миграции (96 шт.)
│ ├── pb_hooks/ # JS-хуки PocketBase (stats, слияние и модерация учеников)
│ ├── pdf-service.js # Backend helper: sdamgia, LLM, векторный поиск, бланки
│ └── vec-search.js # Векторный поиск (sqlite-vec)
│
├── vector-benchmark/ # Индексатор эмбеддингов (запуск вручную)
├── scripts/ # Импортёры каталогов (ЕГЭ база, ОГЭ, МЦНМО, листки)
├── .github/workflows/ # CI: деплой лендинга (по кнопке)
│
├── README.md # ← вы здесь
├── CHANGELOG.md # История релизов
├── LICENSE / NOTICE # AGPL-3.0 и перечень исключений
└── AUTH.md # Архитектура системы авторизации
Backend (VPS, разово):
pocketbase-ege)pdf-service-ege)task-ege.oipav.ru → PocketBase (/api/, /_/) и helper (/pdf/)pocketbase/pb_migrations/ применяются автоматически при рестартеFrontend (вручную, автодеплоя по push нет):
./deploy-raspberry.sh --build # Учительский → l.oipav.ru (Raspberry Pi)
./raspberry/deploy-student-to-vps.sh # Ученический → student.oipav.ru (VPS)
./deploy-landing.sh # Лендинг → lemma.oipav.ru (или GitHub Actions)
Учительский интерфейс требует логина. Подробно — в AUTH.md.
| Роль | Что может |
|---|---|
superadmin | Всё + управление пользователями + журнал действий |
editor | CRUD задач/работ/тестов в разрешённых секциях |
viewer | Просмотр, генерация, печать, экспорт PDF — без изменений |
Регистрация отключена — пользователей создаёт суперадмин через /app/admin/users.
См. CHANGELOG.md. Последняя версия — 3.9.172 (2026-09-08).
Copyright © 2026 Oleg Pavlyuchenko
Код проекта распространяется на условиях GNU AGPL-3.0 (или любой более поздней версии).
Что это значит на практике:
Важно: лицензия покрывает только исходный код. Учебный контент (задачи из «Решу ЕГЭ», банка МЦНМО, листков Гордина, ФИПИ), изображения достижений, а также название и логотип «Lemma» под AGPL не подпадают — подробности и перечень исключений в файле NOTICE.
Автор — единственный правообладатель кода и сохраняет право лицензировать его на иных условиях. По вопросам коммерческого лицензирования: [email protected]