# CxJS > CxJS is a feature-rich JavaScript (TypeScript) framework for building complex web front-ends, such as portals, dashboards and admin applications. ## Documentation Sets - [Complete Documentation](https://new.cxjs.io/llms-full.txt): Full CxJS documentation including all guides and API references - [Key Documentation](https://new.cxjs.io/llms-small.txt): Essential CxJS documentation for getting started ## Notes - This content is auto-generated from the official CxJS documentation. - Pages are ordered according to the documentation navigation structure. ## Documentation Pages ### Introduction #### Getting Started - [What is CxJS](https://new.cxjs.io/docs/intro/what-is-cxjs): Overview of CxJS framework, its purpose, and key features - [Hello World](https://new.cxjs.io/docs/intro/hello-world): Build your first CxJS application step by step - [Installation](https://new.cxjs.io/docs/intro/installation): Set up CxJS in your project using npm or yarn - [Themes](https://new.cxjs.io/docs/intro/themes): Apply and customize visual themes for your application - [Tailwind CSS](https://new.cxjs.io/docs/intro/tailwind-css): Integrate Tailwind CSS with CxJS for utility-first styling - [Application Templates](https://new.cxjs.io/docs/intro/application-templates): Starter templates and boilerplates for new projects - [AI (Skills)](https://new.cxjs.io/docs/intro/ai): Using AI coding assistants with CxJS #### Basics - [JSX Syntax](https://new.cxjs.io/docs/intro/jsx-syntax): CxJS-specific JSX syntax and configuration options - [Typed Models](https://new.cxjs.io/docs/intro/typed-models): Define type-safe data models with createModel - [Store](https://new.cxjs.io/docs/intro/store): Central state container for application data - [Data Binding](https://new.cxjs.io/docs/intro/data-binding): Connect UI components to store data with bindings - [Controllers](https://new.cxjs.io/docs/intro/controllers): Encapsulate business logic and computed values - [Formatting](https://new.cxjs.io/docs/intro/formatting): Format numbers, dates, and text for display #### Core Components - [HtmlElement](https://new.cxjs.io/docs/intro/html-element): Base component for rendering HTML elements with bindings - [PureContainer](https://new.cxjs.io/docs/intro/pure-container): Invisible container for grouping child components - [ContentResolver](https://new.cxjs.io/docs/intro/content-resolver): Dynamically resolve and render content based on data #### Authoring Widgets - [Functional Components](https://new.cxjs.io/docs/intro/functional-components): Create reusable components with functions - [Custom Components](https://new.cxjs.io/docs/intro/custom-components): Build custom widget classes extending CxJS base #### Migration - [Changelog](https://new.cxjs.io/docs/intro/changelog): Version history and release notes - [Breaking Changes](https://new.cxjs.io/docs/intro/breaking-changes): List of breaking changes between major versions - [Migration Guide](https://new.cxjs.io/docs/intro/migration-guide): Step-by-step guide for upgrading CxJS versions #### Resources - [Sample Applications](https://new.cxjs.io/docs/intro/sample-applications): Example applications demonstrating CxJS patterns - [Component Libraries](https://new.cxjs.io/docs/intro/component-libraries): Add-on libraries that provide additional CxJS components ### Concepts #### Data Views - [Overview](https://new.cxjs.io/docs/concepts/data-views): Components that iterate and transform data - [Repeater](https://new.cxjs.io/docs/concepts/repeater): Render a template for each item in an array - [Sandbox](https://new.cxjs.io/docs/concepts/sandbox): Isolate store changes for cancel/save workflows - [PrivateStore](https://new.cxjs.io/docs/concepts/private-store): Create isolated store instances for components - [DataProxy](https://new.cxjs.io/docs/concepts/data-proxy): Transform data between parent and child stores - [Rescope](https://new.cxjs.io/docs/concepts/rescope): Remap store paths for nested components #### Selections - [Overview](https://new.cxjs.io/docs/concepts/selections): Track selected items in lists and grids - [KeySelection](https://new.cxjs.io/docs/concepts/key-selection): Select items by unique key identifier - [SimpleSelection](https://new.cxjs.io/docs/concepts/simple-selection): Basic single-item selection - [PropertySelection](https://new.cxjs.io/docs/concepts/property-selection): Selection stored in record properties #### Routing - [Overview](https://new.cxjs.io/docs/concepts/routing): Client-side routing and navigation - [Route](https://new.cxjs.io/docs/concepts/route): Define routes and render content based on URL - [RedirectRoute](https://new.cxjs.io/docs/concepts/redirect-route): Automatically redirect between routes - [Url](https://new.cxjs.io/docs/concepts/url): Build and parse URLs with parameters - [History](https://new.cxjs.io/docs/concepts/history): Manage browser history and navigation state #### Drag & Drop - [Overview](https://new.cxjs.io/docs/concepts/drag-and-drop): Implement drag and drop interactions - [DragSource](https://new.cxjs.io/docs/concepts/drag-source): Make elements draggable - [DropZone](https://new.cxjs.io/docs/concepts/drop-zone): Define areas that accept dropped items - [DragHandle](https://new.cxjs.io/docs/concepts/drag-handle): Restrict drag initiation to specific handles #### Advanced - [Keyboard Shortcuts](https://new.cxjs.io/docs/concepts/keyboard-shortcuts): Register and handle keyboard shortcuts - [Localization](https://new.cxjs.io/docs/concepts/localization): Translate UI text and format locale-specific data - [DetachedScope](https://new.cxjs.io/docs/concepts/detached-scope): Render components outside the normal hierarchy - [IsolatedScope](https://new.cxjs.io/docs/concepts/isolated-scope): Prevent store access from parent context ### Layout #### General Purpose - [Button](https://new.cxjs.io/docs/layout/button): Clickable button with various styles and states - [Tab](https://new.cxjs.io/docs/layout/tabs): Tabbed interface for switching between views - [Heading](https://new.cxjs.io/docs/layout/heading): Semantic heading elements (h1-h6) - [Text](https://new.cxjs.io/docs/layout/text): Text display with formatting and bindings - [Link](https://new.cxjs.io/docs/layout/link): Navigation links with routing support - [LinkButton](https://new.cxjs.io/docs/layout/link-button): Button styled as a link - [Icon](https://new.cxjs.io/docs/layout/icon): Display icons from icon libraries - [ProgressBar](https://new.cxjs.io/docs/layout/progress-bar): Visual progress indicator - [Resizer](https://new.cxjs.io/docs/layout/resizer): Draggable resize handle for panels - [HScroller](https://new.cxjs.io/docs/layout/hscroller): Horizontal scrolling container - [FlexBox](https://new.cxjs.io/docs/layout/flexbox): Flexbox-based layout container - [Section](https://new.cxjs.io/docs/layout/section): Card-like container with header and body #### App Layout - [Outer Layouts](https://new.cxjs.io/docs/layout/outer-layouts): Page-level layout templates - [ContentPlaceholder](https://new.cxjs.io/docs/layout/content-placeholder): Named slots for content injection - [Content](https://new.cxjs.io/docs/layout/content): Inject content into layout placeholders #### Inner Layouts - [Overview](https://new.cxjs.io/docs/layout/inner-layouts): Arrange form fields and labels - [LabelsLeftLayout](https://new.cxjs.io/docs/layout/labels-left-layout): Labels positioned to the left of fields - [LabelsTopLayout](https://new.cxjs.io/docs/layout/labels-top-layout): Labels positioned above fields - [FirstVisibleChildLayout](https://new.cxjs.io/docs/layout/first-visible-child-layout): Show only the first visible child - [UseParentLayout](https://new.cxjs.io/docs/layout/use-parent-layout): Inherit layout from parent component #### Overlays - [Window](https://new.cxjs.io/docs/layout/window): Modal dialog window - [Overlay](https://new.cxjs.io/docs/layout/overlay): Positioned overlay container - [Tooltip](https://new.cxjs.io/docs/layout/tooltip): Hover tooltips and popovers - [Toast](https://new.cxjs.io/docs/layout/toast): Temporary notification messages - [MsgBox](https://new.cxjs.io/docs/layout/msgbox): Alert, confirm, and prompt dialogs - [FlyweightTooltipTracker](https://new.cxjs.io/docs/layout/flyweight-tooltip-tracker): Efficient tooltips for many elements #### Menus - [Menu](https://new.cxjs.io/docs/layout/menu): Vertical menu with items and submenus - [ContextMenu](https://new.cxjs.io/docs/layout/context-menu): Right-click context menus - [Dropdown](https://new.cxjs.io/docs/layout/dropdown): Dropdown menu triggered by button ### Forms #### Fields - [TextField](https://new.cxjs.io/docs/forms/text-field): Single-line text input field - [TextArea](https://new.cxjs.io/docs/forms/text-area): Multi-line text input field - [NumberField](https://new.cxjs.io/docs/forms/number-field): Numeric input with formatting - [Checkbox](https://new.cxjs.io/docs/forms/checkbox): Boolean checkbox input - [Radio](https://new.cxjs.io/docs/forms/radio): Radio button for single selection - [Select](https://new.cxjs.io/docs/forms/select): Dropdown select input - [Switch](https://new.cxjs.io/docs/forms/switch): Toggle switch for boolean values #### Validation - [Overview](https://new.cxjs.io/docs/forms/validation): Form validation concepts and patterns - [ValidationGroup](https://new.cxjs.io/docs/forms/validation-group): Group fields for collective validation - [Validator](https://new.cxjs.io/docs/forms/validator): Custom validation rules - [ValidationError](https://new.cxjs.io/docs/forms/validation-error): Display validation error messages #### Lookups - [LookupField](https://new.cxjs.io/docs/forms/lookup-field): Searchable dropdown with remote data - [Custom Bindings](https://new.cxjs.io/docs/forms/custom-lookup-bindings): Bind multiple values from lookup - [Infinite List](https://new.cxjs.io/docs/forms/infinite-lookup-list): Load options on scroll - [Options Filter](https://new.cxjs.io/docs/forms/lookup-options-filter): Client-side option filtering - [Options Grouping](https://new.cxjs.io/docs/forms/lookup-options-grouping): Group options by category #### Date & Time - [DateField](https://new.cxjs.io/docs/forms/date-field): Date picker input - [Calendar](https://new.cxjs.io/docs/forms/calendar): Calendar widget for date selection - [DateTimeField](https://new.cxjs.io/docs/forms/date-time-field): Combined date and time picker - [MonthField](https://new.cxjs.io/docs/forms/month-field): Month and year picker - [MonthPicker](https://new.cxjs.io/docs/forms/month-picker): Month selection calendar #### File Upload - [UploadButton](https://new.cxjs.io/docs/forms/upload-button): File upload button - [Multi-file Upload](https://new.cxjs.io/docs/forms/multi-file-upload): Upload multiple files at once #### Lists - [List](https://new.cxjs.io/docs/forms/list): Selectable list of items - [Grouping](https://new.cxjs.io/docs/forms/list-grouping): Group list items by category - [Forwarding Keyboard Inputs](https://new.cxjs.io/docs/forms/list-forwarding-keyboard-inputs): Forward keyboard events to the list #### General - [ColorField](https://new.cxjs.io/docs/forms/color-field): Color picker input field - [ColorPicker](https://new.cxjs.io/docs/forms/color-picker): Color selection widget - [Slider](https://new.cxjs.io/docs/forms/slider): Range slider input - [Label](https://new.cxjs.io/docs/forms/label): Form field label - [FieldGroup](https://new.cxjs.io/docs/forms/field-group): Group related form fields - [LabeledContainer](https://new.cxjs.io/docs/forms/labeled-container): Container with label support - [HighlightedSearchText](https://new.cxjs.io/docs/forms/highlighted-search-text): Highlight matching search text ### Tables #### Basics - [Grid](https://new.cxjs.io/docs/tables/grid): Data grid with sorting, filtering, and selection - [Searching and Filtering](https://new.cxjs.io/docs/tables/searching-and-filtering): Filter grid data with search inputs - [Pagination](https://new.cxjs.io/docs/tables/pagination): Page through large datasets - [Multiple Selection](https://new.cxjs.io/docs/tables/multiple-selection): Select multiple grid rows - [Buffering](https://new.cxjs.io/docs/tables/buffering): Virtualized rendering for large datasets - [Infinite Scrolling](https://new.cxjs.io/docs/tables/infinite-scrolling): Load more data on scroll #### Columns - [Complex Headers](https://new.cxjs.io/docs/tables/complex-headers): Multi-row and grouped column headers - [Header Menu](https://new.cxjs.io/docs/tables/header-menu): Column header dropdown menus - [Column Resizing](https://new.cxjs.io/docs/tables/column-resizing): Drag to resize column widths - [Dynamic Columns](https://new.cxjs.io/docs/tables/dynamic-columns): Add and remove columns dynamically - [Column Reordering](https://new.cxjs.io/docs/tables/column-reordering): Drag to reorder columns - [Fixed Columns](https://new.cxjs.io/docs/tables/fixed-columns): Lock columns to left or right edge #### Rows - [Row Expanding](https://new.cxjs.io/docs/tables/row-expanding): Expand rows to show detail content - [Row Drag and Drop](https://new.cxjs.io/docs/tables/row-drag-and-drop): Reorder rows with drag and drop #### Editing - [Cell Editing](https://new.cxjs.io/docs/tables/cell-editing): Edit individual cells inline - [Row Editing](https://new.cxjs.io/docs/tables/row-editing): Edit entire rows at once - [Inline Edit](https://new.cxjs.io/docs/tables/inline-edit): Edit data directly in the grid - [Form Edit](https://new.cxjs.io/docs/tables/form-edit): Edit rows in a separate form #### Data Adapters - [Overview](https://new.cxjs.io/docs/tables/data-adapters): Transform data for grid display - [ArrayAdapter](https://new.cxjs.io/docs/tables/array-adapter): Simple array data source - [GroupAdapter](https://new.cxjs.io/docs/tables/group-adapter): Group and aggregate data - [TreeAdapter](https://new.cxjs.io/docs/tables/tree-adapter): Hierarchical tree data source #### Grouping - [Grouping](https://new.cxjs.io/docs/tables/grouping): Group rows by column values - [Dynamic Grouping](https://new.cxjs.io/docs/tables/dynamic-grouping): User-controlled grouping options #### Trees - [TreeNode](https://new.cxjs.io/docs/tables/tree-node): Expandable tree node component - [Tree Grid](https://new.cxjs.io/docs/tables/tree-grid): Grid with hierarchical data - [Searching Tree Grids](https://new.cxjs.io/docs/tables/searching-tree-grids): Search within tree structures - [Tree Operations](https://new.cxjs.io/docs/tables/tree-operations): Add, remove, and move tree nodes - [Tree Drag and Drop](https://new.cxjs.io/docs/tables/tree-drag-and-drop): Drag and drop in tree grids ### Charts #### SVG Primitives - [Svg](https://new.cxjs.io/docs/charts/svg): SVG container element - [Rectangle](https://new.cxjs.io/docs/charts/rectangle): SVG rectangle shape - [Ellipse](https://new.cxjs.io/docs/charts/ellipse): SVG ellipse and circle shapes - [Line](https://new.cxjs.io/docs/charts/line): SVG line element - [Text](https://new.cxjs.io/docs/charts/text): SVG text element with bindings - [ClipRect](https://new.cxjs.io/docs/charts/clip-rect): Clip content to rectangular region - [NonOverlappingRect](https://new.cxjs.io/docs/charts/non-overlapping-rect): Automatically position labels to avoid overlap #### Chart Basics - [Overview](https://new.cxjs.io/docs/charts/overview): Introduction to CxJS charting - [Chart](https://new.cxjs.io/docs/charts/chart): Chart container with axes configuration - [Gridlines](https://new.cxjs.io/docs/charts/gridlines): Background grid lines for charts - [Legend](https://new.cxjs.io/docs/charts/legend): Chart legend for series identification #### Axes - [NumericAxis](https://new.cxjs.io/docs/charts/numeric-axis): Axis for numeric data - [CategoryAxis](https://new.cxjs.io/docs/charts/category-axis): Axis for categorical data - [TimeAxis](https://new.cxjs.io/docs/charts/time-axis): Axis for date and time data - [Complex Labels](https://new.cxjs.io/docs/charts/complex-axis-labels): Custom axis label formatting - [Calculated Height](https://new.cxjs.io/docs/charts/calculated-chart-height): Dynamic chart height based on data #### Line Graphs - [LineGraph](https://new.cxjs.io/docs/charts/line-graph): Line chart from data array - [Stacked Lines Example](https://new.cxjs.io/docs/charts/stacked-lines): Multiple stacked line series #### Bars and Columns - [BarGraph](https://new.cxjs.io/docs/charts/bar-graph): Horizontal bar chart from data array - [Bar](https://new.cxjs.io/docs/charts/bar): Individual bar element - [ColumnGraph](https://new.cxjs.io/docs/charts/column-graph): Vertical column chart from data array - [Column](https://new.cxjs.io/docs/charts/column): Individual column element - [Stacked Bars Example](https://new.cxjs.io/docs/charts/stacked-bars): Stacked horizontal bars - [Stacked Columns Example](https://new.cxjs.io/docs/charts/stacked-columns): Stacked vertical columns - [Normalized Columns Example](https://new.cxjs.io/docs/charts/normalized-columns): 100% stacked columns - [Auto Width Columns Example](https://new.cxjs.io/docs/charts/auto-width-columns): Automatically sized column widths - [Bar Bullets Example](https://new.cxjs.io/docs/charts/bar-bullets): Bar chart with bullet markers - [Scrollable Bars Example](https://new.cxjs.io/docs/charts/scrollable-bars): Scrollable bar chart for many items - [Timeline Example](https://new.cxjs.io/docs/charts/timeline): Timeline visualization with bars - [Combined Chart Example](https://new.cxjs.io/docs/charts/combined-chart): Mix bars with other chart types #### Pie Charts - [PieChart](https://new.cxjs.io/docs/charts/pie-chart): Pie and donut charts - [PieLabel](https://new.cxjs.io/docs/charts/pie-label): Labels for pie slices - [Multi-level Pie Example](https://new.cxjs.io/docs/charts/multi-level-pie): Nested pie charts #### Markers and Ranges - [Marker](https://new.cxjs.io/docs/charts/marker): Point marker on chart - [ScatterGraph](https://new.cxjs.io/docs/charts/scatter-graph): Scatter plot from data array - [MarkerLine](https://new.cxjs.io/docs/charts/marker-line): Vertical or horizontal reference line - [Range](https://new.cxjs.io/docs/charts/range): Shaded range area on chart - [RangeMarker](https://new.cxjs.io/docs/charts/range-marker): Range marker with labels - [Swimlane](https://new.cxjs.io/docs/charts/swimlane): Horizontal swimlane band - [Swimlanes](https://new.cxjs.io/docs/charts/swimlanes): Multiple swimlane bands #### Utilities - [ColorMap](https://new.cxjs.io/docs/charts/color-map): Map data values to colors - [MouseTracker](https://new.cxjs.io/docs/charts/mouse-tracker): Track mouse position on chart - [MinMaxFinder](https://new.cxjs.io/docs/charts/min-max-finder): Find min/max values in data - [SnapPointFinder](https://new.cxjs.io/docs/charts/snap-point-finder): Snap cursor to nearest data point - [ValueAtFinder](https://new.cxjs.io/docs/charts/value-at-finder): Find value at cursor position - [PointReducers](https://new.cxjs.io/docs/charts/point-reducers): Aggregate and reduce chart data - [HoverSync](https://new.cxjs.io/docs/charts/hover-sync): Synchronize hover state across charts - [HoverSyncElement](https://new.cxjs.io/docs/charts/hover-sync-element): Apply hover effects to arbitrary elements ### Utilities #### Data Operations - [updateArray](https://new.cxjs.io/docs/utilities/update-array): Immutably update array elements - [append](https://new.cxjs.io/docs/utilities/append): Append elements to array - [merge](https://new.cxjs.io/docs/utilities/merge): Deep merge objects - [filter](https://new.cxjs.io/docs/utilities/filter): Filter array with predicate - [moveElement](https://new.cxjs.io/docs/utilities/move-element): Move element within array - [insertElement](https://new.cxjs.io/docs/utilities/insert-element): Insert element at index - [diffArrays](https://new.cxjs.io/docs/utilities/diff-arrays): Compare two arrays for differences #### Tree Operations - [updateTree](https://new.cxjs.io/docs/utilities/update-tree): Immutably update tree nodes - [findTreeNode](https://new.cxjs.io/docs/utilities/find-tree-node): Find node in tree structure - [findTreePath](https://new.cxjs.io/docs/utilities/find-tree-path): Get path to tree node - [removeTreeNodes](https://new.cxjs.io/docs/utilities/remove-tree-nodes): Remove nodes from tree #### Selectors & Computed - [Grouper](https://new.cxjs.io/docs/utilities/grouper): Group and aggregate data - [getComparer](https://new.cxjs.io/docs/utilities/get-comparer): Create comparison function - [Expression](https://new.cxjs.io/docs/utilities/expression): Dynamic expression evaluation #### Functions - [debounce](https://new.cxjs.io/docs/utilities/debounce): Delay function execution - [validatedDebounce](https://new.cxjs.io/docs/utilities/validated-debounce): Debounce with validation - [throttle](https://new.cxjs.io/docs/utilities/throttle): Limit function call frequency - [shallowEquals](https://new.cxjs.io/docs/utilities/shallow-equals): Shallow object comparison - [coalesce](https://new.cxjs.io/docs/utilities/coalesce): Return first defined value #### Search - [getSearchQueryPredicate](https://new.cxjs.io/docs/utilities/get-search-query-predicate): Create search filter function - [getSearchQueryHighlighter](https://new.cxjs.io/docs/utilities/get-search-query-highlighter): Highlight search matches - [escapeSpecialRegexCharacters](https://new.cxjs.io/docs/utilities/escape-special-regex-characters): Escape regex special chars #### Color - [parseColor](https://new.cxjs.io/docs/utilities/parse-color): Parse color strings - [Color Conversions](https://new.cxjs.io/docs/utilities/color-conversions): Convert between color formats #### Date - [zeroTime](https://new.cxjs.io/docs/utilities/zero-time): Set time to midnight - [monthStart](https://new.cxjs.io/docs/utilities/month-start): Get first day of month - [dateDiff](https://new.cxjs.io/docs/utilities/date-diff): Calculate date difference - [sameDate](https://new.cxjs.io/docs/utilities/same-date): Compare dates ignoring time - [minDate / maxDate](https://new.cxjs.io/docs/utilities/min-max-date): Find earliest or latest date - [encodeDate](https://new.cxjs.io/docs/utilities/encode-date): Encode date as string - [parseDateInvariant](https://new.cxjs.io/docs/utilities/parse-date-invariant): Parse date in invariant format #### DOM - [findFirst / closest](https://new.cxjs.io/docs/utilities/find-first-closest): Find DOM elements - [isFocusable](https://new.cxjs.io/docs/utilities/is-focusable): Check if element is focusable - [getActiveElement](https://new.cxjs.io/docs/utilities/get-active-element): Get currently focused element - [scrollElementIntoView](https://new.cxjs.io/docs/utilities/scroll-element-into-view): Scroll element into viewport - [findScrollableParent](https://new.cxjs.io/docs/utilities/find-scrollable-parent): Find scrollable ancestor - [getScrollerBoundingClientRect](https://new.cxjs.io/docs/utilities/get-scroller-bounding-client-rect): Get scroller bounds - [getTopLevelBoundingClientRect](https://new.cxjs.io/docs/utilities/get-top-level-bounding-client-rect): Get top-level element bounds - [getParentFrameBoundingClientRect](https://new.cxjs.io/docs/utilities/get-parent-frame-bounding-client-rect): Get parent frame bounds - [KeyCode](https://new.cxjs.io/docs/utilities/key-code): Keyboard key code constants #### Type Guards - [isArray](https://new.cxjs.io/docs/utilities/is-array): Check if value is array - [isObject](https://new.cxjs.io/docs/utilities/is-object): Check if value is object - [isString](https://new.cxjs.io/docs/utilities/is-string): Check if value is string - [isNumber](https://new.cxjs.io/docs/utilities/is-number): Check if value is number - [isFunction](https://new.cxjs.io/docs/utilities/is-function): Check if value is function - [isDefined](https://new.cxjs.io/docs/utilities/is-defined): Check if value is defined - [isUndefined](https://new.cxjs.io/docs/utilities/is-undefined): Check if value is undefined - [isNonEmptyArray](https://new.cxjs.io/docs/utilities/is-non-empty-array): Check for non-empty array - [isPromise](https://new.cxjs.io/docs/utilities/is-promise): Check if value is promise - [isDigit](https://new.cxjs.io/docs/utilities/is-digit): Check if character is digit - [isTouchDevice](https://new.cxjs.io/docs/utilities/is-touch-device): Detect touch-capable device - [isTouchEvent](https://new.cxjs.io/docs/utilities/is-touch-event): Check if event is touch event #### Misc - [Console](https://new.cxjs.io/docs/utilities/console): Debug logging utilities - [Event Callbacks](https://new.cxjs.io/docs/utilities/event-callbacks): Event handling helpers - [parseStyle](https://new.cxjs.io/docs/utilities/parse-style): Parse CSS style strings