This is a simple web-app built on top of SSB. For dev documentation visit the Scuttlebutt Treasure Map for Developers
The purpose I had to build it is to learn, and to create a web client that I can eventually host and access from multiple devices.
It uses Next.js and other "modern" web development tools.
If you want to run Perihelion, you will have to clone this repository, install Node.js (tested on Node 14), and then:
npm install
npm run dev
This will run the project in development mode, meaning it will have hot reloading and all the NextJs goodness.
If you want to run in "production" mode, you will have to:
npm install
npm run build
npm start
It's important to know that Perihelion uses ssb-db2
, which means is not compatible with the likes of Patchwork and other similar clients.
Also, it relies on ssb-ebt
for replication. And I haven't managed to get it replicating using the legacy ssb-replicate
yet.
As mentioned in this GitHub issue, there is a workaround to get it working.
Here are the steps after doing npm install
- Install rust following https://www.rust-lang.org/tools/install
- Run
cargo install nj-cli
- Inside the node folder
node_modules/ssb-validate2-rsjs-node
, runnpm run build
- Then you will be able to run Perihelion without issues
A docker-compose.yml
file is provided.
Note that this setup uses Caddy with only local certs so you'll have to bypass the insecure domain cert locally. Actual certs should be set up for a public instance.
- Install packages:
docker-compose run --rm dev npm install
- Run app:
docker-compose up dev -d
Or remove-d
for console output. - Access the app at
https://perihelion.lvh.me/
- Install packages:
docker-compose run --rm app npm install
- Build production site:
docker-compose run --rm app npm run build
- Run app:
docker-compose up app -d
- Access the app at
https://perihelion.lvh.me/
You may find other SSB clients/applications preferable to, or complementary to, Perihelion. As of 2022-10-27, the following are mutually-compatible, actively used and maintained FLOSS (Free/libre and open-source software) SSB applications, of various architectures:
- Manyverse (Android, iOS)
- Patchfox (Firefox/WebExtension)
- Patchwork (Windows, macOS, Linux)
- Planetary.social (iOS)
- Patchfoo