ESP32-S3 Bench Guide
ESP32-S3 N16R8 bench guide: live pinout, lessons, simulators and the bench log.
翻译准备中
尚未检测到更新。GitHub 发布版本后会显示在这里。
个人 GitHub 账号下公开仓库的所有者可以登录并验证所有权,自行管理介绍,无需管理员批准。
登录并生成验证文件,在 30 分钟内将其提交到此仓库的默认分支。其他分支或分叉仓库中的文件无效。然后在下方检查文件,即可无需管理员批准直接管理项目。请保留文件以维持管理权限。
如需登录,将前往登录页面。登录后请回到此处,再次点击所选的验证按钮。
在项目文件夹中运行 /nomorevibe verify,即可验证所有权并自行管理介绍。
一分钟完成验证Efficient Japanese vocabulary learning tool
翻译准备中
取自仓库 README
正在加载完整 README。 以下为已保存的摘录。
A Japanese vocabulary SRS built around the kanji you already know. Gokan is a spaced repetition system for Japanese vocabulary. It knows which kanji you have studied, and leads with words built from those kanji. 語感 (gokan) means "sense of language": the feel for a word that comes from meeting it enough times, in enough places, that it stops needing translation. Why start from the kanji you know Memorising the shape of a word is a real part of learning it, and Gokan does plenty of that. Nobody holds every kanji of every word in their head, and pretending otherwise would be silly.查看完整 README ↗
A Japanese vocabulary SRS built around the kanji you already know.
Use the app · Browse the dictionary · Open dataset
Gokan is a spaced repetition system for Japanese vocabulary. It knows which kanji you have studied, and leads with words built from those kanji.
語感 (gokan) means "sense of language": the feel for a word that comes from meeting it enough times, in enough places, that it stops needing translation.
Memorising the shape of a word is a real part of learning it, and Gokan does plenty of that. Nobody holds every kanji of every word in their head, and pretending otherwise would be silly.
But when a word is made of kanji you have already studied, four things happen at once.
It gives the word something to hang on. Memory works by connection: a new thing sticks when it attaches to something already there. This is the idea the whole app is built on. It is the same reason a word you once heard in a conversation, or read in a sentence that stuck with you, is the one you never have to look up again. Known kanji are the cheapest, most reliable hook available, because you already carry them.
It turns memorisation into understanding. If you know what each kanji means, a compound stops being an arbitrary string and becomes a small story you can tell yourself. That story is what you actually remember.
It keeps two-kanji words apart. There are a great many of them, and they are the point where shape alone quietly stops working. Words start blurring into each other, and you find yourself swapping one for another with no idea why. Knowing the components is what pulls them back apart.
And it works in reverse. Meeting a kanji inside real words is what turns it from a character you once drilled into one you can read.
None of this is a wall. You are not blocked from words whose kanji you have not reached: working through KKLC toward N5, you will run straight into basic, high-frequency words written with kanji that come much later, and learning those from scratch is completely fine. They teach you the kanji from the other direction. The kanji filter is the default, not a rule, and there is a setting to turn it off.
Each word carries two independent schedules: type the reading in hiragana, and recall the meaning from a real sentence. They are staggered so that answering one does not hand you the other.
Scheduling reacts to how you answer, not just whether you were right. A slow correct answer earns a shorter interval than a fast one, and per-word difficulty adjusts as you go. The target is 75% recall, which is roughly where the research puts the best trade-off between remembering things long-term and reviewing more than you need to.
Get one wrong and it comes back in the same session, but the retry is practice only. It clears the flag without undoing the scheduling penalty, so a word you fumbled does not get to look mastered because you got it on the second try.
755 grammar points from N5 to N1, on their own SRS schedule, drilled as fill-in-the-blank against real sentences rather than as flashcards to recognise.
What is blanked is the grammar pattern itself, located in the sentence when the dataset was built. Vocabulary in the same sentence gets blanked too, as reinforcement, but the pattern is what decides your score: missing a word you happen not to know cannot mark a grammar point wrong when you clearly knew the grammar. It scales the reward instead. Words you do get right feed credit back into their own vocabulary schedules, so grammar practice doubles as vocabulary review.
Most learners keep a notebook, or a notes app, or a pile of screenshots: words picked up from a game, a stream, a conversation, waiting to be looked up properly and then usually not looked up at all.
Search any word and add it straight to your learning list. That list is the queue, so a word you caught in the wild on Tuesday is simply part of Wednesday's reviews. No transcription step, no second system to maintain, no notebook that slowly becomes a graveyard.
Every grammar point in the dataset, grouped into families of near-synonyms rather than by level, because the question that actually comes up is "which of these do I want", not "what is on the N3 list".
でも, しかし and けれども sit next to each other where you can compare them. Search covers the family name too, so looking for "contradiction" finds the whole cluster even though no individual point contains that word.
Knowledge held over time, JLPT coverage per level, upcoming review load, and daily activity. The knowledge curve is the one worth watching: it shows whether you are accumulating or treading water, which raw review counts hide completely.
gokan-srs.com/dictionary is a free Japanese dictionary built from the same data. No account, no cookies, no signup wall, and it works with JavaScript turned off.
35,814 words, 2,300 kanji, and 755 grammar points, each with its own page.
Every word inside every example sentence links to its own entry, so following a sentence you half understand until it comes apart is the natural thing to do rather than a dead end.
gokan-dataset is the data both of those read, published as flat static JSON under CC BY-SA 4.0.
JMdict knows what a word means but not how common it is. JPDB knows frequency but not which kanji a learner meets first. Tatoeba has hundreds of thousands of sentences with no link to the words inside them. The dataset does that joining once, at build time, so nobody else has to. If you are building something Japanese-shaped and want vocabulary already connected to kanji, frequency, JLPT level and tokenised example sentences, take it.
git clone --recurse-submodules https://github.com/gokan-dev/gokan-srs.git
cd gokan-srs
bun install
bun run dev
The dataset lives in its own repository and the build reads from it, so if you already cloned without submodules, run git submodule update --init --recursive first.
bun run dev # the SRS app
bun run check # every project check: conventions, lint, typecheck, tests, duplicates, unused code
bun run dictionary:dev # the dictionary
bun run dictionary:build # generate all ~38,900 static pages
Anything else scopes to one workspace with --cwd, for example bun run --cwd apps/gokan-dictionary test. bun install also installs the git hooks (conventions and lint before each commit, bun run check before each push).
apps/
gokan-srs/ React 19 SRS app
gokan-dictionary/ Svelte static site generator, one page per entry
packages/
dataset-schema/ the compiled dataset's types, shared by both apps
docs/ Architecture, design system, roadmap, modification log
No backend. The SRS engine runs entirely in the browser, progress lives in local storage, and Google Drive sync is opt-in and writes a single private file in your own Drive. Hosting is S3 and CloudFront, which is most of why it costs nearly nothing to run and can stay free.
The dataset is not vendored here: apps/gokan-srs/dataset/ is a submodule, and both apps build from that one checkout so they can never ship different versions of the same data.
| Layer | Choice |
|---|---|
| SRS app | React 19, TypeScript, Tailwind CSS v4 |
| Dictionary | Svelte 5, SCSS, build-time prerendering |
| Build | Vite (rolldown), Bun |
| Tests | Vitest |
| Hosting | S3 and CloudFront, provisioned with Terraform |
Project rules (for people and coding agents alike) are in AGENTS.md, architecture in docs/ARCHITECTURE.md, the visual language in docs/DESIGN_SYSTEM.md.
Built on other people's work, all of it free:
Licensing for the compiled data is documented in the dataset repository, since each source carries its own terms.