digitCRM - Unified CRM System

Пълна CRM система с backend и frontend, готова за production.

Структура на проекта

digitCRM/
├── backend/          # Node.js + Express API
├── frontend/         # React + Vite SPA
├── docker-compose.yml
└── README.md

Технологии

Backend

  • Node.js 18+
  • Express.js
  • SQL Server (MSSQL)
  • JWT Authentication

Frontend

  • React 19
  • Vite
  • Tailwind CSS
  • shadcn/ui компоненти

Бързо стартиране

1. Backend

cd backend
npm install
npm start

Server ще слуша на http://localhost:3001

2. Frontend

cd frontend
pnpm install
pnpm run dev

App ще слуша на http://localhost:3000

Environment Variables

Backend (.env)

NODE_ENV=production
PORT=3000
DB_SERVER=cw.inex-project.net
DB_PORT=14333
DB_USER=inex
DB_PASSWORD=inex123!@#
JWT_SECRET=your-secret-key
CORS_ORIGIN=http://localhost:3000

Frontend (.env)

VITE_API_URL=http://localhost:3001/api

Деплойване на Coolify

  1. Отворете Coolify
  2. Натиснете "New Resource" → "Docker Compose"
  3. В "Source" изберете "Git"
  4. Въведете: https://git.inex-project.net/sabo/digitCRM.git
  5. Branch: main
  6. Docker Compose File: docker-compose.yml
  7. Deploy

API Endpoints

Authentication

  • POST /api/users/register - Регистрация
  • POST /api/users/login - Логин

Contacts

  • GET /api/contacts - Всички контакти
  • POST /api/contacts - Нов контакт
  • GET /api/contacts/:id - Детайли на контакт
  • PUT /api/contacts/:id - Актуализирай контакт
  • DELETE /api/contacts/:id - Изтрий контакт

Campaigns

  • GET /api/campaigns - Всички кампании
  • POST /api/campaigns - Нова кампания
  • GET /api/campaigns/:id - Детайли на кампания
  • PUT /api/campaigns/:id - Актуализирай кампания
  • DELETE /api/campaigns/:id - Изтрий кампания

Tickets

  • GET /api/tickets - Всички билети
  • POST /api/tickets - Нов билет
  • GET /api/tickets/:id - Детайли на билет
  • PUT /api/tickets/:id - Актуализирай билет
  • DELETE /api/tickets/:id - Изтрий билет

Warranties

  • GET /api/warranties - Всички гаранции
  • POST /api/warranties - Нова гаранция
  • GET /api/warranties/:id - Детайли на гаранция
  • PUT /api/warranties/:id - Актуализирай гаранция
  • DELETE /api/warranties/:id - Изтрий гаранция

Feedback

  • GET /api/feedback - Всички обратни връзки
  • POST /api/feedback - Нова обратна връзка
  • GET /api/feedback/:id - Детайли на обратна връзка
  • PUT /api/feedback/:id - Актуализирай обратна връзка
  • DELETE /api/feedback/:id - Изтрий обратна връзка

Analytics

  • GET /api/analytics/dashboard - Dashboard статистика
  • GET /api/analytics/contacts - Анализ на контакти
  • GET /api/analytics/campaigns - Анализ на кампании
  • GET /api/analytics/tickets - Анализ на билети
  • GET /api/analytics/feedback - Анализ на обратна връзка

Тестване

Регистрация

curl -X POST http://localhost:3001/api/users/register \
  -H "Content-Type: application/json" \
  -d '{
    "firstName": "John",
    "lastName": "Doe",
    "email": "john@example.com",
    "username": "johndoe",
    "password": "Test123!@#"
  }'

Логин

curl -X POST http://localhost:3001/api/users/login \
  -H "Content-Type: application/json" \
  -d '{
    "username": "johndoe",
    "password": "Test123!@#"
  }'

Лицензия

Proprietary - Всички права запазени

Контакт

За въпроси: sabo@inex-project.net

Description
No description provided
Readme 227 KiB
Languages
TypeScript 90.1%
JavaScript 7.8%
CSS 1.8%
HTML 0.3%