bởi Arslan Shakil

Full-stack TypeScript CRM with Express backend (SQLite, JWT auth, REST API) and React frontend (Vite, Tailwind, React Router). Manage contacts, deals, and activities with real-time dashboard, role-based access, and multi-tenant support. Licensed under Tetrees License.
A full-stack multi-tenant CRM system built with TypeScript, featuring a React frontend and Express backend. Manage contacts, deals, and activities with JWT-based authentication, real-time dashboards, and a clean, modern UI powered by Tailwind CSS and Framer Motion.
| Layer | Technology |
|---|---|
| Frontend | React 19, TypeScript, Vite, Tailwind CSS, Framer Motion, React Router |
| Backend | Node.js, Express 4, TypeScript, SQLite (better-sqlite3) |
| Auth | JWT (jsonwebtoken), bcryptjs |
| Validation | Zod |
| Security | Helmet, CORS |
| Utilities | uuid v4, Lucide React icons |
cd backend
npm install
npm run build
npm start
Server runs on port 9036 by default.
Development mode:
npm run dev
Environment variables (.env):
PORT=9036
JWT_SECRET=your-super-secret-key
NODE_ENV=development
cd frontend
npm install
npm run dev
Dev server runs on port 5173 (Vite default).
Build for production:
npm run build
Type checking:
npm run typecheck
Base URL: http://localhost:9036
POST /api/auth/register — Create new user accountPOST /api/auth/login — Login and receive JWT tokenGET /api/health — Health checkGET /api/contacts — List all contactsPOST /api/contacts — Create contactGET /api/contacts/:id — Get contact detailsPUT /api/contacts/:id — Update contactDELETE /api/contacts/:id — Delete contactGET /api/deals — List all dealsPOST /api/deals — Create deal (requires contact_id, title, value, stage)GET /api/deals/:id — Get deal detailsPUT /api/deals/:id — Update dealDELETE /api/deals/:id — Delete dealGET /api/activities — List all activitiesPOST /api/activities — Create activityGET /api/activities/:id — Get activity detailsPUT /api/activities/:id — Update activityDELETE /api/activities/:id — Delete activityGET /api/dashboard — Fetch dashboard metrics (contact count, deal value, activity count)All protected endpoints require a Bearer token in the Authorization header:
Authorization: Bearer <your-jwt-token>
Tokens are valid for 7 days. Register or login to obtain a token.
Success:
{
"data": { ... }
}
Error:
{
"error": "Error message",
"details": { ... }
}
Tetrees License
Khởi chạy sandbox cách ly và chạy phía máy chủ — không cần cài đặt cục bộ.
Lần kiểm định sandbox đã hoàn tất và đường chạy được phát hiện đã đạt yêu cầu.
This Express backend / api completed archive review with strong static results. Structure, dependency manifests, documentation, functional source, and common risk patterns were checked by the Tetrees verification pipeline; runtime phases are stated separately. Final verified scores after isolated runtime evidence: overall 8.8 and security 9.
Deterministic AVCP artifact review
Quy trình avcp-2026-08-04.1 · SHA-256 c1421358c20e289b…
This version-scoped review deterministically inspects the submitted archive for structure, dependencies, documentation, functional source, and common malicious or high-risk signals. Build and test phases are reported as passed only after an isolated sandbox audition. It is not a guarantee of perfect security.
Đã đánh giá 7 thg 8, 2026
Hướng dẫn cài đặt đầy đủ và prompt tích hợp sẽ mở khóa sau khi mua.
Đưa sản phẩm này thẳng vào AI IDE, trình tạo web hoặc cloud IDE của bạn.
Kết nối Tetrees với AI IDE tương thích để liệt kê sản phẩm bạn sở hữu và nhận ZIP đã xác minh mà không cấp quyền tải lên của người bán.
Chưa có đánh giá.
Sign in to join the discussion
Loading discussion…
Automation, Utilities & Developer Tools
600 US$