ESP32-S3 Bench Guide
ESP32-S3 N16R8 bench guide: live pinout, lessons, simulators and the bench log.
The open-source AI interactive classroom. Upload a PDF to instantly generate an immersive, multi-agent learning experience.
EducationTypeScript · MDXGitHub @YizukiAmeOnlineOwner 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
An AI classroom that remembers — learn it, forget a little, teach it back, keep it.
Translation pending
Taken from the repository README
Loading the full README. The saved excerpt is shown below.
Learn it. Forget a little. Teach it back. Keep it.
The lesson is over. Your memory isn't.
Most AI classrooms are one-shot: generate a course, finish it, forget where it went.
SpiralMAIC gives the classroom an afterlife. It remembers what the course was about,
lets those memories fade naturally, and brings you back when a review would actually help.
Then comes the plot twist: the AI stops teaching. You take the teacher seat.
Your AI classmates are ready to be difficultRead the full README ↗Most AI classrooms are one-shot: generate a course, finish it, forget where it went.
SpiralMAIC gives the classroom an afterlife. It remembers what the course was about, lets those memories fade naturally, and brings you back when a review would actually help. Then comes the plot twist: the AI stops teaching. You take the teacher seat.
In a Reverse Challenge, you explain a sparse review deck in your own words. The AI classmates listen, ask follow-ups, make deliberate mistakes, and request a fresh example. If things get stuck, an AI assistant can step in—just enough to get the room moving again.
It all happens inside the real classroom player, not in a lonely quiz form or a generic chat box.
No answer on the slide. No multiple-choice escape hatch. Just you, the idea, and a few suspiciously curious AI students.
You still get slides, quizzes, interactive scenes, PBL, whiteboard, speech, editing, and exports. SpiralMAIC simply refuses to let all of that disappear after “Complete.”
You need Node.js >= 22.19 < 23, pnpm 10, PostgreSQL, and one model provider (cloud or local).
git clone https://github.com/YizukiAme/SpiralMAIC.git
cd SpiralMAIC
corepack enable
pnpm install
cp .env.example .env.local
cp openmaic.example.yml openmaic.yml
pnpm db:up
Set the local database URL in .env.local:
DATABASE_URL=postgres://openmaic:[email protected]:5432/openmaic
Before starting, put your provider key in .env.local:
OPENAI_API_KEY=sk-...
In openmaic.yml, pick your model under slots.llm:
providers:
openai:
preset: openai
apiKey: ${OPENAI_API_KEY}
slots:
llm: openai:gpt-5.5
Want more models in the picker? Add them to that provider's models list. Server-provided
keys can only use listed models or models assigned to a slot.
Or skip the YAML file and set up model services in the app. Settings now live on the server, so your next browser gets the same workspace configuration—without carrying API keys in requests.
pnpm dev
Then open http://localhost:3000, make a classroom, and start the loop. If this browser has courses or learning records from an older version, SpiralMAIC asks before copying them to this server. You can choose Later and return from Settings. The browser originals are kept; a partial import can resume without creating duplicate courses.
There are plenty of other options—Gemini, Anthropic, Bedrock, DeepSeek, Qwen, Kimi,
MiniMax, GLM, Xiaomi MiMo, OpenRouter, Ollama, Lemonade, and more. The always-current list
lives in openmaic.example.yml and .env.example.
Classroom chat and teach-back now run on Pi. Pick a Classroom model with tool calling;
for Gemini, use the native Google provider. Remove the old NEXT_PUBLIC_PI_CHAT_ENABLED
switch if you kept it from an earlier setup.
Build and run the production app:
pnpm build
pnpm start
Or use Docker:
docker compose up --build
Docker Compose includes PostgreSQL by default. The isolated MP4 render service is optional.
Courses generate on the server and keep going when the tab closes; use a long-running Node
process or container. Back up both PostgreSQL and data/, including instance-secret.key,
which protects saved provider keys. Mount your openmaic.yml into the container if using one.
See the storage guide and
render-service guide.
The current server-backed app does not support Vercel's serverless Next.js deployment. Use a long-running host for generation and learning records.
Shared deployments should set ACCESS_CODE. Local instances remain open when it is unset;
when enabled, a verified browser stays signed in for up to seven days before asking again.
See the v0.4 upgrade guide for compatibility and rollback notes.
For slow networks, Docker builds accept ALPINE_MIRROR (an Alpine mirror hostname) and
NPM_REGISTRY (a complete npm registry URL):
ALPINE_MIRROR=mirrors.tuna.tsinghua.edu.cn \
NPM_REGISTRY=https://registry.npmmirror.com \
docker compose up --build
Use public mirrors only; Docker may retain build arguments in image metadata.
The Spiral-specific layer is intentionally easy to find:
| Path | What's inside |
|---|---|
app/classroom/[id]/revisit/ | The Reverse Challenge classroom |
components/revisit/ | Review panel, report, Study Studio, artifact viewers |
lib/revisit/ | Memory, blueprints, evidence, judging, and formal/Demo storage |
lib/overtime/ | Post-class follow-up lessons |
eval/revisit-judge/ | Report stability evals |
Useful checks:
pnpm check
pnpm lint
pnpm typecheck
pnpm typecheck:e2e
pnpm check:i18n-keys
pnpm test
pnpm build
MIT. SpiralMAIC is based on OpenMAIC; its original notices and attribution are preserved.