← ClaudeAtlas

coldbox-layout-developmentlisted

Use this skill when creating ColdBox layouts (master page templates), building admin layouts, creating reusable view partials, implementing nested content rendering with renderView(), switching layouts dynamically per handler, or organizing HTML structure around content views.
ColdBox/skills · ★ 0 · Web & Frontend · score 61
Install: claude install-skill ColdBox/skills
# Layout Development ## When to Use This Skill Use this skill when creating ColdBox layout templates that wrap views with a consistent HTML structure (navigation, headers, footers). ## Language Mode Reference Examples use **BoxLang (`.bx`)** syntax by default. Adapt for your target language: | Concept | BoxLang (`.bx`) | CFML (`.cfc`) | |---------|-----------------|---------------| | Class declaration | `class [extends="..."] {` | `component [extends="..."] {` | | DI annotation | `@inject` above `property name="svc";` | `property name="svc" inject="svc";` | | View templates | `.bxm` suffix | `.cfm` / `.cfml` suffix | | Tag prefix | `<bx:if>`, `<bx:output>`, `<bx:set>` | `<cfif>`, `<cfoutput>`, `<cfset>` | > **CFML Compat Mode**: With BoxLang + CFML Compat module, `.bx` and `.cfc` files coexist freely. BoxLang-native classes use `class {}` (`.bx` files); CFML-compat classes use `component {}` (`.cfc` files). ## Core Concepts ColdBox layouts: - Live in `layouts/` directory - Wrap rendered views with headers, footers, navigation - Default layout is `Main.cfm` - Views render within layouts via `#renderView()#` - Can be overridden per handler or per action - Support nested partials with `#renderView( view = "shared/..." )#` ## Main Layout (BoxLang/CFML) ```cfml <!--- layouts/Main.cfm ---> <!DOCTYPE html> <html lang="en"> <head> <cfoutput> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>#encodeForHTML( p