/comarev-dashboard

A partner management system for a independent social foundation.

Primary LanguageJavaScriptMIT LicenseMIT

Comarev - Front End

tests

All Contributors

This application is a partner management system. Basically, the Comarev admins register the interested companies that want to give a discount on their products/services to the Comarev contributors who are also registered in the system. Then, when the contributor buys something at the company (Comarev partner), they just have to scan a QR Code emitted in our dashboard and the system will return if they are ok with the payment (contribution), or not. If so, the contributor can get a discount.

Please check the WHO_WE_ARE section for more information.

Welcome Contributors!

Please feel free to contribute! While we welcome all contributions to this app, pull-requests that address outstanding Issues and have appropriate test coverage for them will be strongly prioritized.

Please check the Contributing section for more information.

Roadmap

Check our board for more details about what we're building.

  • Comarev dashboard MVP

The core of this system is ready and running on production. But there are lot of improvements we can do and we need your help!

Development

Getting started

First of all, make sure you have your backend running.

Clone the project from Github:

git@github.com:comarev/comarev-dashboard.git
cd comarev-dashboard

Install dependencies:

yarn

Create a .env file by copying the existing one:

cp .env.sample .env

Set the value of REACT_APP_BASE_URL pointing to your backend address and then run:

yarn start

After application boot, you will see the login screen and you can sign in using one of the credentials below:

  email: admin@example.com
  password: 123456

  email: manager@example.com
  password: 123456

  email: regular@example.com
  password: 123456

E2E Tests

Make sure you have your frontend running.

Set the value of baseUrl on cypress.json pointing to your frontend address and then run:

yarn test:e2e

Application Concepts

Users

A user can be an admin, manager, employee or a customer.

  • Admins are the Comarev employees and can control the entire system. They are able to create the other kind of users. To become an admin, the user need the admin attribute true.
  • Managers are the company managers. They can emmit their QR Code and also check if a user is able to get discount. To become a manager, the user needs to be assigned to a company.
  • Employees do the same as managers, but they can't invite other employees or manage the company config.
  • Customers are the Comarev contributors. They are supposed to pay invoices and get discounts. If the user is neither an admin nor a manager, he's a customer.

Companies

A company is a comarev partner. They offer discounts to the Comarev contributors.

Invoices

A invoice is created for a user. When all invoices are paid, the user is able to get a discount. Invoices can only be created and mark as paid by an admin user, but customers can visualize them.

Contributors ✨


Mauricio Lima

💻 📖

Gabriel Belgamo

💻

RenanRambul

💻

JOSE AUGUSTO DE AQUINO

💻

This project follows the all-contributors specification. Contributions of any kind welcome!