7e40cf4bfb2a6faf18b343346621f23ce17a10bb
Every outbound transfer start and finish can arrive on a hot path while a peer is serving many file chunks. The Tauri event handler used to rebuild and emit the full games list for each edge, cloning all games and probing per-game server script files repeatedly during an active serve. Batch outbound-transfer count changes behind a short scheduled refresh. The peer still records exact counts in shared state, and the delayed refresh reads that state once per burst. A generation counter keeps changes that arrive while an emit is already scheduled from being lost; they trigger one follow-up emit with the latest counts. Test Plan: - just test - just clippy - git diff --check Refs: Claude review finding #2
lanspread
Description
Peer-to-peer game library sharing for LAN parties.
- Peers let users browse and download games from each other
- they discover each other on the local network via mDNS
- they exchange library metadata over QUIC
Ships as a Tauri desktop app.
Development
Prerequisites
# install Tauri CLI
cargo install tauri-cli
# install Deno with a package manager or from https://deno.land/
Build or Run
# build
just build
# run
just run
# test
just test
Scripted peer harness
crates/lanspread-peer-cli runs the peer runtime without the GUI and speaks
JSONL on stdin/stdout. It is intended for automated multi-peer smoke tests.
just peer-cli-build
just peer-cli-image
just peer-cli-run alpha
Description
Languages
Rust
64.6%
TypeScript
12.9%
Python
8.9%
CSS
7.6%
JavaScript
4.9%
Other
1%