breakpoints
Skill50 starsChanged 11 months agoMITView on GitHub
Generates responsive breakpoint tokens for media queries and container queries. Use when setting up responsive design, mobile-first layouts, or viewport-based styling. Outputs CSS, Tailwind, or JSON.
In this repository29 other files it gives its agents.
- CLAUDE.mdCLAUDE.md
- aria-patternsSkill
- color-contrastSkill
- focus-statesSkill
- component-docsSkill
- token-docsSkill
- angularSkill
- reactSkill
- svelteSkill
- vueSkill
- getting-startedSkill
- animation-principlesSkill
- compound-componentsSkill
- dark-modeSkill
- icon-systemSkill
- layout-primitivesSkill
- color-scaleSkill
- design-tokens-structureSkill
- motion-scaleSkill
- radius-scaleSkill
- responsive-typographySkill
- shadow-scaleSkill
- spacing-scaleSkill
- type-scaleSkill
- z-index-scaleSkill
- figmaSkill
- framerSkill
- storybookSkill
- style-dictionarySkill
The file
We split this skill into the rules it gives an agent
2 rules. About 0 are common, 2 are distinctive, and 0 are very specific to this project.
≈0
Common · estimate
Many files like this have a rule of this kind.
≈2
Distinctive · estimate
This author's own choices. Worth a look.
0
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Distinctive: line 39
Generate: Create breakpoint scale with media query helpers
- Distinctive: line 178
Test in-between: Don't just test at exact breakpoints
≈ “Common” is an estimate: at least 1 in 5 of the 350,495 skill files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
Breakpoints Generator
Overview
Generate consistent responsive breakpoint tokens for mobile-first or desktop-first design. Includes common device-based presets and custom configuration options.
When to Use
- Setting up responsive design tokens
- Standardizing media queries across a project
- Creating container query breakpoints
- Migrating from arbitrary breakpoints to tokens
Quick Reference: Common Breakpoints
| Name | Min Width | Target Devices |
| xs | 0 | Small phones |
| sm | 640px | Large phones, small tablets |
| md | 768px | Tablets portrait |
| lg | 1024px | Tablets landscape, laptops |
| xl | 1280px | Desktops |
| 2xl | 1536px | Large desktops |
The Process
- Ask approach: Mobile-first (min-width) or desktop-first (max-width)?
- Ask preset or custom:
- Preset: Tailwind, Bootstrap, Material, or Custom
- Custom: Define your own values
- Ask steps: How many breakpoints (4-6 typical)
- Ask container queries: Include container query tokens?
- Ask format: CSS, Tailwind, JSON, or SCSS?
- Generate: Create breakpoint scale with media query helpers
Breakpoint Presets
| Preset | Values | Character |
| Tailwind | 640, 768, 1024, 1280, 1536 | Content-focused |
| Bootstrap | 576, 768, 992, 1200, 1400 | Traditional |
| Material | 600, 905, 1240, 1440 | Google spec |
| Minimal | 640, 1024, 1440 | Simple 3-tier |
Output Formats
CSS Custom Properties + Media Queries:
:root {
--breakpoint-sm: 640px;
--breakpoint-md: 768px;
--breakpoint-lg: 1024px;
--breakpoint-xl: 1280px;
--breakpoint-2xl: 1536px;
}
/* Mobile-first media queries (use with @media) */
/* @media (min-width: 640px) - sm and up */
/* @media (min-width: 768px) - md and up */
/* @media (min-width: 1024px) - lg and up */
/* @media (min-width: 1280px) - xl and up */
/* @media (min-width: 1536px) - 2xl and up */Tailwind Config:
module.exports = {
theme: {
screens: {
'sm': '640px',
'md': '768px',
'lg': '1024px',
'xl': '1280px',
'2xl': '1536px',
}
}
}JSON Tokens:
{
"breakpoint": {
"sm": { "value": "640px", "type": "dimension" },
"md": { "value": "768px", "type": "dimension" },
"lg": { "value": "1024px", "type": "dimension" },
"xl": { "value": "1280px", "type": "dimension" },
"2xl": { "value": "1536px", "type": "dimension" }
}
}SCSS Variables + Mixins:
$breakpoint-sm: 640px;
$breakpoint-md: 768px;
$breakpoint-lg: 1024px;
$breakpoint-xl: 1280px;
$breakpoint-2xl: 1536px;
@mixin sm-up {
@media (min-width: $breakpoint-sm) { @content; }
}
@mixin md-up {
@media (min-width: $breakpoint-md) { @content; }
}
@mixin lg-up {
@media (min-width: $breakpoint-lg) { @content; }
}
@mixin xl-up {
@media (min-width: $breakpoint-xl) { @content; }
}
@mixin 2xl-up {
@media (min-width: $breakpoint-2xl) { @content; }
}
// Usage: @include md-up { .element { width: 50%; } }Container Queries
Modern CSS container queries for component-level responsiveness:
/* Container query breakpoints */
:root {
--container-sm: 320px;
--container-md: 480px;
--container-lg: 640px;
--container-xl: 800px;
}
/* Define container */
.card-container {
container-type: inline-size;
container-name: card;
}
/* Query container */
@container card (min-width: 480px) {
.card-content {
display: grid;
grid-template-columns: 1fr 1fr;
}
}Mobile-First vs Desktop-First
| Approach | Media Query | Write Styles For |
| Mobile-first | min-width | Small screens first, enhance up |
| Desktop-first | max-width | Large screens first, reduce down |
Mobile-first (recommended):
.element { width: 100%; }
@media (min-width: 768px) { .element { width: 50%; } }
@media (min-width: 1024px) { .element { width: 33%; } }Desktop-first:
.element { width: 33%; }
@media (max-width: 1023px) { .element { width: 50%; } }
@media (max-width: 767px) { .element { width: 100%; } }Best Practices
- Content-driven breakpoints: Let content determine where layout breaks, not device sizes
- Fewer is better: 4-6 breakpoints handles most cases
- Test in-between: Don't just test at exact breakpoints
- Use container queries for component-level responsiveness
- Avoid pixel-perfect: Focus on fluid layouts between breakpoints
Utility Classes (Tailwind-style)
/* Visibility utilities */
.hidden { display: none; }
.sm\:block { @media (min-width: 640px) { display: block; } }
.md\:hidden { @media (min-width: 768px) { display: none; } }
/* Responsive grid */
.grid-cols-1 { grid-template-columns: 1fr; }
.md\:grid-cols-2 { @media (min-width: 768px) { grid-template-columns: repeat(2, 1fr); } }
.lg\:grid-cols-3 { @media (min-width: 1024px) { grid-template-columns: repeat(3, 1fr); } }Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

