No description
- JavaScript 53.4%
- Rust 17.4%
- Shell 11.7%
- HTML 10%
- CSS 6.8%
- Other 0.7%
|
Some checks failed
CI / build (push) Failing after 2s
- Update hero_proc_sdk dependency - Update hero_rpc_derive and hero_rpc_openrpc dependencies - Migrate socket paths from /tmp/hero_proc.sock to /tmp/hero_proc/rpc.sock Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com> |
||
|---|---|---|
| .forgejo/workflows | ||
| crates | ||
| schemas | ||
| scripts | ||
| .gitignore | ||
| buildenv.sh | ||
| Cargo.lock | ||
| Cargo.toml | ||
| 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_ui |
End-user whiteboard UI + admin dashboard (Axum + Konva.js) |
hero_whiteboard_examples |
SDK usage examples and integration tests |
hero_whiteboard |
CLI for registering and managing services via hero_proc |
Sockets
| Service | Path |
|---|---|
| Server | ~/hero/var/sockets/hero_whiteboard_server.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 + UI
make status # Check service status
make logs # View server logs
make logs-ui # View UI logs
make stop # Stop all services
make restart # Restart all services
API
The server exposes a full JSON-RPC 2.0 API over the Unix socket. See the OpenRPC spec for all 45+ methods across these domains:
workspace.*— multi-tenant workspace managementboard.*— board CRUDobject.*— whiteboard objects (sticky notes, shapes, text, etc.)connector.*— arrows and connectors between objectscomment.*— threaded commentsshare.*— share links and tokensgroup.*— groups and permissionsuser.*— user managementrpc.health,rpc.discover— health and OpenRPC discovery
Documentation
- SPECIFICATIONS.md — Full functional specification
- INSTRUCTIONS_TECH.md — Technical implementation instructions