Skip to content
Skillpedia
Websites & UI (frontend)48k · #3536

makepad-layout

Enables your agent to arrange elements on the screen using Makepad's layout system. Essential for creating well-structured and adaptable interfaces.

What it does

This tool helps arrange visual elements in an interface using Makepad's layout system. You can define how items align, the space between them, and how they fill the screen.

When to use it

  • ✓When you need to arrange buttons in a row.
  • ✓To center text on a screen.
  • ✓To make a header take full width and content take the rest.

Example of what to ask your AI

“How do I center a button on the screen using Makepad?”

Want more? Open the sections below.

How to use

The easiest way: copy the message below and paste it into Claude, ChatGPT, Cursor or any AI. It reads the skill and follows the instructions.

Skill link

https://github.com/sickn33/agentic-awesome-skills/blob/main/plugins/agentic-awesome-skills-claude/skills/makepad-layout/SKILL.md

Ready-to-paste message

Use this skill to help me: https://github.com/sickn33/agentic-awesome-skills/blob/main/plugins/agentic-awesome-skills-claude/skills/makepad-layout/SKILL.md Read the SKILL.md file at that link and follow its instructions for my task.
How it works

Makepad arranges elements visually. You set properties like 'flow' (direction), 'align' (alignment), and 'padding' (inner spacing) to control the position and size of items on the screen.

Installation

Easiest way: copy the skill link and paste it into Claude, ChatGPT or Cursor asking it to follow the instructions.

In the terminal (Claude Code, Codex, Cursor), in your project folder:

npx skills add sickn33/agentic-awesome-skills --skill makepad-layout

Or download just the file:

curl -L https://raw.githubusercontent.com/sickn33/agentic-awesome-skills/main/plugins/agentic-awesome-skills-claude/skills/makepad-layout/SKILL.md -o SKILL.md
Technical content (original SKILL.md)

Original text by the author, straight from GitHub.

Supporting material availability

This catalog copy contains the inline guidance below, but does not include the following supporting paths. They are external prerequisites, not bundled files:

  • ./references/layout-system.md
  • ./references/core-types.md

Ask for the original supporting material or an existing installation before using a step that depends on these paths; this catalog does not identify a verified download source for them. Resolve each path relative to that installation, inspect its contents, and verify any applicable license and execution prerequisites. Do not run a command or claim a referenced procedure was followed until its required file exists. Do not fabricate the missing scripts or treat an unrelated file with the same name as equivalent. Independent steps fully documented here can proceed within the user’s authorized scope; report any dependent step as unavailable.

Makepad Layout Skill

Version: makepad-widgets (dev branch) | Last Updated: 2026-01-19

Check for updates: https://crates.io/crates/makepad-widgets

You are an expert at Makepad layout system. Help users by:

  • Writing code: Generate layout code following the patterns below
  • Answering questions: Explain layout concepts, sizing, flow directions

When to Use

  • You need to size, align, or position widgets in a Makepad UI.
  • The task involves Walk, Align, Fit, Fill, padding, spacing, or container flow configuration.
  • You want Makepad-specific layout solutions for centering, responsiveness, or composition.

Documentation

Refer to the local files for detailed documentation:

  • ./references/layout-system.md - Complete layout reference
  • ./references/core-types.md - Walk, Align, Margin, Padding types

IMPORTANT: Documentation Completeness Check

Before answering questions, Claude MUST:

  1. Read the relevant reference file(s) listed above
  2. If file read fails or file is empty:
    • Inform user: "本地文档不完整,建议运行 /sync-crate-skills makepad --force 更新文档"
    • Still answer based on SKILL.md patterns + built-in knowledge
  3. If reference file exists, incorporate its content into the answer

Key Patterns

1. Basic Layout Container

<View> {
    width: Fill
    height: Fill
    flow: Down
    padding: 16.0
    spacing: 8.0

    <Label> { text: "Item 1" }
    <Label> { text: "Item 2" }
}

2. Centering Content

<View> {
    width: Fill
    height: Fill
    align: { x: 0.5, y: 0.5 }

    <Label> { text: "Centered" }
}

3. Horizontal Row Layout

<View> {
    width: Fill
    height: Fit
    flow: Right
    spacing: 10.0
    align: { y: 0.5 }  // Vertically center items

    <Button> { text: "Left" }
    <View> { width: Fill }  // Spacer
    <Button> { text: "Right" }
}

4. Fixed + Flexible Layout

<View> {
    width: Fill
    height: Fill
    flow: Down

    // Fixed header
    <View> {
        width: Fill
        height: 60.0
    }

    // Flexible content
    <View> {
        width: Fill
        height: Fill  // Takes remaining space
    }
}

Layout Properties Reference

Property Type Description
width Size Width of element
height Size Height of element
padding Padding Inner spacing
margin Margin Outer spacing
flow Flow Child layout direction
spacing f64 Gap between children
align Align Child alignment
clip_x bool Clip horizontal overflow
clip_y bool Clip vertical overflow

Size Values

Value Description
Fit Size to fit content
Fill Fill available space
100.0 Fixed size in pixels
Fixed(100.0) Explicit fixed size

Flow Directions

Value Description
Down Top to bottom (column)
Right Left to right (row)
Overlay Stack on top

Align Values

Value Position
{ x: 0.0, y: 0.0 } Top-left
{ x: 0.5, y: 0.0 } Top-center
{ x: 1.0, y: 0.0 } Top-right
{ x: 0.0, y: 0.5 } Middle-left
{ x: 0.5, y: 0.5 } Center
{ x: 1.0, y: 0.5 } Middle-right
{ x: 0.0, y: 1.0 } Bottom-left
{ x: 0.5, y: 1.0 } Bottom-center
{ x: 1.0, y: 1.0 } Bottom-right

Box Model

+---------------------------+
|         margin            |
|  +---------------------+  |
|  |      padding        |  |

…
FAQ

What do 'Fill' and 'Fit' mean?

'Fill' makes an element take up all available space, while 'Fit' makes it adjust to its content's size.

How do I create space between elements?

You can use the 'spacing' property to set a gap between items when they are arranged in a row ('flow: Right') or column ('flow: Down').

What is 'Overlay'?

'Overlay' is a layout direction where elements are stacked on top of each other, like layers.

Details

Original description by the author

CRITICAL: Use for Makepad layout system. Triggers on: makepad layout, makepad width, makepad height, makepad flex, makepad padding, makepad margin, makepad flow, makepad align, Fit, Fill, Size, Walk, "how to center in makepad", makepad 布局, makepad 宽度, makepad 对齐, makepad 居中

repo: sickn33/agentic-awesome-skills

Popularity

GitHub stars
48k
Ranking position
#3536
License
MIT
Updated
10/15/2026

Is this skill useful?

0

Sign in to vote.

Comments

  • …

More skills from this repository

Similar skills