Horilla CRM v1.12.0 — Extension Framework, Architecture Refactoring & Platform Enhancements
Release Date: 05 June 2026
Version: 1.12.0
Status: Major Feature Release – Extension Framework Expansion, CRM Refactoring, UI Enhancements & Platform Improvements
Horilla CRM v1.12.0
Horilla CRM v1.12.0 introduces the next evolution of the Horilla extension architecture, enabling developers to extend forms, lists, cards, filters, navigation, kanban boards, and detail views through a unified inheritance framework.
This release significantly improves platform extensibility while also delivering CRM module refactoring, new phone field components, booking enhancements, sidebar improvements, and numerous reliability fixes across activities, history, meetings, mail templates, and generic views.
The result is a more modular, customizable, and maintainable CRM platform that provides greater flexibility for enterprise implementations and third-party extensions.
This release focuses on:
🧩 Advanced Extension Framework Expansion
🏗️ CRM Architecture Refactoring
📱 Phone Field & International Number Support
📋 List, Card, Filter, Kanban & Detail View Inheritance
📅 Booking & Calendar Improvements
⚡ UI Performance & Sidebar Enhancements
🛠️ Reliability & Data Handling Fixes
📚 Documentation Expansion & Developer Experience
The result is a more extensible, customizable, and enterprise-ready CRM platform.
Highlights
🧩 Extension Framework Expansion
v1.12.0 greatly expands Horilla's extension system beyond models.
New Inheritance Types
Added support for:
_inherit_form_inherit_list_inherit_card_inherit_filter_inherit_nav_inherit_kanban_inherit_detail
These extension systems allow developers to customize and compose CRM functionality without modifying core modules.
Extension Infrastructure
- Added registries, composition engines, bootstrap systems, validation checks, and resolution pipelines
- Added per-request extension resolution
- Added extension caching layers to prevent cyclic imports and improve performance
- Expanded extension documentation and examples
- Added automated test coverage for extension modules
🏗️ CRM Architecture Refactoring
Several CRM applications have been reorganized for improved maintainability.
Leads Refactoring
- Split lead views into dedicated modular view packages
- Improved separation of concerns
- Simplified maintenance of lead workflows
Opportunities Refactoring
- Reorganized opportunity stages and split views into dedicated sub-packages
- Improved structure for future feature expansion
Extension Package Reorganization
- Reorganized extension modules into dedicated forms, models, list, card, filter, nav, kanban, and detail packages
📱 Phone Number Field Support
New PhoneWidget & PhoneField
Introduced a reusable international phone number component:
- Country dial-code selector with Select2 support
- Phone number validation and formatting
- Stores values using existing model fields
- Automatic integration into supported forms
Documentation
- Added complete developer documentation for PhoneWidget and PhoneField
- Documented automatic field injection behavior
📋 Advanced View Customization
List Extensions
- Added
_inherit_listcomposition framework - Supports per-request list customization
- Allows extension of list columns, actions, and behavior
Card Extensions
- Added
_inherit_cardsupport for CRM card views - Enables extension of card layouts and card actions
Filter Extensions
- Added
_inherit_filtersupport - Allows dynamic extension of filter sets and filtering logic
Navigation Extensions
- Added
_inherit_navsupport - Enables custom navigation components and contextual menus
Kanban & Detail Extensions
- Added inheritance support for kanban boards and detail views
- Allows customization without modifying core application code
📅 Booking & Scheduling Improvements
Booking Detail Experience
- Added HorillaModalDetailView support for bookings
- Added clickable rows with modal navigation
- Added previous/next record navigation
- Added integrated status change actions
UI Consistency
- Replaced hardcoded booking colors with Horilla theme variables
- Improved modal styling consistency
⚡ User Experience Improvements
Sidebar State Persistence
Fixed sidebar behavior where:
- Sidebar state was previously reset after HTMX swaps
- Sidebar reopened automatically after page refresh
The sidebar now properly remembers the user's selected state.
Action Button Improvements
- Prevented text wrapping in action buttons
- Improved usability across detail and modal views
🛠️ Reliability & Stability Fixes
Generic View Fixes
- Fixed Prefetch queryset slicing issue causing bulk delete failures
- Improved queryset handling for generic views
Activity & History
- Fixed activity call duration ordering
- Removed redundant validations
- Correctly identifies CallLog entries in history
- Added call status visibility in activity history
Meetings
- Google Meet option now automatically hides when Google Calendar integration is disabled
Mail Templates
- Fixed validation errors when creating mail and notification templates
- Properly assigns audit fields before save operations
Core
- Improved holiday form handling
- Corrected user selection validation logic
🧹 Code Quality & Standardization
Database Standardization
- Introduced centralized
horilla.dbimports - Standardized transaction and connection access throughout the platform
- Reduced direct dependency on Django database imports
Import Organization
Applied standardized import grouping across:
- Accounts
- Campaigns
- Contacts
- Forecast
- Leads
- Opportunities
- Extension modules
Pylint Compliance
- Fixed multiple pylint warnings and code-style issues
- Improved consistency across the CRM codebase
📚 Documentation
Expanded documentation for:
- Form extensions
- List extensions
- Card extensions
- Filter extensions
- Navigation extensions
- Kanban extensions
- Detail extensions
- PhoneWidget & PhoneField
- Extension architecture and inheritance guides
- Coding standards and import conventions
🛠️ Major Fixes
Extension Framework
- Added support for list, card, filter, nav, kanban, and detail inheritance
- Added extension caching and resolution improvements
CRM Modules
- Refactored Leads and Opportunities into modular structures
- Improved maintainability and scalability
UI
- Fixed sidebar state persistence
- Fixed action button wrapping
- Improved booking modal styling
Activities & History
- Fixed call duration ordering
- Fixed CallLog display and status visibility
- Fixed audit field validation failures during template creation
Meetings
- Fixed Google Meet visibility when calendar integration is unavailable
📜 Changelog Summary
v1.12.0 (05 June 2026)
Added
_inherit_list_inherit_card_inherit_filter_inherit_nav_inherit_kanban_inherit_detail- PhoneWidget and PhoneField
- Booking modal detail view with navigation
- Extension caching infrastructure
- Extension registries and composition systems
Improved
- CRM architecture and module organization
- Booking UI consistency
- Sidebar state persistence
- Generic view performance and reliability
- Import standardization
- Extension documentation
Fixed
- Bulk delete failures caused by queryset slicing
- Activity call duration ordering
- Call history display issues
- Mail template audit field validation errors
- Google Meet visibility logic
- Holiday form user-selection validation
- Action button wrapping issues
- Multiple pylint and code-quality issues
🎯 Impact
Horilla CRM v1.12.0 represents a major step toward a fully extensible CRM architecture.
This release:
- Enables customization of nearly every CRM view layer through inheritance
- Reduces the need for core-code modifications
- Improves long-term maintainability
- Simplifies third-party extension development
- Enhances booking, activity, and communication workflows
- Improves platform consistency and reliability
Overall
v1.12.0 is a major architectural release that expands Horilla CRM's extension framework from forms into a complete platform-wide customization system. Combined with CRM refactoring, phone field support, booking enhancements, reliability fixes, and extensive documentation improvements, this release provides a stronger foundation for enterprise deployments and future CRM growth. 🚀