neuron-explorer
Qwen3.5‑4B 전용 조향형 뉴런 탐색기, 모든 MLP 뉴런을 밀어 결과를 보관·탐색
WebRTC·BroadcastChannel·직접 릴레이를 이용해 존재감·멀티플레이어 커서·공유 상태·인식 기능을 제공합니다
Presence, multiplayer cursors, shared state, and awareness over WebRTC, BroadcastChannel, or your own relay. First-class React, Vue, Svelte, Solid, and Angular bindings.
개발 도구TypeScript · JavaScriptGitHub @erayates온라인운영자 미확인
써 보셨어요? 한 번만 눌러 주세요. 로그인은 필요 없어요.
Roomful is an open-source, zero-backend, framework-agnostic SDK that gives frontend developers the primitives to build real-time collaborative experiences — without servers, API keys, or usage bills.
저장소 README에서 가져옴
README 전체를 불러오는 중입니다. 아래는 저장된 발췌입니다.
Add live cursors, presence and shared state to any web app, in any framework.
Roomful is an open-source TypeScript SDK for multiplayer collaboration. It gives you the building blocks (rooms, presence, cursors, shared state, events) so you don't have to build realtime infrastructure yourself.README 전문 보기 ↗Add live cursors, presence and shared state to any web app, in any framework.
Docs · Live demo · Storybook · npm
Roomful is an open-source TypeScript SDK for multiplayer collaboration. It gives you the building blocks (rooms, presence, cursors, shared state, events) so you don't have to build realtime infrastructure yourself.
npm install @roomful/core @roomful/react
import { RoomfulProvider, usePresence, useCursors, useSharedState } from '@roomful/react';
export function App() {
return (
<RoomfulProvider roomId="board-42" presence={{ name: 'Alice', color: '#4F46E5' }}>
<Board />
</RoomfulProvider>
);
}
function Board() {
const { others } = usePresence();
const { ref, cursors } = useCursors();
const [votes, setVotes] = useSharedState('votes', { initialValue: { yes: 0, no: 0 } });
return (
<div ref={ref}>
<p>{others.length} people here</p>
<button onClick={() => setVotes((v) => ({ ...v, yes: v.yes + 1 }))}>Yes ({votes.yes})</button>
</div>
);
}
Not using React? The core works on its own:
import { createRoom } from '@roomful/core';
const room = createRoom('board-42', { transport: 'auto', presence: { name: 'Alice' } });
await room.connect();
room.usePresence().subscribe((peers) => console.log(`${peers.length} peers online`));
Open the same page in two tabs to see it work. For rooms across machines, point the room at a relay (see Self-hosting).
Core collaboration
Rooms and peer lifecycle, presence, live cursors, shared state (lww, crdt, custom), awareness (typing, focus, selection) and events.
Collaboration UI Viewport follow mode, distributed locks, laser pointer, anchored comments, undo/redo with a shared timeline, and a prebuilt cursor and presence UI kit.
Transports and scaling
auto, broadcast, webrtc, websocket (with polling fallback) and opt-in webtransport over HTTP/3. Self-hosted relay with JWT auth and Redis coordination for multiple instances.
Developer experience Devtools inspector, typed error codes with remediation docs, session recording and replay, and runnable examples (canvas, editor, dashboard, multiplayer game).
| Package | Purpose |
|---|---|
@roomful/core | Rooms, transports and collaboration engines |
@roomful/react | Provider and hooks |
@roomful/vue | Plugin and composables |
@roomful/svelte | Stores and actions |
@roomful/solid | Provider and signal-based hooks |
@roomful/angular | provideRoomful and signal injectables |
@roomful/next | Server-side relay auth tokens for Next.js |
@roomful/cursors | Prebuilt collaboration UI components |
@roomful/relay | Self-hosted relay server (CLI and Docker image) |
@roomful/devtools | Debugging and diagnostics |
Dart and Flutter SDKs are available as alpha releases on pub.dev.
npm install -g @roomful/relay
roomful-relay --port 8080
Or with Docker:
docker run --rm -p 8787:8787 -e HOST=0.0.0.0 erayatesdev/roomful:latest
Set ROOMFUL_REDIS_URL to run several relay instances behind a load balancer. See the self-hosting guide for auth, Docker Compose and production settings.
Bug reports, ideas and pull requests are welcome. Start with CONTRIBUTING.md, which also covers the release process; local setup and tests are in LOCAL_DEV_GUIDE.md.
MIT. See LICENSE.