crm/README.md

84 lines
2.3 KiB
Markdown

# CRM Customer Management System
A web-based CRM system built with Go backend and HTML/CSS/JavaScript frontend.
## Features
1. **Customer Management**
- Create customers with fields: Customer Name, Intended Product
- Customer list with fields: Time, Customer, Version, Description, Solution, Type, Module, Status & Progress, Reporter (all editable)
- Import customers from CSV files
2. **Customer Dashboard**
- Visual charts (pie charts, line charts) for data analysis
- Filter data by date range
- View customer distribution by status, trends, product interest, and customer types
## Technology Stack
- Backend: Go
- Frontend: HTML, CSS, JavaScript
- Charts: Chart.js (via CDN)
- Data Storage: Local JSON file
## How to Run
1. Navigate to the project directory:
```bash
cd /Users/d-robotics/crm/crm-go
```
2. Run the server:
```bash
./bin/server
```
3. Open your browser and go to:
```
http://localhost:8080
```
## Usage
### Customer Management
- Click "Customer Management" in the navigation
- Add new customers using the form
- Edit existing customers by clicking "Edit" button
- Delete customers by clicking "Delete" button
- Import customers from CSV file using the import form
### Dashboard
- Click "Dashboard" in the navigation
- View various charts showing customer data
- Filter data by date range
## Data Storage
Customer data is stored in `./data/customers.json` in JSON format.
## File Structure
```
crm-go/
├── cmd/
│ └── server/
│ └── main.go # Main application entry point
├── models/
│ └── customer.go # Customer data models
├── internal/
│ ├── handlers/
│ │ └── customer_handler.go # HTTP request handlers
│ └── storage/
│ └── customer_storage.go # Data storage implementation
├── frontend/
│ ├── index.html # Main HTML page
│ ├── css/
│ └── style.css # Stylesheet
│ └── js/
│ └── main.js # Client-side JavaScript
├── data/
│ └── customers.json # Customer data storage
├── bin/
│ └── server # Compiled binary
└── go.mod # Go module file
```