Table of Contents

Installing RobinNet

RobinNet is a lightweight Python application designed to run on Linux systems.

It is intentionally simple to deploy and can run on:


Requirements

Python 3.10 or newer.

Required Python packages:

Install dependencies:

pip install fastapi uvicorn requests

Project Layout

Example directory layout:

robinnet/
├── robinnet/
│   ├── api.py
│   ├── cli.py
│   ├── daemon.py
│   ├── db.py
│   ├── main.py
│   ├── models.py
│   └── sync.py
│
└── data/

The database files will be created inside the data directory.


Initialize a Node

Before running a node, you must initialize the node identity.

Example:

python -m robinnet.cli \
  --db ./data/node.db \
  init-node \
  --name alpha \
  --operator "Rich"

Optional fields:

python -m robinnet.cli \
  --db ./data/node.db \
  init-node \
  --name alpha \
  --operator "Rich" \
  --callsign N2XYZ \
  --location "Albany NY"

This creates:


Starting the API Server

Run the RobinNet node:

ROBINNET_DB=./data/node.db \
python -m robinnet.main

The API server will start on:

http://localhost:8080

You can verify it using:

curl http://localhost:8080/api/v1/health

Running the Background Worker

The daemon performs:

Start the daemon:

ROBINNET_DB=./data/node.db \
python -m robinnet.daemon

In production deployments, the daemon may run under:


Running Multiple Nodes

You can run multiple RobinNet nodes on the same machine for testing.

Example:

Node A:

ROBINNET_DB=./data/alpha.db \
ROBINNET_PORT=8081 \
python -m robinnet.main

Node B:

ROBINNET_DB=./data/bravo.db \
ROBINNET_PORT=8082 \
python -m robinnet.main

Each node uses its own database.


Next Step

Once a node is installed, see:

testing