Design System Components
Production-ready React components built with accessibility, performance, and developer experience in mind
Quick Start
1. Install the package
npm install @aerosnap/components2. Import and use components
import { Button, Card, Typography } from '@aerosnap/components'
function App() {
return (
<Card className="p-6">
<Typography variant="h2" className="mb-4">
Welcome to AEROSNAP
</Typography>
<Button variant="primary">
Get Started
</Button>
</Card>
)
}Component Categories
Organized by function and use case for easy discovery
Foundation
Core design elements and tokens
Colors
High UsageComprehensive color system with semantic tokens
// Primary colors
const colors = {
primary: {
50: '#f0f9ff',
500: '#3b82f6',
900: '#1e3a8a'
},
semantic: {
success: '#10b981',
warning: '#f59e0b',
error: '#ef4444'
}
}Typography
High UsageResponsive typography scale and components
<Typography variant="h1" className="mb-4">
Heading Level 1
</Typography>
<Typography variant="body" color="muted">
Body text with muted color
</Typography>Spacing
High UsageConsistent spacing system based on 8px grid
const spacing = {
xs: '0.5rem', // 8px
sm: '0.75rem', // 12px
md: '1rem', // 16px
lg: '1.5rem', // 24px
xl: '2rem', // 32px
}Layout
Structural components for page organization
Container
High UsageResponsive container with max-width constraints
<Container maxWidth="lg" className="px-4">
<div>Content goes here</div>
</Container>Grid
High UsageFlexible CSS Grid system with responsive breakpoints
<Grid container spacing={3}>
<Grid item xs={12} md={6}>
<Card>Item 1</Card>
</Grid>
<Grid item xs={12} md={6}>
<Card>Item 2</Card>
</Grid>
</Grid>Stack
Medium UsageOne-dimensional layout component with automatic spacing
<Stack direction="row" spacing={2} align="center">
<Button variant="primary">Primary</Button>
<Button variant="secondary">Secondary</Button>
</Stack>Interactive
User input and action components
Button
High UsageVersatile button component with multiple variants
<Button
variant="primary"
size="lg"
disabled={loading}
onClick={handleClick}
>
{loading ? <Spinner /> : 'Submit'}
</Button>Input
High UsageForm input with validation and accessibility features
<Input
label="Email Address"
type="email"
placeholder="Enter your email"
error={errors.email}
required
/>Select
Medium UsageDropdown selection with search and multi-select support
<Select
options={countries}
placeholder="Select country"
searchable
multiple
onChange={handleChange}
/>Display
Components for presenting information
Card
High UsageFlexible content container with elevation
<Card variant="elevated" className="p-6">
<CardHeader>
<CardTitle>Card Title</CardTitle>
</CardHeader>
<CardContent>
Content goes here
</CardContent>
</Card>Modal
Medium UsageOverlay dialog with backdrop and focus management
<Modal open={isOpen} onClose={handleClose}>
<ModalHeader>
<ModalTitle>Confirmation</ModalTitle>
</ModalHeader>
<ModalBody>
Are you sure you want to continue?
</ModalBody>
</Modal>Toast
Medium UsageNon-intrusive notification system
// Usage with hook
const { toast } = useToast()
toast({
title: 'Success!',
description: 'Your changes have been saved.',
variant: 'success'
})Design Tokens
Consistent design values that power our component system
Colors
Typography
Spacing
Component Usage Analytics
Most popular components across AEROSNAP projects
Ready to Build Amazing UIs?
Start using our component library today and accelerate your development