# CM Admin (Catalyst) > Ruby on Rails admin panel gem. These docs also ship inside the gem: run `bundle show cm-admin` and read `docs-site/docs/` for docs matching the installed version. This file contains links to documentation sections following the llmstxt.org standard. ## Table of Contents - [CM Admin](https://docs.cm-admin.commutatus.com/docs.md): An admin gem for Ruby on Rails application. Get your admin panel setup running quickly. - [2. Views](https://docs.cm-admin.commutatus.com/docs/Views.md): Basic views explained here - [DestroyDsl](https://docs.cm-admin.commutatus.com/docs/Views/DestroyDsl.md): Create a form for the destroy action. - [Module: `DSL Methods`](https://docs.cm-admin.commutatus.com/docs/Views/DslMethods.md): Defined in `lib/cm_admin/models/dsl_method.rb` - [EditDsl](https://docs.cm-admin.commutatus.com/docs/Views/EditDsl.md): Create a form for the edit action. - [IndexDsl](https://docs.cm-admin.commutatus.com/docs/Views/IndexDsl.md): Create a table view for the index page with pagination. - [Nested Form Field Feature](https://docs.cm-admin.commutatus.com/docs/Views/NestedFormField.md): The Nested Form Field feature in cm-admin uses Stimulus.js for modern, performant dynamic form handling. It provides ability to add, remove, clone,... - [NewDsl](https://docs.cm-admin.commutatus.com/docs/Views/NewDsl.md): Create a form for the new action. - [ShowDsl](https://docs.cm-admin.commutatus.com/docs/Views/ShowDsl.md): Create a view for the show page. - [3. Features](https://docs.cm-admin.commutatus.com/docs/Features.md): Features available in cm-admin explained here. - [Adding Alert Feature ⚠](https://docs.cm-admin.commutatus.com/docs/Features/AddingAlert.md): The Alert feature has been added to CmAdmin to provide a standardized method for displaying alerts and notifications to users. This documentation o... - [Advanced Filters](https://docs.cm-admin.commutatus.com/docs/Features/AdvancedFilters.md): Advanced Filters let users build filter queries from **conditions** joined with **AND / OR**, nest them in **condition groups**, and pick an **oper... - [AssociatedSort](https://docs.cm-admin.commutatus.com/docs/Features/AssociatedSort.md): CM Admin supports sorting on delegated or associated model attributes by adding them with the `sort` DSL method. This is particularly useful when y... - [Auditing (Custom-Action Audit Metadata)](https://docs.cm-admin.commutatus.com/docs/Features/Auditing.md): cm-admin extends PaperTrail to record **two first-class audit dimensions** on every version record: - [Bulk Action](https://docs.cm-admin.commutatus.com/docs/Features/BulkAction.md): Documentation coming soon. - [Catalyst AI (CT Bot)](https://docs.cm-admin.commutatus.com/docs/Features/CatalystAi.md): cm-admin ships with Catalyst AI, an opt-in AI assistant that lives inside the admin panel. Users with an enabled role get a floating chat widget on... - [CmAdmin Configuration](https://docs.cm-admin.commutatus.com/docs/Features/CmAdminConfiguration.md): All cm-admin global settings live in the initializer file (`config/initializers/cm_admin.rb` by default) and are exposed through the... - [Sending Email from CM Admin 📧](https://docs.cm-admin.commutatus.com/docs/Features/CmAdminEmail.md): The CM Admin email feature allows you to send emails directly from CM Admin. This documentation outlines how to use CM Admin emails, including conf... - [Webhook Logging in CM Admin](https://docs.cm-admin.commutatus.com/docs/Features/CmAdminWebhooks.md): CM Admin provides a base `WebhooksController` that handles incoming webhook requests with async processing and a debug UI. Vendor-specific webhook ... - [CmAdmin Date & Date-Time Display Format Configuration](https://docs.cm-admin.commutatus.com/docs/Features/CmDateFormat.md): Configure how dates and date-times are displayed across the **cm-admin** interface. - [cmSelect Integration 🎯](https://docs.cm-admin.commutatus.com/docs/Features/CmSelectIntegration.md): This module provides a wrapper around TomSelect for creating dynamic select dropdowns with Fetch support. - [Comment and Mention 💬](https://docs.cm-admin.commutatus.com/docs/Features/CommentsAndMentions.md): The Comment and Mention feature allows users to add comments on any model's show page and mention users using the `@` trigger. Powered by **Lexxy**... - [🕒 **Cron Job Setup Documentation**](https://docs.cm-admin.commutatus.com/docs/Features/CronJobSetup.md): The **CM Cron Job** feature allows you to manage scheduled tasks directly within the `cm-admin` interface. You can **create**, **edit**, **enable**... - [CSS Bundler](https://docs.cm-admin.commutatus.com/docs/Features/CssBundler.md): CM Admin includes a CSS bundling system that compiles Sass/SCSS stylesheets. The bundler handles both the core CM Admin stylesheets and your applic... - [Custom Action](https://docs.cm-admin.commutatus.com/docs/Features/CustomAction.md): Custom actions let you add your own buttons, links, modals, and pages to a model beyond the default `index`, `show`, `new`, `edit`, and `destroy` a... - [Custom Filter Method](https://docs.cm-admin.commutatus.com/docs/Features/CustomFilterMethod.md): We can add a custom filter method to filter records based on specific criteria. This is useful when the default filtering options do not meet the r... - [Global Search](https://docs.cm-admin.commutatus.com/docs/Features/GlobalSearch.md): Global Search provides a unified search experience across multiple models in your CmAdmin panel. Users can press **⌘ + K** (Mac) or **Ctrl + K** (W... - [Group Action](https://docs.cm-admin.commutatus.com/docs/Features/GroupAction.md): Documentation coming soon. - [Hotwire Breaking Changes](https://docs.cm-admin.commutatus.com/docs/Features/Hotwire.md): When Hotwire/Turbo is enabled, links inside Turbo Frames will navigate within the frame by default instead of the full page. - [Importers](https://docs.cm-admin.commutatus.com/docs/Features/Importer.md): CM Admin importers process files uploaded through an `importable` action. Use `CmAdmin::BaseImporter` for standard CSV and Excel row processing, or... - [Lexxy Rich Text Templates 📝](https://docs.cm-admin.commutatus.com/docs/Features/LexxyRichTextTemplates.md): This feature provides AI-powered rich text template integration using Lexxy, allowing users to create reusable prompt templates with category-based... - [Lisiting of Select Two using Ajax đŸ…°ïž](https://docs.cm-admin.commutatus.com/docs/Features/ListingSelectTwoAjax.md): This method demonstrates how to create a form field with a single select input that uses an Ajax URL to fetch data. - [Population of items in drop-downs đŸ”œ](https://docs.cm-admin.commutatus.com/docs/Features/ListingSelectTwoItems.md): This document provides details on various methods used in our project. Each method is explained with its purpose and usage examples. - [MCP Server](https://docs.cm-admin.commutatus.com/docs/Features/McpServer.md): cm-admin ships with a built-in Model Context Protocol server that exposes your admin-registered models to MCP-compatible AI clients (Claude Desktop... - [OTP & Authentication](https://docs.cm-admin.commutatus.com/docs/Features/OtpAndAuth.md): Cm-admin provides built-in OTP and password authentication flows that can be opted into via configuration. The gem ships with a Devise strategy, se... - [Platform Settings](https://docs.cm-admin.commutatus.com/docs/Features/PlatformSetting.md): We can add platform settings with key-value management. - [Role and Permission Management 🎭](https://docs.cm-admin.commutatus.com/docs/Features/RoleManagement.md): Role and permission management is facilitated through CmAdmin, which dynamically creates Pundit policies. This tool allows us to manage permissions... - [Saved Views](https://docs.cm-admin.commutatus.com/docs/Features/SavedViews.md): Saved Views let each user save the current state of an index page under a name and come back to it in one click. A view stores: - [Hide or Show Section and Fields đŸŠč](https://docs.cm-admin.commutatus.com/docs/Features/ShowHideContent.md): This module provides methods for hiding form sections and fields with HTML attributes. - [Showing Hiding Fields with Stimulus](https://docs.cm-admin.commutatus.com/docs/Features/ShowHideWithStimulus.md): We can show and hide fields dynamically with stimulus html attributes. It works on simple fields and nested form fields. - [CmAdmin Support Ticket Management đŸŽ«](https://docs.cm-admin.commutatus.com/docs/Features/SupportTicket.md): CmSupportTicket is a feature that allows users to create and manage support tickets within the application, which will get synced with the bridge s... - [Trackable](https://docs.cm-admin.commutatus.com/docs/Features/Trackable.md): The `Trackable` concern automatically records which user created or last updated a record by storing references to the `User` model via... - [Translation](https://docs.cm-admin.commutatus.com/docs/Features/Translation.md): We can convert certain keys to the language the application needs. - [CmAdmin Interactive Dashboard System](https://docs.cm-admin.commutatus.com/docs/Features/dashboard_setup_guide.md): The CmAdmin Interactive Dashboard System allows you to create fully interactive, namespaced dashboards with dynamic widgets. These dashboards can b... - [Status Tags](https://docs.cm-admin.commutatus.com/docs/Features/status-tags.md): CmAdmin provides a set of Catalyst Tag classes used to display enum or state values with a colored badge. These are rendered via the `:badge` field... - [Catalyst Config](https://docs.cm-admin.commutatus.com/docs/Deployment/CatalystConfig.md): Catalyst Config is the mechanism cm-admin uses to bundle and sync deploy configuration files (like `.hatchbox/`) from the gem into your application... - [**Guide to Deploying a Rails App to Hatchbox**](https://docs.cm-admin.commutatus.com/docs/Deployment/DeployOnHatchbox.md): --- - [Hatchbox Deployment Scripts](https://docs.cm-admin.commutatus.com/docs/Deployment/HatchboxScripts.md): Version-control your Hatchbox build/deploy scripts. Hatchbox auto-detects these scripts during deployment. - [Release Changelog & Notifications](https://docs.cm-admin.commutatus.com/docs/Deployment/ReleaseChangelog.md): cm-admin automates release notes generation, changelog docs updates, and Slack notifications as part of the gem release process. When a release is ... - [Releasing the Gem](https://docs.cm-admin.commutatus.com/docs/Deployment/ReleaseGem.md): cm-admin is published to the private **CM Gems** registry via two manually dispatched GitHub workflows: a stable release from `main` and a beta rel... - [PR Review Apps](https://docs.cm-admin.commutatus.com/docs/Deployment/ReviewApps.md): Every non-draft pull request to `main` gets its own running copy of `feature-app/`, built from the PR's code, at: - [Deployment Documentation](https://docs.cm-admin.commutatus.com/docs/Deployment.md): Guides for deploying Rails applications to various hosting platforms. - [Upgrade Guide](https://docs.cm-admin.commutatus.com/docs/Upgrade%20Guide.md): This guide helps you upgrade between versions of cm-admin. Each version has its own guide listing breaking changes, method renames, and migration s... - [v8.0.0](https://docs.cm-admin.commutatus.com/docs/Upgrade%20Guide/v8.0.0.md): Model configuration uses declarative methods inside the `cm_admin do` block. Pass a value to configure an option; calling the same method without a... - [v8.0.3](https://docs.cm-admin.commutatus.com/docs/Upgrade%20Guide/v8.0.3.md): The built-in `FileImport` and `FileExport` models have been renamed to `CtFileImport` and `CtFileExport` to avoid colliding with identically named ... - [v8.2.0](https://docs.cm-admin.commutatus.com/docs/Upgrade%20Guide/v8.2.0.md): This release adds **Advanced Filters** (nested AND/OR condition groups with operators such as `is_not`, `greater_than`, `is_empty`) and **Saved Vie... - [v8.2.18](https://docs.cm-admin.commutatus.com/docs/Upgrade%20Guide/v8.2.18.md): This release adds a required `name` field to API tokens, replacing the `description` field introduced in v8.2.14. - [v8.3.3](https://docs.cm-admin.commutatus.com/docs/Upgrade%20Guide/v8.3.3.md): This release adds per-recipient email open and click tracking to the Postmark webhook pipeline and the Email Log UI. Webhook events are now linked ... - [v8.4.0](https://docs.cm-admin.commutatus.com/docs/Upgrade%20Guide/v8.4.0.md): This release adds **Catalyst AI (CT Bot)** — an opt-in chat widget that answers admin users' questions via read-only MCP tools — plus a fix to the ... - [v8.4.1](https://docs.cm-admin.commutatus.com/docs/Upgrade%20Guide/v8.4.1.md): This release adds **voice input** to the Catalyst AI (CT Bot) chat widget. Recordings are uploaded as `CtBotTranscription` records, transcribed in ... - [v9.0.0](https://docs.cm-admin.commutatus.com/docs/Upgrade%20Guide/v9.0.0.md): Settings are now split into two clearly separate kinds that never override each other: - [6.UI](https://docs.cm-admin.commutatus.com/docs/UI/UI.md): UI components and styles available in cm-admin explained here. - [Buttons](https://docs.cm-admin.commutatus.com/docs/UI/buttons.md): CmAdmin provides a set of custom button classes built on top of Bootstrap. These custom classes ensure consistent styling across the admin panel wh... - [UI Introduction](https://docs.cm-admin.commutatus.com/docs/UI.md): cm-admin uses **Bootstrap 5** as its CSS foundation, wrapped inside a `.cm-admin` root class to ensure style isolation and prevent conflicts with t... - [Mixins](https://docs.cm-admin.commutatus.com/docs/UI/mixins.md): Quickly create flexbox layouts: - [Variables](https://docs.cm-admin.commutatus.com/docs/UI/variables.md): Import variables in your SCSS files: - [Windsurf Setup](https://docs.cm-admin.commutatus.com/docs/Windsurf/windsurf.md): Add changes, commit, and raise a PR. - [AWS](https://docs.cm-admin.commutatus.com/docs/AWS/aws.md): Documentation coming soon. - [AssociatedRecordHistory](https://docs.cm-admin.commutatus.com/docs/AssociatedRecordHistory.md): Add `CmAdmin::PaperTrailAssociations` to your host app's `ApplicationRecord`: - [Catalyst Setup](https://docs.cm-admin.commutatus.com/docs/catalyst-setup.md): This guide covers how to set up the `cm-admin` gem (internally referred to as Catalyst) locally and connect it to another Rails application for dev... - [Catalyst v8.0.12](https://docs.cm-admin.commutatus.com/docs/Changelog/2026-09.md): **Release date:** 2026-09-26 - [Release Notes — October 2026](https://docs.cm-admin.commutatus.com/docs/Changelog/2026-10.md): _No new features in this release._ - [Release Notes — November 2026](https://docs.cm-admin.commutatus.com/docs/Changelog/2026-11.md): 🔄 **WARNING: Migration Required** — The optional User Groups feature needs its tables created before use. Installations that do not enable User Gr... - [Changelog](https://docs.cm-admin.commutatus.com/docs/Changelog.md): Monthly release notes for Catalyst gem. Each page covers releases within that month, with AI-generated summaries of features, bug fixes, and improv... - [CM Admin Generators](https://docs.cm-admin.commutatus.com/docs/Generators.md): CM Admin provides a set of Rails generators to help you quickly set up and extend your admin panel functionality. - [Has One Tab](https://docs.cm-admin.commutatus.com/docs/HasOneTab.md): The **Has One Tab** feature enables displaying a `has_one` associated record directly within a tab on a parent model's show page. Instead of a pagi... - [EnumHelper](https://docs.cm-admin.commutatus.com/docs/cm-graphql/EnumHelper.md): 1. Create Enum from Rails Model Enum Use `enum_from_model` to build a GraphQL Enum based on a model's enum attribute. - [Ideal GraphQL Configuration](https://docs.cm-admin.commutatus.com/docs/cm-graphql/ListAPI.md): This guide shows the recommended setup for CM GraphQL using: - [PagingTypeHelper](https://docs.cm-admin.commutatus.com/docs/cm-graphql/PagingTypeHelper.md): Arguments: - `model`: ActiveRecord Model Name. - `record_data_type`: GraphQL Type for the record data. - `graphql_type_name:` can be provided to cu... - [RecaptchaExtension](https://docs.cm-admin.commutatus.com/docs/cm-graphql/RecaptchaExtension.md): To use recaptcha extension in the graphql field, add the following line in the field: - [CM GraphQL](https://docs.cm-admin.commutatus.com/docs/cm-graphql.md): CM GraphQL is a companion library that provides GraphQL API support for Rails applications.