ESP32-S3 Bench Guide
ESP32‑S3 N16R8 벤치 가이드: 실시간 핀아웃, 강의, 시뮬레이터 및 벤치 로그
아직 감지된 업데이트가 없습니다. GitHub 릴리스가 나오면 여기에 보입니다.
개인 계정의 공개 저장소 소유자는 GitHub로 로그인해 운영자를 확인하고 소개를 직접 관리할 수 있습니다. 관리자 승인은 필요하지 않습니다.
로그인한 뒤 확인 파일을 만들어 이 저장소의 기본 브랜치에 30분 안에 커밋해 주세요. 다른 브랜치나 포크의 파일은 인정하지 않습니다. 파일을 올린 뒤 아래에서 확인하면 관리자 승인 없이 관리할 수 있습니다. 자격을 유지하려면 파일을 남겨 두세요.
로그인이 필요하면 로그인 화면으로 이동합니다. 로그인 후 이곳으로 돌아와 원하는 확인 버튼을 다시 눌러 주세요.
프로젝트 폴더에서 /nomorevibe verify를 실행하면 소유권을 확인하고 소개를 직접 관리할 수 있습니다.
1분 만에 확인하기README 전체를 불러오는 중입니다. 아래는 저장된 발췌입니다.
Веб-система учёта работы преподавателей для учебного центра «Лидер+». Учителя вносят проведённые уроки и прикрепляют планы, завуч видит часы по каждому преподавателю, группе и ассистенту, выгружает отчёты в Excel. Стек: React + Vite · Supabase (база, авторизация, хранилище файлов) · деплой на Vercel.README 전문 보기 ↗
Веб-система учёта работы преподавателей для учебного центра «Лидер+». Учителя вносят проведённые уроки и прикрепляют планы, завуч видит часы по каждому преподавателю, группе и ассистенту, выгружает отчёты в Excel.
Стек: React + Vite · Supabase (база, авторизация, хранилище файлов) · деплой на Vercel.
supabase/01_schema.sql. Это создаст таблицы, роли, политики доступа (RLS) и bucket
для файлов планов.supabase/03_students_attendance.sql — добавляет учеников, посещаемость,
привязки групп/предметов к преподавателю и вход по логину. Безопасно на уже созданной базе.supabase/02_seed.sql — добавит
предметы, группы, преподавателей, ассистентов и примеры уроков.Вход по логину: пользователи входят по логину (напр.
asaparova), а не по email. Внутри Supabase Auth используется технический emailлогин@lider.local— его никто не видит. Первого администратора (завуча) создаём с логином, см. Шаг 2 ниже.
⚠️ Если у вас проект, созданный после мая 2026, может быть отключён автодоступ к новым таблицам через Data API. Если запросы возвращают пустоту/ошибку доступа — зайдите в Project Settings → Data API и включите доступ к таблицам схемы
public, либо в SQL выполнитеgrant select, insert, update, delete on all tables in schema public to anon, authenticated;
Первого администратора создаём вручную. Вход в систему — по логину, поэтому email
задаём в техническом формате логин@lider.local.
[email protected] (это технический email, входить будете по логину zavuch)update profiles set role = 'admin', username = 'zavuch' where id =
(select id from auth.users where email = '[email protected]');
zavuch + ваш пароль.Преподавателей дальше заводит завуч через интерфейс: раздел «Управление» → вкладка «Преподаватели» → «Выдать доступ». Логин предлагается автоматически из ФИО (первая буква имени + фамилия транслитом), пароль генерируется. Для этого нужно один раз развернуть Edge Function (Шаг 2б).
Только первого админа создаём вручную — назначить его больше некому. Всё остальное (преподаватели, их логины, группы, предметы, привязки) делается в интерфейсе.
Создание аккаунтов требует сервисного ключа, который нельзя держать в браузере.
Поэтому это делает серверная функция invite-teacher.
Установите Supabase CLI (https://supabase.com/docs/guides/cli), затем:
supabase login
supabase link --project-ref ВАШ_PROJECT_REF
supabase functions deploy invite-teacher
SUPABASE_URL, SUPABASE_ANON_KEY и SUPABASE_SERVICE_ROLE_KEY доступны функции
автоматически как встроенные секреты проекта — дополнительно ничего задавать не нужно.
Если CLI не используете — можно создать функцию через дашборд: Edge Functions → Deploy
a new function, имя invite-teacher, вставить код из
supabase/functions/invite-teacher/index.ts.
.env.example в .env.local.Project URL и anon public ключ.VITE_SUPABASE_URL=https://ваш-проект.supabase.co
VITE_SUPABASE_ANON_KEY=ваш-anon-ключ
npm install
npm run dev
Откройте http://localhost:5173
VITE_SUPABASE_URL и VITE_SUPABASE_ANON_KEY.supabase/
01_schema.sql схема БД + роли + RLS + storage
02_seed.sql демо-данные (необязательно)
src/
lib/
supabase.js клиент Supabase
auth.jsx контекст авторизации (сессия, роль)
api.js все запросы к базе и Storage
utils.js расчёты часов, форматирование, палитра
components/
ui.jsx переиспользуемые элементы (Stat, Field…)
LessonTable.jsx таблица уроков
LessonForm.jsx форма добавления урока
pages/
Login.jsx страница входа (лендинг)
TeacherCabinet.jsx кабинет преподавателя
AdminCabinet.jsx кабинет завуча + профиль + ассистенты
App.jsx маршрутизация по роли, шапка
main.jsx точка входа
teacher / admin), связаны с auth.users.profile_id связывает с аккаунтом (может быть пустым).Доступ разграничен на уровне базы (RLS): преподаватель видит и меняет только свои уроки, завуч — всё. Справочниками управляет только завуч.
Управление справочниками из интерфейса (добавление учителей/групп/ассистентов),
редактирование/удаление уроков, произвольный диапазон дат, кабинет ассистента,
расписание, уведомления. Заготовки функций управления уже есть в api.js.