https://github.com/riffcc/ceramic-riff-web
Riff.CC, implemented using ComposeDB and Ceramic.
https://github.com/riffcc/ceramic-riff-web
ceramic composedb creative-commons graphql open-source
Last synced: about 1 month ago
JSON representation
Riff.CC, implemented using ComposeDB and Ceramic.
- Host: GitHub
- URL: https://github.com/riffcc/ceramic-riff-web
- Owner: riffcc
- Created: 2023-01-09T18:10:13.000Z (about 3 years ago)
- Default Branch: main
- Last Pushed: 2024-01-03T17:15:43.000Z (about 2 years ago)
- Last Synced: 2025-10-18T13:46:42.078Z (5 months ago)
- Topics: ceramic, composedb, creative-commons, graphql, open-source
- Language: TypeScript
- Homepage: https://ceramic-riff-web.vercel.app
- Size: 1.26 MB
- Stars: 4
- Watchers: 5
- Forks: 0
- Open Issues: 13
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
[](https://opencollective.com/riffcc)
**NOTE:** This repository is outdated. Please visit [the newer, up-to-date version](https://github.com/riffcc/riff.cc-vue) instead.
# Riff.CC on Ceramic (ComposeDB)
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](https://github.com/riffcc/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](https://riff.cc/riff-docs/).
Funding provided via [OpenCollective](https://opencollective.com/riffcc).
## Getting Started
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.
### Dependencies
You must make sure the `git` command is installed. If not, run the following command as root:
```
# 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](https://github.com/nodesource/distributions#installation-instructions), with $NODE_MAJOR set to 20:
1. Download and import the Nodesource GPG key
```sh
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
```
2. Create deb repository
```sh
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
```
3. Run apt update and install the Node.JS package
```sh
sudo apt-get update
sudo apt-get install nodejs -y
```
4. Install Yarn once Node.JS is installed:
```sh
npm install -g yarn
```
5. Set up and configure [ceramic-node](https://github.com/riffcc/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.
### Installation
1. Clone CeramicRiff's GitHub repository:
```bash
git clone https://github.com/riffcc/ceramic-riff-web.git
```
2. Move into CeramicRiff's directory and set up its installation packages:
```bash
cd ceramic-riff-web
yarn install
```
3. Rename .env.local.example to env.local, and fill in its variables:
```bash
NEXT_PUBLIC_NODE_URL= # If you run an own local node , or an external node :7007>
NEXT_PUBLIC_ADMIN_SERVER= # Run admin server in riffcc/ceramic-node repository via yarn run admin:server
NEXT_PUBLIC_WEBSITE_ID= # Generated in riffcc/ceramic-node repository via yarn run generate:website
NEXT_PUBLIC_IPFS_GATEWAY= # Ex. my-gateway.infura-ipfs.io
```
4. Run [ceramic-node](https://github.com/riffcc/ceramic-node) so CeramicRiff can properly communicate with it.
5. Run the application in development mode (with hot reloading):
```bash
yarn dev
```
## License
Made available under the MIT License.
## Credits
Authored by [@en0c-026](https://github.com/en0c-026), [@Zorlin](https://github.com/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:
* [Money Every 3 Days](http://moneyevery3days.com/)