{"id":10609794,"url":"https://github.com/qrev-ai/qrev","last_synced_at":"2025-09-12T09:30:56.446Z","repository":{"id":237878379,"uuid":"787757021","full_name":"qrev-ai/qrev","owner":"qrev-ai","description":"🔥 🔥 🔥 QRev is an Open Source AI First alternative to Salesforce. It's what Salesforce would be if it was built today, starting with AI. ","archived":false,"fork":false,"pushed_at":"2025-07-16T05:57:15.000Z","size":3349,"stargazers_count":257,"open_issues_count":12,"forks_count":39,"subscribers_count":8,"default_branch":"main","last_synced_at":"2025-09-03T01:54:59.325Z","etag":null,"topics":["agents","ai","salesforce","salesforce-developers"],"latest_commit_sha":null,"homepage":"https://qrev.ai","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"agpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/qrev-ai.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":"SECURITY.md","support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2024-04-17T06:02:39.000Z","updated_at":"2025-08-29T08:08:05.000Z","dependencies_parsed_at":"2024-06-12T21:22:57.982Z","dependency_job_id":"052abb5a-40e7-4944-8c1e-adadf8b46201","html_url":"https://github.com/qrev-ai/qrev","commit_stats":null,"previous_names":["qrev-ai/qrev"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/qrev-ai/qrev","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/qrev-ai%2Fqrev","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/qrev-ai%2Fqrev/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/qrev-ai%2Fqrev/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/qrev-ai%2Fqrev/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/qrev-ai","download_url":"https://codeload.github.com/qrev-ai/qrev/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/qrev-ai%2Fqrev/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":274788666,"owners_count":25349963,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-09-12T02:00:09.324Z","response_time":60,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["agents","ai","salesforce","salesforce-developers"],"created_at":"2024-06-02T09:16:27.980Z","updated_at":"2025-09-12T09:30:55.839Z","avatar_url":"https://github.com/qrev-ai.png","language":"JavaScript","funding_links":[],"categories":["JavaScript"],"sub_categories":[],"readme":"\u003ch1 align=\"center\"\u003e Welcome to QRev 👋\u003c/h1\u003e \n\n\u003cp align=\"center\"\u003e\n  \u003cem\u003e🤖 AI Agents to scale your Sales org infinitely; Open Source alternative to Salesforce 🤖   \u003c/em\u003e\n\u003c/p\u003e\n\n\u003ch3 align=\"center\"\u003e\n\t\u003ca href=\"https://qrev.ai?utm_medium=community\u0026utm_source=github\u0026utm_campaign=qrev%20repo\"\u003eWebsite\u003c/a\u003e\n\t\u003cspan\u003e | \u003c/span\u003e\n\t\u003ca href=\"https://join.slack.com/t/qrev/shared_invite/zt-2gsc6omvb-L5bLaBubluDEdK5ZB133dg\"\u003eCommunity Slack\u003c/a\u003e\n\u003c/h3\u003e\n\n\u003cdiv style=\"text-align: center;\"\u003e\n  \u003cimg\n    width=\"1028\"  \n\tstyle=\"display: block; margin-left: auto; margin-right: auto;\"\n    class=\"block dark:hidden\"\n    src=\"/images/Qai-Structure.png\"\n    alt=\"Architecture\"\n  /\u003e\n\u003c/div\u003e\n\n\u003cp align=\"center\"\u003e\n    \u003cimg alt=\"Node version\" src=\"https://img.shields.io/static/v1?label=node\u0026message=%20%3E=18%2E18\u0026logo=node.js\u0026color=2334D058\" /\u003e\n      \u003cimg src=\"https://img.shields.io/badge/lang-English-blue.svg\" alt=\"English\"\u003e\n\u003c/p\u003e\n\nIf Salesforce were built today, starting with AI, it would be built with AI Agents at the foundation. \n\nBut Salesforce is too expensive, and hard to customise. \n\n\u003e 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.\n\n## Digital Workers for each Sales Role or Superagent (a.k.a Qai )? 🤔\n\nSales orgs have people like SDR's, BDR's, Account Execs, Head of Sales etc. \n\nThe question we ask ourselves constantly is whether we should mimic the real world and have Digital Worker equivalents \nwithin the app ? or Have one superagent that co-ordinates with other software agents internally. \n\nWe are starting with the latter approach. We think based on the users role and role based permissions, Qai will be able \nto do different things. It will also simplify the requirement of remembering names of Digial workers like Qai \njust for the sake of seeming cool. But internally, there will be an army of digial workers / agents doing their job anyways. \n\nOpen to ideas. \n\n## 🚀 Tech Stack\n\n- ✅ **Framework**: [Typescript for frontend](https://www.typescriptlang.org/) \u0026 [NodeJS for backend](https://nodejs.org/en)\n- ✅ **App Server Database**: [MongoDB](https://www.mongodb.com/)\n- ✅ **Vector Database**: [ChromaDB](https://www.trychroma.com/)\n- ✅ **AI Server SQL Relational Database**: [SQLite](https://www.sqlite.org/) or anything that works with [SQLAlchemy](https://www.sqlalchemy.org/)\n- ✅ **LLM Tooling**: [Langchain](https://github.com/hwchase17/langchain)\n\n## Prerequisites :point_down:\n\nBefore you get started, please make sure you have the following installed:\n\n- An editor of your choice. For example, [Visual Studio Code (VS Code)](https://code.visualstudio.com/download)\n- [Node.js](https://nodejs.org/en/download)\n- [Git](https://git-scm.com/downloads)\n\n## Getting started :rocket:\n\nThere's 3 main components to running the code \n\n- 🎨 [Client App](https://github.com/qrev-ai/qrev/tree/main/client)\n- 🗂️ [App Server](https://github.com/qrev-ai/qrev/tree/main/server) \n- 🤖 [AI Server](https://github.com/qrev-ai/qrev/tree/main/ai) \n\n  \u003e Please refer to the [sample People CSV file](https://github.com/qrev-ai/qrev/blob/main/qai_csv_sample.csv) for the structure of the CSV file that the user can upload to the QAI bot for generating campaigns.\n\n## Getting Started with the QRev App Server\n\nTo get a local copy up and running, please follow these simple steps.\n\n### Prerequisites\n\nHere is what you need to be able to run QRev.\n\n-   Node.js (Version: \u003e=18.18.0)\n-   Mongo (Version: \u003e=5.x)\n\n    \u003e 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](#integrations).\n\n### Setup\n\n1. Clone the GitHub repo\n\n    ```sh\n    git clone https://github.com/qrev-ai/qrev.git\n    ```\n\n2. Go to the `server` folder\n\n    ```sh\n    cd server\n    ```\n\n3. Setup Node\n   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:\n\n    ```sh\n    nvm install v18.18.0\n    ```\n\n    ```sh\n    nvm use 18.18.0\n    ```\n\n    \u003e You can install nvm from [here](https://github.com/nvm-sh/nvm).\n\n4. Install the packages with `npm`\n\n    ```sh\n    npm ci\n    ```\n\n    \u003e `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.\n\n5. Set up your `.env` file\n\n    - Duplicate `.env.example` to `.env`\n    - Use `openssl rand -base64 32` to generate a key and add this under `REFRESH_TOKEN_JWT_SECRET` in the `.env` file.\n    - Use `openssl rand -base64 32` to generate a key and add this under `ACCESS_TOKEN_JWT_SECRET` in the `.env` file.\n    - 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.\n\n6. If you haven't already configured MongoDB and got the MONGO_DB_URL, then follow the steps [here](https://www.mongodb.com/docs/v3.0/tutorial/install-mongodb-on-ubuntu/) to install Mongo DB locally.\n\n7. Run the below command to start the server:\n    ```sh\n    npm start\n    ```\n\n## Getting Started with the QRev App Client \n\nMake sure you have the right [Environment variables](https://github.com/qrev-ai/qrev/tree/main/client/.env.example)\n\nThese are referenced in the [Client Code](https://github.com/qrev-ai/qrev/tree/main/client/src/config/credential.js)\n\n\n### Setup \n\n1. **Go to the `client` folder**\n```bash\ncd client \n```\n\n2. **Install libraries**\n\n```bash \nnpm install\n```\n\n3. Set up the `.env` file via following commands\n\n    - Copy the example environment file:\n      ```\n      cp .env.example .env\n      ```\n    \n    - Add your Google client id for the variable `REACT_APP_GOOGLE_CLIENT_ID`\n\n    - Add your app backend server host url for `REACT_APP_BASE_API_URL`\n\n    - Add your app backend server host url for `REACT_APP_BACKEND_HOST_URL`\n\n    **Note**: Please make sure there is no `/` at the end of the URL environment values.\n\n4. **To prevent any formatting issues in the code files, run the following**\n```bash\ngit config --global core.autocrlf true\n```\n\n5. **Run the client** \n\n```bash  \nnpm start  \n```\n\n## Getting Started with the QRev AI Code\nPlease refer the [Server README](https://github.com/qrev-ai/qrev/tree/main/ai/README.md)\n\n### Integrations\n\nQRev supports a few Integrations, which will expand over time\n\nPlease refer the [Server README](https://github.com/qrev-ai/qrev/tree/main/server/SERVER_README.md)\n\n\u003c!-- CONTRIBUTORS --\u003e\n\n### Contributors\n\n\u003ca href=\"https://github.com/qrev-ai/qrev/graphs/contributors\"\u003e\n  \u003cimg src=\"https://contrib.rocks/image?repo=qrev-ai/qrev\" /\u003e\n\u003c/a\u003e\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fqrev-ai%2Fqrev","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fqrev-ai%2Fqrev","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fqrev-ai%2Fqrev/lists"}