No description
- JavaScript 50.2%
- Rust 19.4%
- Shell 13.3%
- HTML 9.3%
- CSS 7.2%
- Other 0.6%
|
|
||
|---|---|---|
| crates | ||
| schemas | ||
| scripts | ||
| .gitignore | ||
| buildenv.sh | ||
| Cargo.lock | ||
| Cargo.toml | ||
| CLAUDE.md | ||
| INSTRUCTIONS_TECH.md | ||
| Makefile | ||
| README.md | ||
| SPECIFICATIONS.md | ||
Hero Whiteboard
A collaborative visual whiteboard — brainstorm, diagram, plan, present, and document decisions on an infinite canvas with real-time and async collaboration.
Architecture
Hero Whiteboard follows the Hero three-crate model:
| Crate | Purpose |
|---|---|
hero_whiteboard_server |
Business logic, SQLite storage, OpenRPC API (Unix socket) |
hero_whiteboard_sdk |
JSON-RPC client for the server over Unix socket |
hero_whiteboard_web |
End-user whiteboard UI (Axum + Konva.js canvas) |
hero_whiteboard_ui |
Admin dashboard (Bootstrap 5.3.3 + Askama) |
hero_whiteboard_examples |
SDK usage examples |
Sockets
| Service | Path |
|---|---|
| Server | ~/hero/var/sockets/hero_whiteboard_server.sock |
| Web | ~/hero/var/sockets/hero_whiteboard_web.sock |
| UI | ~/hero/var/sockets/hero_whiteboard_ui.sock |
Quick Start
make build # Build all crates
make install # Install binaries to ~/hero/bin/
make run # Start server + web + UI
make rundev # Start + TCP proxies (web=8880, ui=8881)
make status # Check service status
make logs # View server logs
make stop # Stop all services
Development
For browser access during development, make rundev starts socat TCP proxies:
- Whiteboard: http://localhost:8880
- Admin UI: http://localhost:8881
Documentation
- SPECIFICATIONS.md — Full functional specification
- INSTRUCTIONS_TECH.md — Technical implementation instructions
- CLAUDE.md — Claude Code agent instructions