ESP32-S3 Bench Guide
ESP32-S3 N16R8 bench guide: live pinout, lessons, simulators and the bench log.
翻译准备中
尚未检测到更新。GitHub 发布版本后会显示在这里。
个人 GitHub 账号下公开仓库的所有者可以登录并验证所有权,自行管理介绍,无需管理员批准。
登录并生成验证文件,在 30 分钟内将其提交到此仓库的默认分支。其他分支或分叉仓库中的文件无效。然后在下方检查文件,即可无需管理员批准直接管理项目。请保留文件以维持管理权限。
如需登录,将前往登录页面。登录后请回到此处,再次点击所选的验证按钮。
在项目文件夹中运行 /nomorevibe verify,即可验证所有权并自行管理介绍。
一分钟完成验证正在加载完整 README。 以下为已保存的摘录。
A website to help students figure out which engineering field might actually fit them, built as a personal project by Jaime Gomez, a student at MSU.
Back in high school I remember looking at a long list of engineering majors and having no real idea what any of them actually meant day to day. Most of what I could find online was either a thin list of job titles or straight-up recruiting copy. This site is my attempt to build the resource I wish I'd had: honest, specific, no-hype descriptions of what these fields are actually like, including the parts that aren't glamorous.查看完整 README ↗A website to help students figure out which engineering field might actually fit them, built as a personal project by Jaime Gomez, a student at MSU.
Live site: https://engineering-exploration-two.vercel.app
Back in high school I remember looking at a long list of engineering majors and having no real idea what any of them actually meant day to day. Most of what I could find online was either a thin list of job titles or straight-up recruiting copy. This site is my attempt to build the resource I wish I'd had: honest, specific, no-hype descriptions of what these fields are actually like, including the parts that aren't glamorous.
prefers-reduced-motion respectedThree of the simulations don't substitute into a textbook formula — they solve the problem numerically, the way an analysis tool does, and then check themselves against an exact answer. The error is printed on screen.
| Simulation | How it's solved | Checked against |
|---|---|---|
Beam (app/lib/beamAnalysis.ts) | Reactions from static equilibrium; shear as the running sum of loads; moment, slope and deflection each integrated from the station before it, with the far support's boundary condition enforced by correcting the starting slope | The closed-form solution — agrees to <0.001% |
Pendulum (app/lib/pendulumMotion.ts) | Fourth-order Runge-Kutta on θ'' = −(g/L)·sin θ, the equation the small-angle approximation comes from | The exact period, computed from a complete elliptic integral via the arithmetic-geometric mean — agrees to <0.001% |
Projectile (app/lib/projectileMotion.ts) | RK4 with quadratic drag, `F = ½·ρ·C_d·A· | v |
The beam page draws shear and bending moment diagrams alongside the deflected shape. The pendulum plots its real motion against the textbook formula's cosine, so you can watch them drift apart — at a 45° release the textbook period is 3.84% short, which for a pendulum clock would be about an hour a day. The projectile draws the drag path against the vacuum parabola; a 45 m/s throw of a 150 g ball loses roughly half its range to the air.
Every simulation states its assumptions on the page — Euler-Bernoulli beam theory, small deflections, no spin on the ball — because a number without its assumptions isn't worth much.
npm test
22 tests covering the three solvers, using Node's built-in test runner — no test framework added as a dependency. They check the beam against Pab/L and PL³/48EI, the pendulum against published elliptic-integral period ratios, and the projectile's drag solution against a second integrator written independently inside the test, since agreeing with a different method is a real check while agreeing with itself is not. They also check things that must be true regardless: equilibrium holds, moment returns to zero at both supports, amplitude doesn't decay in a frictionless swing, and air never adds range.
GitHub Actions runs the typecheck, lint, tests and a full production build on every push and pull request, so a broken change shows up before it reaches the live site.
app/lib/ holds the numerical solvers as plain functions, separate from the UI, which is what makes them testablemain deploys automaticallyI built this using Claude Code, Anthropic's AI coding assistant, as a pair-programming tool. To be straightforward about the split: Claude wrote most of the actual code from my direction. What I did was drive the whole process — deciding what to build and in what order, reviewing every diff before committing, testing every feature myself in the browser (including on mobile and in dark mode), catching things that felt off or too generic, making the calls Claude flagged as needing a real decision (data accuracy, tone, design direction), and deploying and debugging the live site on Vercel myself.
I didn't type most of these lines of code. But I know why every part of this site exists, what tradeoff each decision involved, and how to debug it when something breaks, because I was the one steering it the whole way through. That's the part I actually learned.
generateStaticParams for pre-building pages, and why a Client Component (like the interactive quiz) can't export its own page metadata and needs a separate layout file to carry itmin-width by default<head> tags, not by assuming it workednpm install
npm run dev
Then open http://localhost:3000.
npm test # run the solver tests
npm run lint # eslint
npm run build # production build