ESP32-S3 Bench Guide
ESP32-S3 N16R8 bench guide: live pinout, lessons, simulators and the bench log.
Short lessons with Infley, a textbook with exercises and a living country: interest rate, budget, market — five minutes a day.
AI translation
Короткие уроки с Инфлей, учебник с задачами и живая страна: ставка, бюджет, рынок — пять минут в день.
EducationJavaScript · TypeScriptGitHub @PrimeLongOnlineOwner 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
Loading the full README. The saved excerpt is shown below.
Инфляция — экономика пять минут в день Латиницей — Inflatia: только там, где кириллица невозможна (адрес, имена файлов).Read the full README ↗
Латиницей — Inflatia: только там, где кириллица невозможна (адрес, имена файлов).
Короткие уроки экономики с Инфлей — Путь из юнитов, учебник с задачами и «Мир»: симулятор государства и бизнеса, где знания проверяются в деле. В партии у руля страны вы — центральный банк, Минфин, премьер, президент или трейдер: каждый квартал решаете про ставку, налоги и бюджет, ведёте выборы, войны и мирные договоры, держите в равновесии общество из социальных групп, а модель считает инфляцию, безработицу, курс, долг и остальное. «Своё дело» — отдельная игра: тайкун в реальном времени, где вы строите бизнес внутри живой экономики страны. Есть соло против ботов, вызов дня с общей таблицей и сетевая игра на двоих-троих с профилями игроков.
Знак — монета, надутая как воздушный шарик, с колонной «I» посередине. Источник —
public/favicon.svg (и тот же знак компонентом в src/logo.jsx); PNG-иконки
(icon-192/512, apple-touch-icon) и картинка для ссылок og-image.png
собираются из него командой npm run icons. Файлы логотипа для скачивания и
печати — в logo/ (SVG, знак 1024 px, горизонтальный логотип для тёмного и
светлого фона); пересобираются node scripts/logo-export.mjs.
docs/world.md — библия мира: страна, герои, голоса, правила текста, слоган
и названия, цвета, детский режим «Мира», как переносить юниты в Путь.docs/mechanics.md — словарь механик: виды заданий и шагов урока,
механики вокруг уроков, экономика наград, навигация, первый экран партии, обратная связь,
доступность.docs/legal-todo.md — вопросы юристу (персональные данные, маркировка,
соглашение, голоса). Юридических выводов в коде и текстах нет — только открытые вопросы.Правило меняется сначала в docs/*.md, потом в коде.
recharts для графиков партии, KaTeX для формул учебника, lucide-react для иконокapi/*.js), хранилище — Upstash Redis (переменные окружения
KV_REST_API_URL и KV_REST_API_TOKEN, подключаются через Vercel Marketplace); без них
данные живут в памяти процесса и не переживают разные запросы.npm install
npm run dev # клиент на Vite; api/* локально не поднимается — нужен `vercel dev` или деплой
npm run lint # oxlint
npm test # vitest: модель партии, курс и тексты, награды, сервер
npm run build # tsc -b && vite build; сборка падает, если JS-чанк больше 400 КБ
npm run e2e # Playwright: desktop, phone (Chromium) и webkit (iPhone 13)
npx playwright test --project=desktop --project=phone # без установленного WebKit
npx playwright test e2e/visual.e2e.js --project=phone --update-snapshots # обновить эталоны
npx playwright install webkit # один раз, чтобы локально шёл проект webkit
npm run balance # стенд длинных партий: баланс модели
npm run icons # иконки и картинка для ссылок из public/favicon.svg
Перед коммитом: npm run lint, npm test, npm run build, npx playwright test
(как минимум desktop + phone).
src/
MacroSimulator.jsx оболочка: вход, нижняя панель (Путь, Учебник, Мир, Лавка, Профиль), меню «Мира»
learn.jsx обучение: Путь, задания, урок, итоги, профиль (+ learn-*.jsx — части экранов)
learn/ чистые модули курса: уроки и юниты (course.js), награды (rewards.js),
карта экранов (screens.js), голоса героев (voices.js), кроны (money.js)
textbook.jsx учебник; textbook/ — главы (chapters/*.md, каждая — свой чанк), задачи,
графики, прогресс
game.jsx экран партии; network.jsx — сетевая партия; tycoon.jsx — «Своё дело»
ds.jsx, ds-art.jsx, дизайн-система: компоненты, иллюстрации, токены цвета и шрифта
ds-tokens.js (тёплая палитра WARM, тёмная тема «Мира»)
lib/ модель экономики (engine.js и model/, politics/, world/, content/),
возраст и детский режим (age.js), раскрытие панелей партии (disclosure.js),
гость (guest.js), клиент API (client.js)
api/ serverless-функции: аккаунт, комнаты, вызов дня, рекорды, сообщения
об ошибках, аналитика без персональных данных (events.js)
e2e/ smoke.e2e.js — сценарии; screens.e2e.js — все экраны + axe + размер шрифта;
visual.e2e.js — эталоны десяти ключевых экранов
docs/ библия мира, словарь механик, вопросы юристу
scripts/ стенд баланса, иконки, плагины сборки (service worker, разделы учебника)
src/lib/engine.js — ядро экономической модели (чистые функции, без React). Это
единственный источник истины: его же переиспользует сервер через api/_lib/engine.js
(тонкий реэкспорт), чтобы соло-игра и мультиплеер считали кварталы одинаково.
Не копировать эту логику в другое место..js/.jsx без проверки типов (checkJs: false). Полная миграция
на TypeScript для модели такого размера — отдельная задача, требующая
аккуратной типизации состояния экономики.watchRoom, раз в 2.5с),
а не через WebSocket/SSE — проще в связке с Vercel serverless, но даёт
задержку до нескольких секунд.