A fully functional Customer Relationship Management (CRM) system built with Django, designed to help you manage leads, agents, and customer interactions efficiently.
- Lead Management: Create, update, categorize, and assign leads to agents.
- Agent Management: Register, edit, and manage sales agents.
- User Authentication: Sign up, log in, password reset, and secure authentication flows.
- Role-based Access: Organisors can assign leads and agents; agents can view and manage their assigned leads.
- Categories: Organize leads into customizable categories.
- Email Notifications: Sends emails on key actions (e.g., lead creation, agent invitation).
- Responsive UI: Styled with Tailwind CSS for a modern look and feel.
The CRM's landing page. The UI is clean and built with Tailwind CSS.
- Python 3.7+
- pip (Python package manager)
- Virtualenv (recommended)
-
Clone the repository:
git clone https://github.com/theonlykingpin/CRM.git cd CRM -
Create a virtual environment and activate:
python3 -m venv venv source venv/bin/activate -
Install dependencies:
pip install -r requirements.txt
-
Apply migrations:
python manage.py migrate
-
Run the development server:
python manage.py runserver
-
Access the app:
- Go to
http://127.0.0.1:8000/in your browser.
- Go to
CRM/
├── agents/ # Agent management app
├── crm/ # Project settings and urls
├── leads/ # Lead management app
├── static/ # Static files (CSS, JS, images)
├── templates/ # HTML templates
│ ├── base.html
│ ├── landing.html
│ └── ...
├── manage.py
└── requirements.txt
- Organisors: Can create leads, assign agents, manage categories, and view all data.
- Agents: Can view and update only their assigned leads.
- Signup: Visit
/signup/to create a new account. - Login: Visit
/login/. - View Leads: After logging in, go to
/leads/. - Create Lead: Organisors can add new leads from the dashboard.
- Assign Agent: Organisors can assign agents to leads.
- Password Reset: Visit
/reset-password/to reset your password.
- Login as an Organisor.
- Navigate to
Leadsand clickCreate a new lead. - Fill out the lead details and submit.
- Assign an agent from the lead's detail page.
Contributions are welcome! To contribute:
- Fork this repository.
- Create a new branch (
git checkout -b feature/your-feature). - Commit your changes (
git commit -am 'Add new feature'). - Push to the branch (
git push origin feature/your-feature). - Create a pull request.
Please ensure your code follows the style of the project and is well-documented.
This project is licensed under the MIT License.
- Built with Django and Tailwind CSS.
- Inspired by modern CRM requirements.
For questions or support, open an issue or contact theonlykingpin.