ESP32-S3 Bench Guide
ESP32-S3 N16R8 bench guide: live pinout, lessons, simulators and the bench log.
翻译准备中
尚未检测到更新。GitHub 发布版本后会显示在这里。
个人 GitHub 账号下公开仓库的所有者可以登录并验证所有权,自行管理介绍,无需管理员批准。
登录并生成验证文件,在 30 分钟内将其提交到此仓库的默认分支。其他分支或分叉仓库中的文件无效。然后在下方检查文件,即可无需管理员批准直接管理项目。请保留文件以维持管理权限。
如需登录,将前往登录页面。登录后请回到此处,再次点击所选的验证按钮。
在项目文件夹中运行 /nomorevibe verify,即可验证所有权并自行管理介绍。
一分钟完成验证正在加载完整 README。 以下为已保存的摘录。
LMS-AI is a modern, real-time AI teaching platform that revolutionizes personalized education through interactive AI companions. Built with Next.js 15 and powered by cutting-edge AI voice technology, it offers immersive learning experiences across multiple subjects.查看完整 README ↗LMS-AI is a modern, real-time AI teaching platform that revolutionizes personalized education through interactive AI companions. Built with Next.js 15 and powered by cutting-edge AI voice technology, it offers immersive learning experiences across multiple subjects.
Before running this project, make sure you have:
Create a .env.local file in the root directory with the following variables:
# Clerk Authentication
NEXT_PUBLIC_CLERK_PUBLISHABLE_KEY=your_clerk_publishable_key
CLERK_SECRET_KEY=your_clerk_secret_key
NEXT_PUBLIC_CLERK_SIGN_IN_URL=/sign-in
NEXT_PUBLIC_CLERK_SIGN_UP_URL=/sign-up
# Supabase
NEXT_PUBLIC_SUPABASE_URL=your_supabase_url
NEXT_PUBLIC_SUPABASE_ANON_KEY=your_supabase_anon_key
# Vapi AI
NEXT_PUBLIC_WEB_TOKEN=your_vapi_web_token
# AI session recap + quiz (optional; recaps are hidden when unset)
ANTHROPIC_API_KEY=your_anthropic_api_key
# Cron auth for /api/keep-alive (required; Vercel Cron sends it automatically)
CRON_SECRET=a_long_random_string
# Sentry (Optional)
SENTRY_AUTH_TOKEN=your_sentry_auth_token
When a voice session ends, the app writes a short recap and a 3-question quiz
from the transcript (Claude, server-side) and saves it to session_summaries.
supabase/migrations/20261002000000_session_summaries.sql to your
Supabase project (SQL editor or supabase db push).ANTHROPIC_API_KEY (server-only, never NEXT_PUBLIC_).Safeguards: signed-in users only, transcripts are capped, 20 recaps per user per day (counted from the table, so recaps stay off until the migration exists), and the transcript is treated as data, not instructions. Without the key or the table the session summary simply omits the recap.
No Clerk, Supabase or Vapi accounts needed to look at the UI:
npm install
npm run dev:mock
http://localhost:3000/dev/session shows the full session screen (3D orb,
live captions, summary and a sample recap/quiz) driven by a scripted
voice call. Add ?subject=maths (or coding, history, ...) to switch subjects.NEXT_PUBLIC_MOCK_VAPI is ignored in
production builds and /dev/session returns 404).Clone the repository
git clone https://github.com/yourusername/lms-ai.git
cd lms-ai
Install dependencies
npm install
# or
yarn install
# or
pnpm install
# or
bun install
Set up environment variables
.env.example to .env.localSet up the database
Run the development server
npm run dev
# or
yarn dev
# or
pnpm dev
# or
bun dev
Open your browser Navigate to http://localhost:3000 to see the application.
lms-ai/
├── app/ # Next.js App Router pages
│ ├── companions/ # Companion-related pages
│ ├── my-journey/ # User profile and progress
│ ├── subscription/ # Subscription management
│ ├── layout.tsx # Root layout
│ └── page.tsx # Homepage
├── components/ # Reusable UI components
│ ├── ui/ # Base UI components (Radix)
│ ├── CompanionCard.tsx # Companion display component
│ ├── CompanionForm.tsx # Companion creation form
│ └── Navbar.tsx # Navigation component
├── lib/ # Utility libraries
│ ├── actions/ # Server actions
│ ├── supabase.ts # Supabase client
│ ├── vapi.sdk.ts # Vapi AI integration
│ └── utils.ts # Helper utilities
├── constants/ # App constants
├── public/ # Static assets
└── middleware.ts # Next.js middleware
Users can create personalized AI tutors with customizable parameters:
Powered by Vapi AI, the platform provides:
npm run dev - Start development server with Turbopacknpm run build - Build for production with Turbopacknpm start - Start production servernpm run lint - Run ESLint for code qualityThe application can be deployed on any platform supporting Next.js: