/qrev

🔥 🔥 🔥 QRev is an Open Source AI First alternative to Salesforce. It's what Salesforce would be if it was built today, starting with AI.

Primary LanguageJavaScriptGNU Affero General Public License v3.0AGPL-3.0

Welcome to QRev 👋

🤖 AI Agents to scale your Sales org infinitely; Open Source alternative to Salesforce 🤖

Architecture

Node version English

If Salesforce were built today, starting with AI, it would be built with AI Agents at the foundation.

But Salesforce is too expensive, and hard to customise.

NOTE: QRev is under active development, and we are releasing an early version so that a strong Agentic foundation can be set with ideas from contributors like you. This repository will be updated regularly with changes and new releases.

Digital Workers for each Sales Role or Superagent (a.k.a Qai )? 🤔

Sales orgs have people like SDR's, BDR's, Account Execs, Head of Sales etc.

The question we ask ourselves constantly is whether we should mimic the real world and have Digital Worker equivalents within the app ? or Have one superagent that co-ordinates with other software agents internally.

We are starting with the latter approach. We think based on the users role and role based permissions, Qai will be able to do different things. It will also simplify the requirement of remembering names of Digial workers like Qai just for the sake of seeming cool. But internally, there will be an army of digial workers / agents doing their job anyways.

Open to ideas.

🚀 Tech Stack

Prerequisites 👇

Before you get started, please make sure you have the following installed:

Getting started 🚀

There's 3 main components to running the code

Getting Started with the QRev App Server

To get a local copy up and running, please follow these simple steps.

Prerequisites

Here is what you need to be able to run QRev.

  • Node.js (Version: >=18.18.0)

  • Mongo (Version: >=5.x)

    If you want to enable any of the available integrations, you will have to obtain credentials for each one. More details on this can be found below under the integrations section.

Setup

  1. Clone the GitHub repo

    git clone https://github.com/qrev-ai/qrev.git
  2. Go to the server folder

    cd server
  3. Setup Node If your Node version does not meet the project's requirements as instructed by the docs, "nvm" (Node Version Manager) allows using Node at the version required by the project:

    nvm install v18.18.0
    nvm use 18.18.0

    You can install nvm from here.

  4. Install the packages with npm

    npm ci

    npm ci makes sure that the versions of the packages installed will be from package-lock.json, this will make sure the right version of packages are installed.

  5. Set up your .env file

    • Duplicate .env.example to .env
    • Use openssl rand -base64 32 to generate a key and add this under REFRESH_TOKEN_JWT_SECRET in the .env file.
    • Use openssl rand -base64 32 to generate a key and add this under ACCESS_TOKEN_JWT_SECRET in the .env file.
    • Use openssl rand -base64 32 to generate a key and add this under AI_BOT_SERVER_TOKEN in the .env file and make sure the AI server uses the same token as well.
  6. If you haven't already configured MongoDB and got the MONGO_DB_URL, then follow the steps here to install Mongo DB locally.

  7. Run the below command to start the server:

    npm start

Getting Started with the QRev App Client

Make sure you have the right Environment variables

These are referenced in the Client Code

Setup

  1. Go to the client folder
cd client 
  1. Install libraries
npm install
  1. Set up the .env file via following commands

    • Copy the example environment file:

      cp .env.example .env
      
    • Add your Google client id for the variable REACT_APP_GOOGLE_CLIENT_ID

    • Add your app backend server host url for REACT_APP_BASE_API_URL

    • Add your app backend server host url for REACT_APP_BACKEND_HOST_URL

    Note: Please make sure there is no / at the end of the URL environment values.

  2. To prevent any formatting issues in the code files, run the following

git config --global core.autocrlf true
  1. Run the client
npm start  

Getting Started with the QRev AI Code

Please refer the Server README

Integrations

QRev supports a few Integrations, which will expand over time

Please refer the Server README

Contributors