neuron-explorer
Qwen3.5‑4B 전용 조향형 뉴런 탐색기, 모든 MLP 뉴런을 밀어 결과를 보관·탐색
손 추적 랜드마크를 깔끔하고 디바운스된 제스처 이벤트(핀치·포즈·동작)로 변환합니다. 의존성·브라우저 API 없이, 제스처를 데이터로 선언합니다
Turns hand-tracking landmarks into clean, debounced gesture events: pinches, poses and movements. No dependencies, no browser APIs, gestures declared as data.
개발 도구TypeScript · HTMLGitHub @burakTanBilgi온라인운영자 미확인
써 보셨어요? 한 번만 눌러 주세요. 로그인은 필요 없어요.
아직 감지된 업데이트가 없습니다. GitHub 릴리스가 나오면 여기에 보입니다.
개인 계정의 공개 저장소 소유자는 GitHub로 로그인해 운영자를 확인하고 소개를 직접 관리할 수 있습니다. 관리자 승인은 필요하지 않습니다.
로그인한 뒤 확인 파일을 만들어 이 저장소의 기본 브랜치에 30분 안에 커밋해 주세요. 다른 브랜치나 포크의 파일은 인정하지 않습니다. 파일을 올린 뒤 아래에서 확인하면 관리자 승인 없이 관리할 수 있습니다. 자격을 유지하려면 파일을 남겨 두세요.
로그인이 필요하면 로그인 화면으로 이동합니다. 로그인 후 이곳으로 돌아와 원하는 확인 버튼을 다시 눌러 주세요.
프로젝트 폴더에서 /nomorevibe verify를 실행하면 소유권을 확인하고 소개를 직접 관리할 수 있습니다.
1분 만에 확인하기README 전체를 불러오는 중입니다. 아래는 저장된 발췌입니다.
Hand-tracking landmarks in, clean gesture events out — plus optional bricks that
build on it.
Try it: gesturecore.vercel.app with your camera, or
the demo with recorded hands. Nothing leaves your
browser.
This repository is a small family of packages. The core stands alone; every other
package is a brick: optional, independent, and something the core never knows about.
Planned bricks: visuals that react to hands and faces.
Full documentation: packages/core.
Full documentation: packages/sound.
Full documentation: packages/head.
A tuning workbench for all of it: live camera,README 전문 보기 ↗Hand-tracking landmarks in, clean gesture events out — plus optional bricks that build on it.
Try it: gesturecore.vercel.app with your camera, or the demo with recorded hands. Nothing leaves your browser.
This repository is a small family of packages. The core stands alone; every other package is a brick: optional, independent, and something the core never knows about.
| package | what it does | depends on |
|---|---|---|
gesturecore | pinches, poses and movements from 21 hand landmarks; learning gestures from demonstrations | nothing |
gesturecore-sound | synthesized sound cues for gesture events, and hand-controlled voices such as a theremin | gesturecore types only |
gesturecore-head | a head and face reader: turns, nods, shakes, blinks, winks, raised brows, mouth, smile | gesturecore (its filter and stroke detector) |
gesturecore-chords | chords from two hands: one counts the letter on its fingers, the other says how it is played | gesturecore types only |
Planned bricks: visuals that react to hands and faces.
import { GestureCore } from 'gesturecore';
const core = new GestureCore({ aspect: 640 / 480 });
for (const e of core.update(hands, performance.now())) {
if (e.type === 'pinch:start') console.log(e.hand, 'pinched', e.finger);
}
Full documentation: packages/core.
import { GestureSound, readerFor } from 'gesturecore-sound';
const sound = new GestureSound();
button.onclick = () => sound.start(); // browsers need a user action first
const events = core.update(hands, t);
sound.update(events, readerFor(core));
Full documentation: packages/sound.
import { HeadReader, faceFromMediaPipe } from 'gesturecore-head';
const head = new HeadReader({ aspect: 640 / 480 });
for (const e of head.update(faceFromMediaPipe(faceResult), t)) {
if (e.type === 'motion' && e.name === 'nod') confirm();
}
Full documentation: packages/head.
import { ChordReader, readerFor } from 'gesturecore-chords';
const chords = new ChordReader();
const read = readerFor(core);
for (const e of chords.update(read, t)) {
if (e.type === 'chord:start') sound.holdNotes(e.chord.notes);
if (e.type === 'chord:end') sound.holdNotes([]);
}
One hand counts the letter on its fingers; the other pinches its middle finger for minor. Tilting the note hand sharpens. Every shape is config, so none of that is fixed.
Full documentation: packages/chords.
A tuning workbench for all of it: live camera, every measurement and timer, a slider for every constant, gesture recording by demonstration, test captures, a sound panel and a head panel. It is the reference adapter (camera → MediaPipe → core → bricks).
No camera? Add ?demo to the address and it replays recorded hands through the real
pipeline; ?demo&head adds a
synthetic face that nods, shakes, tilts, blinks and raises its brows.
| Every gesture the core knows, lit while it happens | The hand-driven wave field, as its own panel |
|---|---|
npm install
npm run fetch-model # MediaPipe hand and face models, 7.8 + 3.8 MB, not in git
npm run bench # opens http://127.0.0.1:5173/bench/
Docs in the header opens the manual, which explains the whole system. It is a page of its own rather than a panel, so you can keep it beside the bench instead of in place of it.
Semantic Versioning, recorded in CHANGELOG.md. The
project (bench and site) is tagged vX.Y.Z; each package carries its own version. Hover
the bench's version badge to see them all.
main is where development happens. Every push gets its own preview deployment.deploy is what gesturecore.vercel.app is built from;
it moves forward only when a version is released.The bench's header badge says which one you are looking at: dev on your machine,
preview · <branch> on a preview, the version number on the published site.
npm test # every package's tests, Node only
npm run typecheck # each package, plus the bench
npm run build # dist/ for every package
npm workspaces, no other tooling. The bench and the packages' type checks read each other's source directly, so nothing needs building while you work.
At runtime the packages use none — gestures, head readings and sounds are geometry and synthesis. The bench feeds the core from Google's MediaPipe Hand Landmarker, and the head reader from the MediaPipe Face Landmarker (both Apache-2.0).
The code, tests and documentation were written with Claude Opus 5 through Claude
Code, directed, reviewed and hand-tested by burakTanBilgi;
Claude Haiku 4.5 was briefly active in one session and wrote none of the code.
Commits carry Co-Authored-By trailers naming the model that wrote them.
MIT — see LICENSE.