Extending TinaCMS

TinaCMS has many advanced features that allow the entire CMS editing experience to be customized.

Customizing Fields

TinaCMS allows any field to be customized through the ui property. This allows a custom experience to be created for your editors. Some of the main customization features are:

Example

Customizing the CMS instance

The tina/config.{ts,js,tsx} config has an optional cmsCallback parameter that can be added to customize the CMS instance.

The cmsCallback hook is primarily used for registering custom field plugins. It can also be used for altering TinaCMS's UI, dynamically hiding the sidebar on specific pages, tapping into the CMS event bus, etc.

Last Edited: May 1, 2025