https://github.com/retog/patchboot
Bootstrapp your Secure Scuttlebutt Client
https://github.com/retog/patchboot
patchboot scuttlebutt ssb
Last synced: 5 months ago
JSON representation
Bootstrapp your Secure Scuttlebutt Client
- Host: GitHub
- URL: https://github.com/retog/patchboot
- Owner: retog
- Created: 2020-12-29T19:43:18.000Z (over 5 years ago)
- Default Branch: master
- Last Pushed: 2021-04-27T18:41:27.000Z (about 5 years ago)
- Last Synced: 2025-12-25T08:49:22.275Z (6 months ago)
- Topics: patchboot, scuttlebutt, ssb
- Language: JavaScript
- Homepage: https://retog.github.io/patchboot/
- Size: 1.93 MB
- Stars: 3
- Watchers: 1
- Forks: 1
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# PatchBoot
Bootstrapp your Secure Scuttlebutt Client.
## Functionality
PatchBoot allows executing (small) apps retrieved via ssb. These patchboot apps can access scuttlebut (sbot) as well as a DOM to interact with the user. These allows to enrich your scuttling experience with apps you get from your friends on Scuttlebutt.
## Getting started
PatchBoot is available in different flavours. Choose the PatchBoot flavour that best fits your needs.
### PatchBoot Scuttle Browser
This version can be accessed with a browser that has the Scuttle Shell Browser extension installed. This version is contained in this repository as a large part of its code can also be used in the other flavours.
### PatchBoot Electron
PatchBoot Electron provides a PatchBoot environment as a Desktop Application. This is the easiest option as it doesn't require configuration of the ssb-server or the browser.
on [git ssb](http://localhost:7718/%25kpL5iXptJ9tE4Otr%2FT292O1wXhILwyJ1uL9fEvuzu8o%3D.sha256) and [GitHub](https://github.com/retog/patchboot-electron)
### PatchBoot Web / ssb-patchnoot-ws
The [ssb server](https://github.com/ssbc/ssb-server) plugin `ssb-patchnoot-ws` gives access to PatchBoot via the browser.
on [git ssb](http://localhost:7718/%25i0elaPNUwbdizoEA0Vu882FgBpyopA1zJaf%2FyTImc9k%3D.sha256) and [GitHub](https://github.com/retog/ssb-patchboot-ws)|
## Publishing PatchBoot Apps
The are toe types of PatchBoot Apps, Classic Patchboot Apps that are single javascript-filed stored in a blob or Patchboot Webapps with have an HTML file as entrypoint.
## Classic PatchBoot Apps
Apps are advertised using mesages of the type `patchboot-app` like the followig
```
{
"type": "patchboot-app",
"name": "WomBat Launcher",
"comment": "A friendly new launcher",
"link": "&CKrrSh72rXhgCzeTKekAPf7fiwtmNml/yFjXCe4ovnE=.sha256",
}
```
The link points to the JavaScript comprising the app. The JavaScript code has access to the following variables:
- `sbot`: an [rpc connection](https://ssbc.github.io/scuttlebutt-protocol-guide/#rpc-protocol) to an sbot
- `root`: the root of the shadow DOM
- `pull`: the [pull-stream](https://github.com/pull-stream/pull-stream) function object
## PatchtBoot Webapps
Webapps are advertised as `patchboot-webapp`.
```
{
"type": "patchboot-webapp",
"name": "WomBat Launcher",
"comment": "A friendly new launcher",
"link": "ssb:blob:sha256:&CKrrSh72rXhgCzeTKekAPf7fiwtmNml/yFjXCe4ovnE=",
}
```
The link point to an HTML app that can establish an RPC connection to an `sbot`-instance over window message events. These apps can also be used standalone if the browser is a able to access the URI provided in the link field and has the [Scuttle Shell Browser](https://github.com/retog/scuttle-shell-browser/) extension installed.
The recommended way to develop webapps is by using `ssb-connect.js` provided by [Scuttle Shell Browser - Consumer](https://github.com/retog/scuttle-shell-browser/tree/master/consumer).
### PatchBoot Install
The `patchboot-install` package provides an executable to deploy patchboot-apps. It is typically used in an npm-script as shown in the example app ([git ssb](http://localhost:7718/%25twbtHOe0su5W7DKukx8lI9YCqIhC6HoYbNstHLLjEe4%3D.sha256)|[GitHub](https://github.com/retog/patchboot-example-app)).
PathBoot Install is on [git ssb](http://localhost:7718/%25QiwZCEBr%2BVjz8iAJA1azXykvFHXCB%2FYINbDAoBtOw88%3D.sha256) and [GitHub](https://github.com/retog/patchboot-install)