robin_net:start
This is an old revision of the document!
Table of Contents
RobinNet
RobinNet is a lightweight store-and-forward messaging network designed for:
- local networks
- mesh networks
- low-bandwidth packet radio links
- emergency communications
- preparedness infrastructure
Each node stores messages locally and synchronizes them with peer nodes.
Design Philosophy
RobinNet was designed with these principles:
- low bandwidth friendly
- resilient networking
- offline capable
- store-and-forward messaging
- simple architecture
- easy auditing
Nodes can run on:
- Raspberry Pi
- Linux servers
- home lab machines
- field deployments
System Architecture
A RobinNet node contains:
- SQLite message database
- HTTP API server
- synchronization engine
- optional background daemon
Nodes exchange messages using a lightweight HTTP protocol.
Core Components
| File | Description |
|---|---|
| db.py | SQLite database layer |
| models.py | Message structures and hashing |
| cli.py | Command line operator interface |
| api.py | HTTP API server |
| sync.py | Peer synchronization engine |
| main.py | Node launcher |
| daemon.py | Background maintenance worker |
Documentation
| Section | Description |
|---|---|
| install | Installing and deploying RobinNet |
| testing | Local testing workflows |
| cli | Command line interface |
| api | API documentation |
| db | Database layer |
| models | Message models |
| sync | Synchronization engine |
Example Workflow
Typical operator workflow:
- initialize node
- add peers
- test peer connectivity
- post bulletins
- synchronize nodes
- inspect messages and trace history
Example:
python -m robinnet.cli --db ./data/alpha.db init-node --name alpha --operator "Rich" python -m robinnet.cli --db ./data/alpha.db add-peer --name bravo --url http://127.0.0.1:8082 python -m robinnet.cli --db ./data/alpha.db peer-test --peer-id 1 python -m robinnet.cli --db ./data/alpha.db post-bulletin --title "Test" --body "Hello" python -m robinnet.cli --db ./data/alpha.db sync-all
Planned Features
Future development includes:
- Cardinal graphical interface
- packet radio transport layer
- mesh networking integration
- moderation tools
- node discovery
- optional encryption
Cardinal
Cardinal will be the future graphical interface for RobinNet.
Goals:
- friendly node management
- peer monitoring
- message browsing
- sync visualization
- network status
Cardinal will communicate with RobinNet using the API.
robin_net/start.1773244291.txt.gz ยท Last modified: by freedomotter
