ESP32-S3 Bench Guide
ESP32-S3 N16R8 bench guide: live pinout, lessons, simulators and the bench log.
翻譯準備中
尚未偵測到更新。GitHub 發布版本後會顯示在這裡。
個人 GitHub 帳號下公開儲存庫的擁有者可以登入並驗證所有權,自行管理介紹,無需管理員核准。
登入並產生驗證檔案,在 30 分鐘內將其提交至此儲存庫的預設分支。其他分支或分叉儲存庫中的檔案無效。然後在下方檢查檔案,即可無需管理員核准直接管理專案。請保留檔案以維持管理權限。
如需登入,將前往登入頁面。登入後請回到此處,再次點擊所選的驗證按鈕。
在專案資料夾中執行 /nomorevibe verify,即可驗證所有權並自行管理介紹。
一分鐘完成驗證Interview Coach Project
翻譯準備中
取自儲存庫 README
正在載入完整 README。 以下為已儲存的摘錄。
Real-time AI commentary on interview answers. Listens to your mic, detects
the interviewer's questions, streams per-question commentary from DeepSeek,
and lets you replay the whole session afterwards with timestamped notes.
Current version uses the browser's built-in Web Speech API for transcription
(free, no extra API key needed). For a production deployment with longer
sessions and better multi-language accuracy, swap lib/audioSession.ts for
a Deepgram streaming implementation.檢視完整 README ↗Real-time AI commentary on interview answers. Listens to your mic, detects the interviewer's questions, streams per-question commentary from GPT-6 Luna, and lets you replay the whole session afterwards with timestamped notes.
Current version uses the browser's built-in Web Speech API for transcription
(free, no extra API key needed). For a production deployment with longer
sessions and better multi-language accuracy, swap lib/audioSession.ts for
a Deepgram streaming implementation.
📘 Setting this up for the first time? See DEPLOY.md for step-by-step instructions on running locally, pushing to GitHub, and deploying to Vercel.
Browser mic
│
├─► MediaRecorder ─────────► Blob (saved for playback)
│
└─► Web Speech API ────► transcript stream
│
▼
┌─────────────────────────────┐
│ Orchestrator │
│ │
│ every final utterance → │
│ POST /api/detect-question │──► gpt-6-luna (is this a Q?)
│ │
│ every ~220 chars of answer →│
│ POST /api/commentary (SSE) │──► gpt-6-luna (streamed comment)
└─────────────────────────────┘
│
▼
Zustand store
│
▼
React UI
npm install
https://platform.openai.com/api-keys → Create new API key
cp .env.local.example .env.local
# Edit .env.local and paste your key
npm run dev
Open http://localhost:3000 in Chrome or Edge (Safari's Web Speech API is unreliable). Click Start, paste a JD, and start talking. First time, the browser will ask for microphone permission.
/api/detect-question.
GPT-6 Luna decides if it's a new question. If yes → a new Question
block appears at the top. If no → the utterance is added to the current
Question's running answer buffer./api/commentary. This
streams a one-sentence observation back via SSE; the frontend appends
deltas as they arrive.Click any past session in the sidebar. You get:
None. Sessions live in Zustand + memory only. Refresh the page and it's gone. This was a deliberate choice to ship faster — add IndexedDB or a backend DB later.
In lib/orchestrator.ts:
COMMENT_TRIGGER_CHARS (default 220) — how much new answer text
triggers a comment. Lower = more frequent, chattier.COMMENT_MIN_GAP_MS (default 8000) — minimum time between comments on
the same question, to prevent over-commenting during a long answer.Replace lib/audioSession.ts with a streaming version (it needs to:
open a wss://api.deepgram.com/v1/listen socket, pipe MediaRecorder
chunks into it, and call the same four callbacks). Add a
/api/deepgram-token route that mints short-lived project keys so the
browser never sees your main Deepgram key. Everything else stays the same.