Bricks і addX()

Brick — це одна capability Stack: «мені потрібен HTTP», «мені потрібна сесія», «мені потрібен Whoops». Кожен addX() реєструє саме її і повертає builder (set* для конфігу, with* для opt-in). Навіщо каталог окремо від рецептів: щоб швидко відповісти «який метод увімкнути», не перечитуючи весь трек Огляд.

Не варто додавати все «про запас». API без cookie не потребує Session; чистий JSON API може обійтись без View; Logging потрібен, коли ErrorHandling хоче писати в Monolog, а не лише в error_log. Менше capabilities — менший контейнер і зрозуміліший Bootstrap.

Каталог capabilities

Порядок рядків збігається з треком Огляд (крок у таблиці). Capabilities поза основним треком — внизу.

Крок addX() Builder Довідник
1 addHttp() HttpBuilder Http brick
2 addView() ViewBuilder View brick
3 addValidation() ValidationBuilder Validation brick
5 addSession() SessionBuilder Session brick
6 addDatabase() DatabaseBuilder Database brick
6 addConsole() ConsoleBuilder Console brick
7 addErrorHandling() ErrorHandlingBuilder ErrorHandling brick
8 addLogging() LoggingBuilder Logging brick
8 addMasking() MaskingBuilder Masking brick
10 addCasting() CastingBuilder Casting brick
— addEvents() EventsBuilder Events brick
— addTelemetry() TelemetryBuilder Telemetry brick
— addComponents() ComponentsBuilder Components brick

addProvider()

Коли сервіс специфічний для вашого додатку і не заслуговує окремого brick у Stack — реєструйте власний provider поруч із capabilities. Так glue лишається явним, а загальний API Stack не роздувається під кожен проєкт.

$stack->addProvider(new MyGlueServiceProvider());

Модель збірки — Огляд ConceptStack. Живі приклади — Огляд.