Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions .eslintcache

Large diffs are not rendered by default.

23 changes: 23 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
# See https://help.github.com/articles/ignoring-files/ for more about ignoring files.

# dependencies
/node_modules
/.pnp
.pnp.js

# testing
/coverage

# production
/build

# misc
.DS_Store
.env.local
.env.development.local
.env.test.local
.env.production.local

npm-debug.log*
yarn-debug.log*
yarn-error.log*
49 changes: 49 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,49 @@
# CRM 🏢

<img src="./analytics.png" width="90%"/>

**Customer Relationship Management** tool that allows companies to manage everything to-do with their customers. 🏢👨👩

It is a Full stack Application using React, MySQL, Node, Express and MobX

## 📷 project Screenshots

### Clients Page 👨👩

Show clients in **DataGrid** table with pagination (20 clients per page). The user can **search** clients according to name, country, email, owner and if sold. The user can also **update** client info on click on his/her row. 🔍🔃

<img src="./clientSearch.gif" width="70%"/>
<img src="./clientUpdate.gif" width="70%"/>

### 🔧 Actions (Update & Add Clients) 🔃➕

The user can look for Client and update his/her owner, send email, and declare sale (if the client hasn't been sold before)

<div style="display: grid; grid-template-columns: repeat(2, 1fr); grid-gap:2vw;">
<img src="./actionUpdate.gif" width="40%" style="margin: 30px ;"/>
<img src="./actionAdd.gif" width="40%"/>
</div

### 📊 Analytics Dashboard 📈📉

This page contain multiple Badges and charts.

<img src="./analytics.png" width="70%"/>
<img src="./salesBy.gif" width="50%"/>

## 💻 Technology used

- Client-side: React, MobX, Material-ui, font-awesome, Chartjs
- Server: NodeJS, Express, Sequelize
- Database: MySQL

## 🔧 Getting Started

- Clone this repository. You will need `node`, `npm` and `MySQL` installed globally on your machine.
- run `npm install`
- Database setup:
- run `CREATE DATABASE crmproject` in sql file
- run `createTable.sql` to create all needed table found in `server/savingToDB` file
- run `node dataMigration.js` in `server/savingToDB` file
- run `node server.js` in a terminal
- run `npm start` in another terminal
Binary file added actionAdd.gif
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added actionUpdate.gif
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added analytics.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added clientSearch.gif
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added clientUpdate.gif
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading