layout
by BytesAgain
Generate CSS layouts. Use when building grid or flexbox layouts, creating responsive breakpoints, or scaffolding HTML pages.
安装
claude skill add --url github.com/openclaw/skills/tree/main/skills/bytesagain/layout文档
Layout
Generate CSS Grid layouts, Flexbox containers, responsive breakpoint media queries, page scaffold HTML, and spacing utility classes — all from a single shell script. Analyze existing CSS files for layout property usage.
Commands
grid
Generate a CSS Grid layout with configurable columns, rows, gap, named areas, and custom templates.
Options:
| Flag | Default | Description |
|---|---|---|
--columns | 3 | Number of grid columns |
--rows | 1 | Number of grid rows |
--gap | 1rem | Gap between grid items |
--col-template | repeat(N, 1fr) | Custom grid-template-columns value |
--row-template | (auto) | Custom grid-template-rows value |
--areas | (none) | Named grid areas (pipe-separated rows) |
--class | grid-container | CSS class name |
--output | (stdout) | Write CSS to file |
bash scripts/script.sh grid --columns 4 --rows 2 --gap "2rem" --output grid.css
bash scripts/script.sh grid --areas "header header header|sidebar main main|footer footer footer" --output layout.css
flex
Generate a Flexbox layout with direction, wrapping, alignment, and per-item grow factor.
Options:
| Flag | Default | Description |
|---|---|---|
--direction | row | Flex direction (row, column, etc.) |
--wrap | (flag) | Enable flex-wrap: wrap |
--nowrap | (flag) | Force flex-wrap: nowrap |
--justify | flex-start | justify-content value |
--align | stretch | align-items value |
--items | 3 | Number of flex children to generate |
--grow | 0 | flex-grow value for children |
--class | flex-container | CSS class name |
--output | (stdout) | Write CSS to file |
bash scripts/script.sh flex --direction row --wrap --justify space-between --items 5 --output flex.css
responsive
Generate mobile-first (min-width) and desktop-first (max-width) media query breakpoints.
Options:
| Flag | Required | Description |
|---|---|---|
--breakpoints | Yes | Comma-separated name:px pairs |
--prefix | No (default screen-) | Class name prefix |
--output | No | Write CSS to file |
bash scripts/script.sh responsive --breakpoints "sm:640,md:768,lg:1024,xl:1280" --output breakpoints.css
scaffold
Generate a complete HTML page skeleton with semantic sections. Supports four layout types:
- basic — header, nav, main, footer
- holy-grail — header, left sidebar, main, right sidebar, footer
- dashboard — header with logo/nav/user, sidebar navigation, card grid, data table
- landing — header with nav links, hero section with CTA, features grid, pricing cards, footer
Options:
| Flag | Default | Description |
|---|---|---|
--type | basic | Layout type (basic, holy-grail, dashboard, landing) |
--title | Page | HTML <title> value |
--css | (none) | Path to CSS file to link |
--output | (stdout) | Write HTML to file |
bash scripts/script.sh scaffold --type dashboard --title "Admin Panel" --css styles.css --output dashboard.html
spacing
Generate a spacing scale system with CSS custom properties and margin/padding utility classes.
Options:
| Flag | Default | Description |
|---|---|---|
--base | 4 | Base spacing unit |
--steps | 8 | Number of scale steps |
--unit | px | CSS unit (px, rem, etc.) |
--prefix | sp | CSS variable prefix |
--output | (stdout) | Write CSS to file |
bash scripts/script.sh spacing --base 8 --steps 10 --unit px --output spacing.css
analyze
Analyze an existing CSS file and report layout property usage including display types, media queries, grid/flex properties, nesting depth, and file stats.
Options:
| Flag | Required | Description |
|---|---|---|
--input | Yes | Path to CSS file to analyze |
bash scripts/script.sh analyze --input styles.css
Output
- grid — CSS file with
.grid-containerand numbered__item-Nrules - flex — CSS file with
.flex-containerand numbered__item-Nrules - responsive — CSS file with
min-widthandmax-widthmedia query blocks - scaffold — Complete HTML5 document with semantic sections and optional CSS link
- spacing — CSS file with
:rootcustom properties plus.m-*,.mt-*,.p-*,.px-*(etc.) utility classes - analyze — Stdout report: rule block count, display type breakdown, media queries, grid/flex properties, nesting depth, file stats
Data Storage
No persistent data. All output goes to stdout or to the file specified by --output. No data directory is created.
Requirements
- Bash 4+
- Standard Unix utilities:
grep,wc,du,head,sort - No API keys, no external dependencies
When to Use
- Bootstrapping a new web project — generate grid and flex CSS foundations in seconds instead of writing boilerplate by hand
- Creating responsive breakpoints — produce a consistent set of mobile-first and desktop-first media queries from named breakpoints
- Scaffolding HTML pages — generate semantic page skeletons for dashboards, landing pages, holy-grail layouts, or basic sites
- Building a spacing system — create a uniform spacing scale with margin/padding utility classes like Tailwind but custom-fit
- Auditing existing CSS — analyze a stylesheet to understand its layout property usage, media queries, and nesting complexity
Examples
# Generate a 12-column grid with named areas
bash scripts/script.sh grid --columns 12 --gap "1.5rem" \
--areas "header header header header header header header header header header header header|sidebar sidebar main main main main main main main main main main|footer footer footer footer footer footer footer footer footer footer footer footer" \
--output grid.css
# Create a centered flex navbar
bash scripts/script.sh flex --direction row --justify center --align center --items 6 --class navbar --output navbar.css
# Generate responsive breakpoints with custom prefix
bash scripts/script.sh responsive --breakpoints "xs:480,sm:640,md:768,lg:1024,xl:1280,xxl:1536" --prefix "bp-" --output breakpoints.css
# Scaffold a landing page with linked CSS
bash scripts/script.sh scaffold --type landing --title "Product Launch" --css main.css --output index.html
# Analyze an existing stylesheet
bash scripts/script.sh analyze --input existing-styles.css
Tips
- Use
--outputto write directly to a file; omit it to pipe or preview on stdout - Combine
grid+responsive+spacingto scaffold a complete design system - The
scaffoldcommand produces clean HTML5 — pair it with your generated CSS files - Run
analyzeon legacy CSS before refactoring to understand what you're working with
Powered by BytesAgain | bytesagain.com | hello@bytesagain.com