An open API service indexing awesome lists of open source software.

https://github.com/glynnbird/crm

A demo Customer Relations Management system built with IBM Cloud Functions and the Cloudant database.
https://github.com/glynnbird/crm

cloudant crm openwhisk vuejs

Last synced: 2 months ago
JSON representation

A demo Customer Relations Management system built with IBM Cloud Functions and the Cloudant database.

Awesome Lists containing this project

README

          

# CRM

This is a demo Customer Relations Managment (CRM) system built with:

- a client-side web app using HTML, CSS & JavaScript
- - Vue.js - application framework
- - Bootstrap - user-interface components
- - Showdown - Markdown parser
- a serverless API built with IBM Cloud Functions
- a Cloudant NoSQL database

Read about how this application works [in this blog](https://blog.cloudant.com/2019/03/29/Building-a-CRM-System.html)

## Pre-requisites

- An [IBM Cloud](https://www.ibm.com/cloud/) account with the [ibmcloud command-line tool](https://console.bluemix.net/openwhisk/learn/cli) installed and authenticated.
- A Cloudant account provisioned in the IBM Cloud account - make a note of your Cloudant URL.
- Node.js.
- Python.

## Setting up the API

Create an environment variable to store your Cloudant URL:

```sh
export COUCH_URL=""
```

Clone this repository then do:

```sh
cd crm/api
./deploy.sh
```

This will create a number of API calls in your Cloudant account. Make a note of the URLs generated by this process.

## Setting up the database

Create a Cloudant database, a couple of indexes and some sample data with:

```sh
cd setup
./setup.sh
```

(requires the [datamaker](https://www.npmjs.com/package/datamaker) & [couchimport](https://www.npmjs.com/package/couchimport) tools installed to generate and import sample data).

## Running the web app.

Modify the `APIURL` variable in `assets/js/crm.js` to match the URL produced when creating your API calls.

Run:

```sh
./start.sh
```

Your CRM should be running on http://localhost:8000