ESP32-S3 Bench Guide
ESP32-S3 N16R8 bench guide: live pinout, lessons, simulators and the bench log.
EduBridge — a lightweight LMS for small-scale tuition centres and coaching institutes.
EducationJavaScript · CSSGitHub @Abhijay-NagalOnlineOwner 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.
A lightweight, installable LMS for small-scale tuition centres and coaching institutes — the kind of place that runs on WhatsApp groups, phone calls and a paper attendance register today.
Three role-based logins (student, parent, administration) on a single progressive web app.
The app ships with a realistic demo dataset. On the login screen, tap any of the three cards to auto-fill.
The demo parent (Sunita Gupta) has two children enrolled, so the multi-child flow is visible.Read the full README ↗A lightweight, installable LMS for small-scale tuition centres and coaching institutes — the kind of place that runs on WhatsApp groups, phone calls and a paper attendance register today.
Three role-based logins (student, parent, administration) on a single progressive web app.
The app ships with a realistic demo dataset. On the login screen, tap any of the three cards to auto-fill.
| Role | Phone | Password |
|---|---|---|
| Administration | 9000000001 | admin123 |
| Student | 9000000010 | student123 |
| Parent | 9000000020 | parent123 |
The demo parent (Sunita Gupta) has two children enrolled, so the multi-child flow is visible.
Student
Parent
Administration
| Layer | Choice |
|---|---|
| Frontend | React 18 + Vite |
| Styling | Tailwind CSS |
| Routing | React Router |
| Charts | Recharts |
| PWA | vite-plugin-pwa (Workbox) |
| Persistence | IndexedDB via idb-keyval |
| Language | JavaScript (no TypeScript) |
| Hosting | Vercel |
All data lives in the browser's IndexedDB, seeded on first launch. Everything routes through
src/data/db.js, which is the single data-access layer — no component talks to
storage directly.
This means the app is fully functional with zero backend setup, which is what makes the one-link Vercel deploy work. The trade-off is that data is per-device: changes an admin makes on a laptop will not appear on a phone, because they are different browsers.
Moving to a shared backend (Supabase was the plan) means reimplementing the functions in db.js
against it. No component changes are required — that isolation was deliberate.
npm install
npm run dev
Open the printed URL (usually http://localhost:5173).
npm run build # production build into dist/
npm run preview # serve the production build locally
npm run icons # regenerate PWA icons from public/favicon.svg
The service worker is disabled in dev (
devOptions.enabled: false) so it doesn't cache your changes while you work. Install/offline behaviour only applies to the built app — test it withnpm run preview, notnpm run dev.
One-time setup:
npm run builddistAfter that it's automatic: every push to main triggers a new deployment. Pull requests get
their own preview URL.
vercel.json handles the SPA rewrite (so deep links like /student/quizzes work on refresh) and
sets cache headers — long-lived for hashed assets, no-cache for the service worker so updates land
immediately.
The app works offline after the first load — Workbox precaches the shell, and all data is local anyway.
Installation requires HTTPS, which Vercel provides automatically. It will not offer to install over plain
http://(except onlocalhost).
src/
├── App.jsx route table + role guards
├── main.jsx entry point
├── index.css Tailwind layers and component classes
├── context/
│ └── AuthContext.jsx session, DB bootstrap, change notifications
├── data/
│ ├── db.js THE data-access layer — swap this for a real backend
│ └── seed.js demo dataset
├── components/ shared UI (Layout, charts, modals, icons, …)
└── pages/
├── Login.jsx
├── Notifications.jsx shared by all three roles
├── student/
├── parent/
└── admin/
PROJECT_PLAN.md — problem statement, personas, data model, build phasesUML_DIAGRAMS.md — Mermaid sources and draw.io notesusecase_diagram.xml / activity_diagram.xml — import via draw.io → Extras → Edit Diagram