tre-init

2.0.1 • Public • Published

tre-init

tre-init and other command line utilities for Tre.

Install

npm i -g tre-init

tre-init - Create a new ssb network and an initial message tree

cd myproject
tre-init

This creates the file .trerc and the directory .tre in the current working directory. .trerc serves the same purpose as ~/.ssb/config in traditional ssb setups. Additionally, it contains ssb message keys of some of the branches that were created by tre-init. A new, random network-id was created, port numbers also are random (above 50000 and below 65000)

Data is stored in .tre, it replaces ~/.ssb in traditional ssb setups.

In case they did not exist before, new keypairs were created in .tre/secret and .tre/browser-keys

Run sbot with the local config

tre-bot is a simple wrapper around sbot (scuttlebot). It instructs sbot to use the local config. You can run it from anywhere inside your project tree, it will pick up the closest .trerc file.

tre-bot server

Create a pub

tre-pub-config | ssh myserver.com 'mkdir -p .myappname && cat - > .myappname/config'
# run `ssb_appname=myappname sbot server` on your server
ssh korn 'ssb_appname=myappname sbot getAddress' > .tre/remotes
# edit .tre/remotes so that it looks something like
{
  "myserver": "net:138.231.111.84:42632~shs:6odsaDg5OpsFlfa7LLSLxikxF5ze4DN03bAz6vrz7uMQ="
}

## Crete an invite code

tre-invite > invite.json


This invite code can be pasted into bay-of-plenty. It will instruct the pub to follow the user, the user to follow the pub and you, and give the user a name you can specify in invite.json.

## deploy an application

tre-apps-deploy <source.js>


browserifies source.js, uploads the result as a blob and publishes a message of type `webapp`. If a previous webapp exists and was deployed from a repo with the same `origin  remote and from the same git branch, and by the same author, that pre-existing webapp is updated. (a new revision of that webapp is posted).

Here's an example message piblished by `tre-apps-deploy`

{ "previous": "%GkSmUhYX7jM5rzHobHlUHTzgqc9LKxM8T5eRwuJW624=.sha256", "sequence": 28, "author": "@h8sMNhOo43PP8HX+9B3PCJPchqxhpPXgzwFG7HIaNbc=.ed25519", "timestamp": 1547036143789, "hash": "sha256", "content": { "type": "webapp", "name": "tre-init", "description": "Initialize and test a new ssb network", "keywords": [ "ssb", "tre" ], "config": { "tre": { "branches": { "root": "%eMe2hfQ+gI4NKQJzoycSQmefvSLKkwmdXBGj6JRQHwM=.sha256", "about": "%LQu4ZrTcuS2JhiYGAwk1Lg+Wee5M7OH74XnoSVZ1TdQ=.sha256", "machines": "%IPYCOlf24z5BeN9BSGPZfWpDIKptDbeYDnEryKldxew=.sha256", "prototypes": "%38ZbMKMoC4oVXeTZ+bx3objqO8SL3ZYXz6wLBprnmd8=.sha256", "webapps": "%lkexgs1dnCCvkOjbRyJAUnWwbk1igt4DqOhBe9U3klY=.sha256", "trash": "%152k3CQRaeK7K+hZy41QCo8aRZjaUg6SyfgG8FeGeLo=.sha256" } } }, "codeBlob": "&IBbpG0szrPmtzbPwXKN0ZijQ9KeIJpzh0JYnIrZx6SE=.sha256", "lockBlob": "&iwEhkt7JCD9tRnFzkAgRvgdeARj450Db8whC2QMbhqU=.sha256", "commit": "v1.6.0-6-g01484fd", "repository": "git@github.com:regular/tre-init.git", "repositoryBranch": "master", "revisionBranch": "%GkSmUhYX7jM5rzHobHlUHTzgqc9LKxM8T5eRwuJW624=.sha256", "revisionRoot": "%39L6vcMxCbcDrRUJyUWSJd2oJ5mA55aG0ecNNijlSaw=.sha256", "change-log": [ "01484fd5aa5c0376e02df540dbee7d63a7239992 Add tre-apps-deploy to Readme" ] }, "signature": "rtkZoJkNRDoWUi39gU+LMmVfkOODLdLM/B7sSnbpXNG02/H21DhNazmEmK5ZbUJrEw5R6HgBJLaSY0G+shbUCw==.sig.ed25519" }

---

Licsense: AGPLv3 - Copyright 2019 Jan Boelsche

Readme

Keywords

Package Sidebar

Install

npm i tre-init

Weekly Downloads

1

Version

2.0.1

License

AGPL-3.0-or-later

Unpacked Size

45.3 kB

Total Files

21

Last publish

Collaborators

  • regular