Design responsive layouts with breakpoints, mobile-first approach, and flexible grids. Use when creating responsive designs, implementing breakpoints, or optimizing for multiple screen sizes.
View on GitHubarmanzeroeight/fastagent-plugins
frontend-developer
plugins/frontend-developer/skills/responsive-design-advisor/SKILL.md
January 21, 2026
Select agents to install to:
npx add-skill https://github.com/armanzeroeight/fastagent-plugins/blob/main/plugins/frontend-developer/skills/responsive-design-advisor/SKILL.md -a claude-code --skill responsive-design-advisorInstallation paths:
.claude/skills/responsive-design-advisor/# Responsive Design Advisor
Design responsive layouts that work across all device sizes.
## Quick Start
Use mobile-first approach, flexible units (rem, %), CSS Grid/Flexbox, and test on real devices.
## Instructions
### Mobile-First Approach
**Start with mobile, enhance for larger screens:**
```css
/* Base styles (mobile) */
.container {
padding: 1rem;
}
/* Tablet */
@media (min-width: 768px) {
.container {
padding: 2rem;
}
}
/* Desktop */
@media (min-width: 1024px) {
.container {
padding: 3rem;
max-width: 1200px;
margin: 0 auto;
}
}
```
### Common Breakpoints
**Standard breakpoints:**
```css
/* Mobile: 0-639px (default) */
/* Tablet: 640px+ */
@media (min-width: 640px) { }
/* Laptop: 1024px+ */
@media (min-width: 1024px) { }
/* Desktop: 1280px+ */
@media (min-width: 1280px) { }
/* Large: 1536px+ */
@media (min-width: 1536px) { }
```
**Tailwind breakpoints:**
```jsx
<div className="
w-full // Mobile
md:w-1/2 // Tablet
lg:w-1/3 // Desktop
">
Content
</div>
```
### Flexible Layouts
**CSS Grid:**
```css
.grid {
display: grid;
gap: 1rem;
/* Mobile: 1 column */
grid-template-columns: 1fr;
}
@media (min-width: 768px) {
.grid {
/* Tablet: 2 columns */
grid-template-columns: repeat(2, 1fr);
}
}
@media (min-width: 1024px) {
.grid {
/* Desktop: 3 columns */
grid-template-columns: repeat(3, 1fr);
}
}
```
**Auto-fit grid:**
```css
.grid {
display: grid;
grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
gap: 1rem;
}
```
**Flexbox:**
```css
.flex-container {
display: flex;
flex-wrap: wrap;
gap: 1rem;
}
.flex-item {
flex: 1 1 100%; /* Mobile: full width */
}
@media (min-width: 768px) {
.flex-item {
flex: 1 1 calc(50% - 0.5rem); /* Tablet: 2 columns */
}
}
@media (min-width: 1024px) {
.flex-item {
flex: 1 1 calc(33.333% - 0.667rem); /* Desktop: 3 columns */
}
}
```
### Responsive Typography
**Fluid typography:**
```css
h1 {