django-opencrm is a reusable Django CRM app designed for NGOs and small businesses. It provides a flexible CRM system that can be integrated into any Django project to manage co ntacts, organizations, and related workflows.
- Manage contacts, organizations, and interactions
- Configurable settings via
python-decouple - Fully compatible with Django 5.x
- Easy integration into existing Django projects
git clone https://github.com/JonneSaloranta/django-opencrm.git
cd django-opencrmpython -m venv .venv
source .venv/bin/activateWe use pip-tools to manage dependencies:
pip install pip-tools
pip-compile requirements.in
pip install -r requirements.txt- Add these to your
INSTALLED_APPSin Django:
INSTALLED_APPS = [
...
"django.contrib.humanize",
'widget_tweaks',
"opencrm",
]- Add urls:
from django.urls import include, path
urlpatterns = [
path("admin/", admin.site.urls),
path("crm/", include("opencrm.urls")) #<--
]- Run migrations:
python manage.py migrate opencrm- Start using the CRM models in your project.
We follow these development practices:
- Code formatting: Black
- Linting: Flake8
- Testing: pytest
- Pre-commit hooks to enforce formatting and linting
Run tests:
pytestWe welcome contributions! Please see CONTRIBUTING.md for details on setup, workflow, and commit message guidelines.
This project is licensed under the MIT License. See LICENSE for details.
Created by Jonne Saloranta.
For questions or suggestions, open an issue on GitHub.