Riff.CC on Ceramic (also referred to as CeramicRiff) is a proof-of-concept version of Riff.CC, implemented using Ceramic and ComposeDB. It is one of the two current platforms for hosting Riff.CC instances, the other being Orbiter. This repository contains instructions on how to set up and install a Riff.CC instance through CeramicRiff, as well as the necessary code to do so. For more information about CeramicRiff, as well as the Riff.CC project itself, see the project's main page.
CeramicRiff 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.
You must make sure the git
command is already installed. If not, you need to install it:
sudo apt install git
Additionally, CeramicRiff utilizes Node.JS and yarn to set up and install the platform, and as such it's required to install them as well. We suggest using the NodeSource installation guide, with $NODE_MAJOR set to 20:
- 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
- Create deb repository
NODE_MAJOR=20
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
- Run apt update and install the Node.JS package
sudo apt-get update
sudo apt-get install nodejs -y
- Install Yarn once Node.JS is installed:
sudo npm install -g yarn
- Set up and configure ceramic-node. CeramicRiff requires it to be configured and running in order to function - Ceramic-Node's location is not important, as it runs as a service on the local machine, which CeramicRiff communicates with.
- Clone CeramicRiff's GitHub repository:
git clone https://github.com/riffcc/riff.cc-vue.git
- Move into CeramicRiff's directory and set up its installation packages:
cd riff.cc-vue
yarn install
- Rename .env.local.example to env.local, and fill in its variables. We strongly recommend using our node and the new admin server:
VITE_NODE_URL
=https://ftwc.xyz/ceramicVITE_ADMIN_SERVER
=https://ftwc.xyz/api/admin
VITE_NODE_URL=<YOUR_NODE_URL> # If you run a own local node <http://localhost:7007> , or an external node <http://<SERVER_PUBLIC_IP>:7007>
VITE_ADMIN_SERVER=<YOUR_ADMIN_SERVER_URL> # Run admin server in riffcc/eramic-node repository via yarn run admin:server
VITE_WEBSITE_ID=<TEST_WEBSITE_ID> # Generated in riffcc/eramic-node repository via yarn run generate:website
-
Run ceramic-node so CeramicRiff can properly communicate with it.
-
Run the application in development mode (with hot reloading):
yarn dev
Made available under the MIT License.
Authored by @en0c-026, @Zorlin
Thank you to our sponsors, who have generously provided funding for the development of the Riff.CC Project: