riffcc / orbiter

Riff.CC, implemented using IPFS + OrbitDB + Constellation
http://orbit.riff.cc/
GNU Affero General Public License v3.0
2 stars 0 forks source link

Contributors Orbiter installable app

Riff.CC "Orbiter"

Orbiter is the proof-of-concept version of Riff.CC, implemented using OrbitDB, Constellation, IPFS and other tools. This repository contains instructions on how to set up and install a Riff.CC instance through Orbiter, as well as the necessary code to do so. For more information about Orbiter as well as the Riff.CC project itself, see the project's main page.

Funding provided via OpenCollective.

Getting started

Orbiter will work on any standard Linux distribution where standard utilities like a webserver and Node.JS are available, but our instructions specifically cover the latest LTS releases of Ubuntu and Debian only. Ask us (or submit a PR) if you want any others to be added.

Dependencies

Before installing Orbiter, you must install the following dependencies:

sudo apt install libnss3-dev libgtk-3-0 libgbm1 libasound2 libatk1.0-0 node-pre-gyp git curl

Additionally, Orbiter utilizes Node.JS and pnpm to set up and install the platform, and as such it's required to install them as well.

Base: Node.JS

Required whether you use pnpm or yarn. We suggest using the NodeSource installation guide, with $NODE_MAJOR set to 22:

  1. Download and import the Nodesource GPG key
sudo apt-get update
sudo apt-get install -y ca-certificates curl gnupg
sudo mkdir -p /etc/apt/keyrings
curl -fsSL https://deb.nodesource.com/gpgkey/nodesource-repo.gpg.key | sudo gpg --dearmor -o /etc/apt/keyrings/nodesource.gpg
  1. Create deb repository
NODE_MAJOR=22
echo "deb [signed-by=/etc/apt/keyrings/nodesource.gpg] https://deb.nodesource.com/node_$NODE_MAJOR.x nodistro main" | sudo tee /etc/apt/sources.list.d/nodesource.list
  1. Run apt update and install the Node.JS package
sudo apt-get update
sudo apt-get install nodejs -y
  1. Download the official pnpm installation script:
curl -fsSL https://get.pnpm.io/install.sh | sh -
  1. Source your .bashrc file so your system recognizes pnpm's path properly:
source ~/.bashrc

Installation

  1. Clone Orbiter's GitHub repository:

    git clone https://github.com/riffcc/orbiter.git
  2. Move into Orbiter's directory and set up its installation dependencies:

    cd orbiter
    pnpm install
  3. Run the application in development mode (with hot reloading):

    pnpm watch:web
  4. Visit the application in your browser, generate a moderation database, copy the parameters the application gives you, and copy them to ./.env.local

  5. Stop and re-run the application to apply the new moderation database.

Deploying to production

Compile and minify the application:

pnpm build

Then deploy the bundle of HTML/CSS/JS that is produced.

Customize configuration

See Configuration Reference.

Credits

Authored by @julienmalard, @Zorlin, and the Riff.CC Project.

Sponsors

Thank you to our sponsors, who have generously provided funding for the development of the Riff.CC Project: