# PhoenixKitCRM v0.2.1 - Table of Contents

CRM module for PhoenixKit — organization accounts, role-scoped user views, and per-user column configuration.

## Modules

- [PhoenixKitCRM](PhoenixKitCRM.md): CRM module for PhoenixKit.
- [PhoenixKitCRM.ColumnConfig](PhoenixKitCRM.ColumnConfig.md): Per-scope column configuration for CRM tables and card views.
- [PhoenixKitCRM.Paths](PhoenixKitCRM.Paths.md): Centralized path helpers for the CRM module. All paths go through
`PhoenixKit.Utils.Routes.path/1` for prefix/locale handling.

- [PhoenixKitCRM.RoleSetting](PhoenixKitCRM.RoleSetting.md): Schema for CRM role settings.
- [PhoenixKitCRM.RoleSettings](PhoenixKitCRM.RoleSettings.md): Context for managing which roles have CRM access enabled.

- [PhoenixKitCRM.Routes](PhoenixKitCRM.Routes.md): Route definitions for the CRM module.
- [PhoenixKitCRM.SidebarBootstrap](PhoenixKitCRM.SidebarBootstrap.md): Registers CRM role subtabs into `PhoenixKit.Dashboard.Registry` under the
namespace `:phoenix_kit_crm_roles`.
- [PhoenixKitCRM.UserRoleView](PhoenixKitCRM.UserRoleView.md): Context for managing per-user CRM view configuration.
- [PhoenixKitCRM.UserRoleViewConfig](PhoenixKitCRM.UserRoleViewConfig.md): Schema for per-user, per-scope CRM view configuration.
- [PhoenixKitCRM.Web.CRMLive](PhoenixKitCRM.Web.CRMLive.md): Main admin LiveView for the CRM module — empty placeholder page.
- [PhoenixKitCRM.Web.CellFormat](PhoenixKitCRM.Web.CellFormat.md): Shared formatters for CRM table/card cells.
- [PhoenixKitCRM.Web.ColumnManagement](PhoenixKitCRM.Web.ColumnManagement.md): `use` macro that injects column-management `handle_event/3` callbacks into
a CRM LiveView. The host LV must
- [PhoenixKitCRM.Web.ColumnModal](PhoenixKitCRM.Web.ColumnModal.md): Function component that renders the "Customize columns" modal used by both
`RoleView` and `OrganizationsView`. UX mirrors `PhoenixKit.Users` table column
picker: drag-to-reorder selected columns on the left, click-to-add available
columns on the right.
- [PhoenixKitCRM.Web.OrganizationsView](PhoenixKitCRM.Web.OrganizationsView.md): Admin LiveView for the CRM Organizations subtab — lists users whose
`account_type = "organization"` with per-user persisted column
configuration. Supports a card/table view toggle (provided by
`PhoenixKitWeb.Components.Core.TableDefault`).
- [PhoenixKitCRM.Web.RoleView](PhoenixKitCRM.Web.RoleView.md): Admin LiveView for a single CRM role page — lists users assigned to the role
with per-user persisted column configuration. Supports a card/table view
toggle (provided by `PhoenixKitWeb.Components.Core.TableDefault`).

- [PhoenixKitCRM.Web.SettingsLive](PhoenixKitCRM.Web.SettingsLive.md): CRM settings page — exposes the enable/disable toggle and role opt-in.

