https://github.com/ayushivashisth/customer-relationship-management-system
This repository contains the backend implementation of a Customer Relationship Management (CRM) system developed using Node.js, Express, and MongoDB. The CRM system manages user accounts, handles public enquiries, and allows employees/counsellors to claim and manage leads.
https://github.com/ayushivashisth/customer-relationship-management-system
express mongobd mongoose nodejs npm npm-package npm-scripts render
Last synced: about 2 months ago
JSON representation
This repository contains the backend implementation of a Customer Relationship Management (CRM) system developed using Node.js, Express, and MongoDB. The CRM system manages user accounts, handles public enquiries, and allows employees/counsellors to claim and manage leads.
- Host: GitHub
- URL: https://github.com/ayushivashisth/customer-relationship-management-system
- Owner: AyushiVashisth
- Created: 2024-01-11T09:49:14.000Z (over 1 year ago)
- Default Branch: master
- Last Pushed: 2024-01-11T11:41:18.000Z (over 1 year ago)
- Last Synced: 2025-02-13T16:44:44.446Z (4 months ago)
- Topics: express, mongobd, mongoose, nodejs, npm, npm-package, npm-scripts, render
- Language: JavaScript
- Homepage: https://crm-api-su4c.onrender.com/
- Size: 25.4 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
🚀 customer-relationship-management-system 🚀
This repository contains the backend implementation of a Customer Relationship Management (CRM) system developed using Node.js, Express, and MongoDB. The CRM system manages user accounts, handles public enquiries, and allows employees/counsellors to claim and manage leads.### Backend Respositry URL 👉 [Click here](https://crm-api-su4c.onrender.com/)
Technologies Used
Backend
![]()
![]()
![]()
Tools
![]()
![]()
![]()
Deployment
![]()
![]()
Features
- **User Management:**
- Registration of employees and counselors.
- User login for authentication using JWT tokens.- **Enquiry Management:**
- Public form submission for prospective clients.
- Employee/counselor can claim and manage leads.
- APIs to fetch unclaimed leads and leads claimed by logged-in users.## Technology Stack
- **Node.js:** Server-side JavaScript runtime.
- **Express:** Web application framework for Node.js.
- **MongoDB:** NoSQL database for storing user and enquiry data.
- **JWT (JSON Web Tokens):** Token-based authentication for secure communication.## Project Structure
- **Config:** Database configuration files.
- **Middleware:** Authentication middleware.
- **Models:** MongoDB schema definitions for User and Enquiry.
- **Routes:** API routes for User and Enquiry functionalities.
- **Index.js:** Main entry point for the application## API Endpoints
- **User Management:**
- `POST /user/register`: Register a new user.
- `POST /user/login`: Authenticate and log in a user.- **Enquiry Management:**
- `POST /enquiry/publicForm`: Submit a public enquiry form.
- `POST /enquiry/claimLead/:enquiryId`: Claim a lead by an authenticated user.
- `GET /enquiry/unclaimedLeads`: Get unclaimed leads (requires authentication).
- `GET /enquiry/myLeads`: Get leads claimed by the logged-in user (requires authentication).Getting Started
1. Clone the repository: git clone
2. Install dependencies: npm install
3. Configure environment variables: Create a .env file based on .env.example and provide necessary details.
4. Start the server: npm start
5. The server will be running at http://localhost:8080This is an individual project that I developed as a solo backend developer within 2 hours.
Contribution Guidelines
We welcome contributions to the customer-relationship-management-system project. If you have ideas for new features or find any bugs, please open an issue in the repository. Pull requests are also encouraged.
Show Your Support
If you find this project interesting or valuable, please consider giving it a ⭐️.
🚘 Happy Exploring! 🚘