ESP32-S3 Bench Guide
ESP32-S3 N16R8 bench guide: live pinout, lessons, simulators and the bench log.
Languages, arts, school subjects & more — level-matched videos, live lessons and events, all in one academy.
Translation pending
EducationJavaScript · HTMLGitHub @ghmoasheOnlineOwner 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.
• index.html: marketing and auth entry
• app.html: main authenticated web app
• live.html: browser LIVE host and viewer
• profile.html: public teacher, organizer, and organization profiles
Start a static server from the repo root:
Open http://127.0.0.1:5173/index.html.Read the full README ↗Static browser surfaces for Duvela:
index.html: marketing and auth entryapp.html: main authenticated web applive.html: browser LIVE host and viewerprofile.html: public teacher, organizer, and organization profilesStart a static server from the repo root:
python -m http.server 5173 --bind 127.0.0.1
Open http://127.0.0.1:5173/index.html.
Run:
npm run check
This executes:
Optional environment variables for authenticated checks:
DUVELA_TEST_TEACHER_EMAILDUVELA_TEST_TEACHER_PASSWORDDUVELA_TEST_LEARNER_EMAILDUVELA_TEST_LEARNER_PASSWORDDUVELA_WEB_URLDUVELA_HEADLESSRun only the local contract checks with:
npm run check:contracts
Run only the publish readiness checks with:
npm run check:publish
Set DUVELA_STRICT_PUBLISH=1 to fail the publish check when large local media files such as Duvela.mp4 are still present in the deploy tree. The landing video is loaded from Supabase Storage and uses preload="none"; do not deploy the local 80 MB MP4 with the static site.
With teacher and learner credentials present, npm run check:backend also verifies LIVE session create/update, learner room read, participant join, chat insert, free gift payment, restream status, and Agora publisher/subscriber token generation.
Before publishing Web/Hub/Business/LIVE:
scripts/duvela-web-supabase.sql in Supabase.scripts/live-setup-controls.sql to add browser LIVE quality and audience controls.agora-token, notify-course-enrollment, live-payment, live-restream, notify-live-start.scripts/live-audience-notifications.sql in the Supabase SQL Editor to enable reliable viewer presence and deduplicated LIVE-start notifications.scripts/fixed-registration-roles.sql to assign learner/teacher/organizer roles once at registration and remove the old pending role-request flow.scripts/business-withdrawals.sql to enable Business dashboard withdrawal requests.scripts/business-notes.sql to sync Business notes across devices.npm run check; for release hardening run DUVELA_STRICT_PUBLISH=1 npm run check:publish from a deploy folder that excludes local videos._headers so HTML revalidates while images and shared assets get cache headers.index.html, app.html, live.html, profile.html, and legal.html.Apply scripts/duvela-web-supabase.sql in the Supabase SQL editor before using Web/Hub/Business/LIVE end to end.
LIVE also expects these Edge Functions to be deployed:
agora-token: creates Agora publisher/subscriber tokensnotify-course-enrollment: handles course enrollment notificationslive-payment: validates gifts, charges profiles.vela_coin_balance, and writes live_giftslive-restream: starts, stops, and checks Agora Media Push RTMP converters for enabled YouTube, Facebook, and TikTok targetsnotify-live-start: sends one in-app notification to every follower when a teacher actually starts a LIVE sessionFunction source for the LIVE additions lives under supabase/functions/.
Reusable browser code lives under web/:
duvela-web-config.js: Supabase config and storage keysduvela-web-roles.js: shared role normalization and auto-detectionduvela-web-ui.js: toast-based feedback helpersThe next structural step is moving the remaining large inline scripts from index.html and app.html into feature files under web/.