ESP32-S3 Bench Guide
ESP32-S3 N16R8 bench guide: live pinout, lessons, simulators and the bench log.
Interview-ready in 90 days, with friends. Daily missions, a question feed that makes you recall, and a coach that knows your progress.
EducationTypeScript · PLpgSQLGitHub @Am4nnOnlineOwner 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
Personal interview-prep app for DSA and system design: daily missions, AI-graded spaced-repetition cards, and an AI coach for mock interviews and solution reviews.
Taken from the repository README
Loading the full README. The saved excerpt is shown below.
Interview prep that plans your day and checks your answers.
Pick 30, 60 or 90 days. 90x picks today's problems from your weakest areas,
grades what you type, and only raises your readiness when you do the work.
Landing page. / is the public front page: a pinned demo, a wall of Feed cards and Google sign-in. Signed-in users go straight to Today.Read the full README ↗Landing page. / is the public front page: a pinned demo, a wall of Feed cards and Google sign-in. Signed-in users go straight to Today.
Today. A plan for the day from your weekday template: new problems, due reviews, a design topic, a "10 cards" mission, a mock or a story. Each mission has a one-line reason it was picked. A weekly focus from the Sunday review adds one focus problem and topic a day, and "+ Add a problem" adds extra work to an Extras list that carries over until you solve or remove it. Work earns XP, shown as +N XP where it is earned, with a total and a week chart on Me.
90 Grid. One square per campaign day, marked done, partial or missed. A missed day can be revived by making up its missions, which keeps the streak alive.
Readiness. A 0 to 100 score per area (DSA, system design, CS core, Java, SQL), built from how much of each area you've covered and how accurate you've been lately.
Feed. Cards across the topics you switch on, in 10 card types (pick one, order, match, bucket, assemble, numeric keypad, tap in place, claim grid, grid toggle, and written answers graded against the card's key points). FSRS schedules the next review. Any 10 cards span at least 4 areas, and you can bias the queue by difficulty.
Library. Nine tracks (DSA, Design, CS, Java, SQL, LLD, AI, Behavioural, Competitive) with search. Topics are grouped in sections with lessons, DSA has a Pattern Map of pattern tricks and problems, and everything links back to its sources.
Check-ins. Log a problem as solved, solved with hints, or failed. LeetCode sync can fill these in from your public profile.
Coach. A chat that remembers you. It searches the library and cites what it used, finds problems, reviews pasted solutions, teaches lessons, runs timed text mocks, keeps your STAR story bank and writes a weekly read that shows on Today and Me. Anything it wants to change needs your tap first.
Friends. Invite by email, accept, then compare readiness, streak and solved this week.
Me. Plan, settings, coach memory, stories, weekly reads, report a problem, and delete your account.
Admin. Approve users, review card batches and flagged cards, read reports and mail, set AI caps and the auto-approve switch, and see an analytics dashboard for growth, activation, return and cost.
It installs as an app on phone and desktop, keeps Today and the Feed available offline, and sends reminders by web push. Privacy and terms pages are public.
Sign-in is with Google, and every new account waits for an admin to approve it, unless auto-approve is on.
flowchart LR
USER["Browser / installed PWA"] --> APP["web/<br/>Next.js on Vercel"]
APP --> DB[("Supabase<br/>Postgres + RLS, Auth")]
APP --> RED[("Upstash Redis<br/>feed queue, limits, cost meter")]
APP --> VEC[("Upstash Vector<br/>library search")]
APP --> AI["AI provider<br/>via Vercel AI SDK"]
APP --> AUD[("Cloudflare R2<br/>lesson audio, signed URLs")]
APP -.-> SEN["Sentry"]
QS["Upstash QStash<br/>scheduled jobs"] --> APP
GHA["GitHub Actions<br/>nightly backup"] --> DB
GHA --> BAK[("Cloudflare R2<br/>encrypted dumps")]
ai_usage, and counts against daily, monthly and per-person caps that admins set. A hard stop and a lifetime ceiling sit above the caps./api/jobs/hourly and /api/jobs/leetcode-sync (set up with bun run schedule:jobs).main only. There are no preview deploys for PR branches./api/health reports whether Postgres and Redis answer.| App | Next.js 16, React 19 (React Compiler), TypeScript, Tailwind v4, shadcn/ui, TanStack Query |
| Data | Supabase Postgres with row-level security, Drizzle, Supabase Auth |
| Jobs and search | Upstash QStash, Redis and Vector |
| AI | Vercel AI SDK; DeepSeek by default, or Anthropic or any OpenAI-compatible endpoint |
| Monitoring | Sentry, Vercel Analytics and Speed Insights, UptimeRobot (see web/MONITORING.md) |
| Storage | Cloudflare R2: lesson audio, and nightly encrypted pg_dump backups (see BACKUPS.md) |
| Tests | Vitest, Playwright with axe-core, a break-in security suite |
You need Bun and Docker.
cd web
bun install
cp .env.example .env.local # every key is explained in the file
bun run db:start # local Supabase with every migration applied
bun run dev
Sign in once (Google OAuth keys go in .env.local, see CONTRIBUTING), then make yourself an admin:
bun run admin:grant [email protected]
The local stack starts empty. Load the small catalog the end-to-end tests use.
DATABASE_URL=postgresql://postgres:[email protected]:54322/postgres bun run scripts/seed-e2e.ts
Run it from web/. The port is whatever supabase status reports.
| CONTRIBUTING.md | setup, the rules, checks before a PR |
| PRODUCT.md, DESIGN.md | what the product is, how it looks |
| SECURITY.md | threat model, reporting a vulnerability |
| BACKUPS.md | nightly backups, restore and the drill |
| LOAD-TEST.md | load test results |
| web/README.md | the web app: commands and layout |
| web/MONITORING.md | Sentry, uptime checks, /api/health |
web/ the Next.js app, its tests and scripts
supabase/ config and SQL migrations, including row-level security
.github/ CI, the nightly backup and shared setup actions
See CONTRIBUTING.md.
The code is MIT. The study content keeps its sources' own licenses; see NOTICE.