mcpField
B
bitrix-components

bitrix-components

github.com/bxmaximumDevelopment47198 installsUpdated 2w ago
Repository

About bitrix-components

A component development reference for Bitrix developers, covering structure, templates, caching, SEF, and AJAX. It also documents constraints for parameter handling, output escaping, and cache keys.

Key features

  1. 01Component directory and file structure rules
  2. 02Template lookup, overrides, and rendering guidance
  3. 03Caching, pagination, SEF, and AJAX rules
  4. 04Component parameter-casting requirements
  5. 05Output escaping and cache-key constraints

Use cases

  1. 01Scaffold a local custom Bitrix component
  2. 02Find template override and rendering guidance
  3. 03Build components with pagination or SEF
  4. 04Configure component caching and AJAX actions

Install

Copy the command and run it in a terminal.

$npx skills add https://github.com/bxmaximum/bitrix-framework-skills --skill bitrix-components

After installing, type/bitrix-componentsin Claude Code to confirm it loaded.

Bundled files

References and scripts installed along with SKILL.md.

rules/
cache-sef-ajax.md
structure.md
template.md

Details

From the project README

Bitrix components

Baseline: main 23.0+ · Verified: main 26.800.0

TaskRead
Placement, scaffold, class.php, params, .description.php, .parameters.phprules/structure.md
Template search order and overrides, template.php, result_modifier.php, component_epilog.phprules/template.md
Result cache, paged list, complex SEF, AJAX actionsrules/cache-sef-ajax.md
PageNavigation, pager templatesbitrix-cms-basics
Grid, filter, toolbar in templatesbitrix-ui

Invariants

  • Own components in /local/components/<vendor>/; kernel components are changed only by copying their template to /local/templates/<site>/components/….
  • Logic in class.php and services; templates only render $arResult, escaping output.
  • onPrepareComponentParams() casts every param; ~KEY is the raw value.
  • Everything that changes output is in the cache key (user groups, page number, filter).
  • Nested components get $component as the 4th IncludeComponent() argument.
  • AJAX through Controllerable actions with prefilters and signed parameters.

Comments

Markdown supported