[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"$fmlmylz3498kt":3},{"code":4,"message":5,"data":6,"timestamp":41},10000,"success",{"full_name":7,"position":8,"description":9,"language":10,"stars":11,"forks":12,"stars_gained":13,"age_days":14,"hn_threads":15,"one_liner":16,"summary_md":17,"topic":18,"github_topics":21,"license":37,"homepage":38,"updated_at":39,"history":40},"agharsallah\u002Fesp-labs-web",16,"The ESP32-S3 bench guide as a React app: live pinout, lessons with interactive simulators, a code reader for the esp-labs firmware, and the bench log. In 8 languages, including Arabic (RTL).","TypeScript",205,34,55,3,[],"把 ESP32-S3 的接线、烧录、模拟器和固件逐行讲解放进同一个网页，方便初学者按顺序动手。","如果你正在用 ESP32-S3 学嵌入式入门，值得先在浏览器里打开它再动电烙铁。它把每个实验的目标、引脚、接线、烧录命令和代码阅读压到同一页里。\n\n## 解决什么问题\n\n跟着 ESP32 教程入门时，通常要同时应付三件互不相干的事：一个标签页看接线图，一个终端窗口敲烧录命令，还有一份默认你懂 C++ 的源码。教程说“把 LED 接到 GPIO”，你得自己找引脚图；说“烧录这个 sketch”，你得猜代码在做什么，还要判断板子的反应对不对。这个项目把实验目标、用到的引脚、接线、烧录命令和预期现象的模拟器放在同一张学习单上。你按步骤勾选，再打开同一份固件，用逐行讲解的阅读器理解它，最后得到的是对电路和代码两边的心智模型，而不是一个照抄的 blink 程序。\n\n## 有什么不同\n\n它的教学单位是一张实验单：目标、实时引脚图、接线、命令、可勾选步骤，以及一个能对键入命令作出真实固件式响应的模拟串口监视器。模拟器是核心机制。与其烧到板子上才发现命令拼错或 LED 状态不对，你可以先在模拟监视器里输入，观察对应行为。代价是：模拟反映的是课程固件，不是你的实际接线，它能验证预期，但不能替代真实工作台。\n\n代码阅读器是另一块不同之处。它在构建时从旁边的 [esp-labs](https:\u002F\u002Fgithub.com\u002Fagharsallah\u002Fesp-labs) 仓库拉取真实固件，提供几种模式：Tour 走走停停，让你先猜下一行；Story 跟着 `setup()` 进入每个调用；Explore 解释你点到的任意一行。新 C++ 词汇每次出现三个，短语本会记住你见过的词。重要限制是这个阅读器依赖旁边的仓库：没有它，课程和模拟器照常可用，但阅读器没有内容可显示。\n\n另外，指南有八种语言，包括从右到左排版的阿拉伯语，并能在 390 px 手机宽度、明暗主题下使用。对不想边读边翻译电子词汇的学习者来说，这是实际便利。\n\n## 谁值得试\n\n它适合手上有 ESP32-S3 DevKitC-1、想按顺序练而不是直接啃数据手册的自学者：32 个实验和交互模拟器给出了一条路径，代码阅读器则在 C++ 语法卡住时帮忙。也适合想找可分享、能切换语言的课程链接的老师或学习小组。反过来，已经能熟练写嵌入式 C++、想查高级外设参考资料的人不适合：Tour 加猜谜的节奏会显得多余，实验集也偏基础电路。如果只是想先看看网站再决定买不买板子，直接开[在线指南](https:\u002F\u002Fesp-labs-web.vercel.app)最快。\n\n## 使用条件与边界\n\n本地运行需要 Node 24.14+ 和 pnpm 11（用 `corepack enable` 得到固定版本），代码阅读器还要求两个仓库并排克隆；[项目说明](https:\u002F\u002Fgithub.com\u002Fagharsallah\u002Fesp-labs-web)里有步骤，`FIRMWARE_DIR` 可以指向别处。Node 和 pnpm 版本卡得比较紧，本机工具链偏旧就得先升级才能跑起来。如果只想读内容，用托管站点就完全不需要这些工具链。\n\n两条边界值得注意。代码阅读器只对旁边的固件仓库有效，所以要准备两个仓库而不是一个。其次是没有声明许可证，如果你打算复用课程内容或 fork 成自己的课，这一点会影响你。进度和语言偏好存在浏览器里、不需要账号，所以换设备不会带走你的勾选记录。\n\n## HotRepo 点评\n\nHotRepo 从 2026-10-24 开始记录这个仓库，当时它只有 3 天；2026-10-25 它以 155 个总星标出现在 TypeScript 新项目榜第 21 名。这只是新项目榜上的一个带日期快照，不是总榜排名，也不是单日增长；可比日榜历史不足，暂时无法判断热度能否持续。真正值得打开的理由，是把模拟器和固件阅读器放在了一起。如果你打算拿它当课程用，先确认许可证，以及你板子需要的实验是否在这 32 个课程范围内。",{"slug":19,"name":20},"learning","学习资源",[22,23,24,25,26,27,28,29,30,31,32,33,34,35,36],"education","electronics","embedded","esp32","esp32-s3","i18n","interactive-learning","pinout","react","react-router","rtl","simulator","tanstack-query","typescript","vite",null,"https:\u002F\u002Fesp-labs-web.vercel.app","2026-10-25T03:00:45Z",[],1792912703]