/interface

Frontend for the RibonDAO application

Primary LanguageTypeScript


Ribon Logo

Ribon DApp

The decentralized giving protocol on the Web 3.0

GitHub code size in bytes GitHub commit activity GitHub issues Discord Twitter

Ribon is a decentralized donation platform that allows donors to become promoters and, by doing so, encourages others to join them in a global culture of giving. This way it’s possible to increase donations to charities, promote a culture of giving in the world and make people happier. The decentralized platform is governed by the community, and this whitepaper is a reader-friendly description of the Ribon protocol, which is built on Matic/Polygon, a layer 2 in Ethereum.

ribon-dapp-screencap

πŸ“– Prerequisites

In order to run the project from a local environment we need node>=16, npm>=8 installed on our development machines. We also recommend yarn>=1.22 to manage dependencies but is optional. The following steps are using the yarn CLI.

NOTE: You may will need the .env file with some environment variables. You can get it by accessing our Discord Server and requesting it on the #Development channel

πŸ–₯️ Local development

To clone the repo:

git clone git@github.com:ribonapp/app.git

To install the application:

yarn install

Copy the .env.example to a .env file

cp .env.example .env

To start a local copy of the app on port 3000:

yarn start

πŸ§ͺ Test

For running the test suite, use the following command. Since the tests run in watch mode by default, some users may encounter errors about too many files being open. In this case, it may be beneficial to install watchman.

yarn test

You can request a coverage report by running the following command:

yarn testCoverage

🎨 Code linting

To check the code quality, use the following command:

yarn lint

To check the styles quality, use the following command:

yarn lint:css

πŸš€ Production deployment

A production deployment is a complete build of the project, including the build of the static assets.

yarn build

πŸ“™ Storybook

Storybook is being leveraged to mock out visual React components. You can start the Storybook Server on http://localhost:6006 by running the following command:

yarn storybook

storybook-example-screenshot

πŸ’Ύ Back-End environments

In local development the data comes from the development API (hosted on AWS). There are still two another environments:

The staging environment is a production replica, but with a different database. Every time a PR is merged into main this environment is updated with the new code

The production environment is the environment that users are in. Every new merge in main updates this environment

Both environments are hosted on firebase.

🀝 Contributing

We encourage you to contribute! Please check out the Contributing guide for guidelines about how to proceed.

πŸ• Community

Got Questions? Join the conversation in our Discord.
Find RibonDAO updates in our Twitter.