rhizome/README.md

57 lines
1.3 KiB
Markdown
Raw Normal View History

2024-12-22 17:30:41 -06:00
## Setup
2024-12-19 23:16:45 -06:00
2024-12-22 17:32:00 -06:00
- Install nodejs
- Install [nvm](https://nvm.sh)
2024-12-22 17:30:41 -06:00
## Install
```bash
nvm install
npm install
```
## Build
```bash
npx tsc
# npm run build # also works
# npx tsc --watch # is useful during development
```
## Run
To demonstrate the example application, you can open multiple terminals. In each terminal execute something like the following.
export RHIZOME_REQUEST_BIND_PORT=4000
export RHIZOME_PUBLISH_BIND_PORT=4001
export RHIZOME_SEED_PEERS='127.0.0.1:4002, 127.0.0.1:4004'
export RHIZOME_HTTP_API_PORT=3000
export RHIZOME_PEER_ID=peer1
node dist/example-app.js
2024-12-22 17:32:00 -06:00
2024-12-22 17:32:19 -06:00
2024-12-22 17:30:41 -06:00
export RHIZOME_REQUEST_BIND_PORT=4002
export RHIZOME_PUBLISH_BIND_PORT=4003
export RHIZOME_SEED_PEERS='127.0.0.1:4000, 127.0.0.1:4004'
export RHIZOME_PEER_ID=peer2
node dist/example-app.js
2024-12-22 17:32:00 -06:00
2024-12-22 17:32:19 -06:00
2024-12-22 17:30:41 -06:00
export RHIZOME_REQUEST_BIND_PORT=4004
export RHIZOME_PUBLISH_BIND_PORT=4005
export RHIZOME_SEED_PEERS='127.0.0.1:4000, 127.0.0.1:4002'
export RHIZOME_PEER_ID=peer3
node dist/example-app.js
In a separate terminal, you can use `curl` to interact with an instance.
`jq` is helpful for formatting the json responses.
curl -s http://localhost:3000/peers/count | jq
curl -s http://localhost:3000/peers | jq
curl -s http://localhost:3000/deltas/count | jq
curl -s http://localhost:3000/deltas | jq