ESP32-S3 Bench Guide
ESP32‑S3 N16R8 벤치 가이드: 실시간 핀아웃, 강의, 시뮬레이터 및 벤치 로그
아직 감지된 업데이트가 없습니다. GitHub 릴리스가 나오면 여기에 보입니다.
개인 계정의 공개 저장소 소유자는 GitHub로 로그인해 운영자를 확인하고 소개를 직접 관리할 수 있습니다. 관리자 승인은 필요하지 않습니다.
로그인한 뒤 확인 파일을 만들어 이 저장소의 기본 브랜치에 30분 안에 커밋해 주세요. 다른 브랜치나 포크의 파일은 인정하지 않습니다. 파일을 올린 뒤 아래에서 확인하면 관리자 승인 없이 관리할 수 있습니다. 자격을 유지하려면 파일을 남겨 두세요.
로그인이 필요하면 로그인 화면으로 이동합니다. 로그인 후 이곳으로 돌아와 원하는 확인 버튼을 다시 눌러 주세요.
프로젝트 폴더에서 /nomorevibe verify를 실행하면 소유권을 확인하고 소개를 직접 관리할 수 있습니다.
1분 만에 확인하기Тренажёр нот для ребёнка: узнавать ноты на нотном стане в скрипичном и басовом ключе
저장소 README에서 가져옴
README 전체를 불러오는 중입니다. 아래는 저장된 발췌입니다.
Тренажёр для ребёнка: узнавать ноты на нотном стане в скрипичном и басовом ключе. Работает офлайн, ставится на главный экран как приложение. Приложение показывает одну ноту и спрашивает, как она называется. Десять вопросов — занятие, за занятие дают звёзды, неузнанные ноты можно повторить отдельно. Если нота не узнаётся, подсказка показывает ближайшую опорную ноту и предлагает посчитать от неё ступени — так ноты и учат помимо тренажёра. За три верных подряд загорается огонёк, за занятие без ошибок сыплется конфетти и играет фанфара.README 전문 보기 ↗
Тренажёр для ребёнка: узнавать ноты на нотном стане в скрипичном и басовом ключе. Работает офлайн, ставится на главный экран как приложение.
Приложение показывает одну ноту и спрашивает, как она называется. Десять вопросов — занятие, за занятие дают звёзды, неузнанные ноты можно повторить отдельно.
Если нота не узнаётся, подсказка показывает ближайшую опорную ноту и предлагает посчитать от неё ступени — так ноты и учат помимо тренажёра. За три верных подряд загорается огонёк, за занятие без ошибок сыплется конфетти и играет фанфара.
Тема следует за системой: светлая днём, тёмная вечером. Сам нотный стан остаётся листом бумаги в любой — ноты ребёнок читает чёрными по белому.
Полное описание — docs/SPEC.md. Что и почему решали — docs/DECISIONS.md.
Рабочее целиком: семь уровней от трёх нот до двух ключей вперемешку, занятие, подсказка по опорным нотам, итог со звёздами, работа над ошибками, звук нот, прогресс между запусками, офлайн.
Не сделано: узнавание на слух, длительности и ритм, знаки альтерации, несколько детей на одном устройстве.
Приложение — набор статических файлов, сборка не нужна. Но модули ES и
сервис-воркер не работают через file://, поэтому нужен любой локальный
сервер:
powershell -ExecutionPolicy Bypass -File tools/serve.ps1
Затем открыть http://localhost:4180. Порт меняется ключом -Port.
Node в проекте не используется, но если он установлен, подойдёт и
npx serve ..
Открыть /tests/index.html на том же локальном сервере. Проверки идут в
браузере, без сборки и без установки чего-либо; зелёная полоса сверху и
галочка в заголовке вкладки означают, что всё прошло.
Работают они на отдельном ключе хранения notes.test — звёзды ребёнка при
запуске не трогаются. Сервис-воркер страница снимает сама, иначе она
показывала бы не то, что лежит в репозитории, а то, что осталось в кэше у
этого браузера. Снимает она только своё — воркер «Нот» и кэши notes-*:
на Pages у того же адреса есть соседи, и их офлайн трогать нельзя.
На каждый push и pull request те же проверки прогоняет GitHub Actions: поднимает статический сервер, открывает эту же страницу настоящим браузером и читает итог. Отдельным шагом сверяется список офлайн-кэша с деревом проекта.
index.html разметка оболочки, без стилей и скриптов
css/style.css все стили, цвета переменными в :root
sw.js кэш и офлайн; при правке файлов поднимать APP_VERSION
manifest.json описание PWA
js/main.js точка входа
js/app.js экраны и маршрутизация (#/занятие/октава)
js/version.js версия приложения
js/core/notes.js ноты, ключи, положение на стане, опоры, частоты
js/core/staff.js рисование стана, ключей и ноты
js/core/levels.js уровни и их наборы нот
js/core/drill.js движок занятия: очередь, ответы, счёт
js/core/store.js прогресс в localStorage
js/core/tone.js звук нот через Web Audio
js/core/haptics.js вибрация на ответ
js/core/actions.js делегирование событий по data-action
js/core/ui.js сборка разметки с экранированием
js/modules/home.js выбор уровня
js/modules/drill.js экран занятия
js/modules/result.js итог занятия
docs/ описание проекта и журнал решений
tests/ проверки, запускаются в браузере
tools/serve.ps1 локальный сервер для разработки
tools/make-icons.ps1 генерация значков, включая maskable
tools/check-precache.ps1 сверка списка офлайн-кэша с деревом проекта
tools/ci-tests.mjs запуск тех же проверок из CI настоящим браузером
Правила, которые важно не нарушить:
js/core/notes.js и нигде больше: ни один
экран не считает положение ноты сам;ui.esc() или
шаблон ui.html;data-action, а не onclick;sw.js и поднимать
APP_VERSION.GitHub Pages из ветки main. Файл .nojekyll обязателен — иначе Pages
игнорирует каталоги, начинающиеся с подчёркивания. Все пути в проекте
относительные, поэтому приложение работает и из подкаталога вида
/Notes/.