UI Components
33 primitive components: Button, Input, Card, Badge, Alert, and more.
Velocity includes 56 components organized by purpose.
UI Components
33 primitive components: Button, Input, Card, Badge, Alert, and more.
Layout Components
4 components: Header, Footer, ThemeToggle, Analytics.
Pattern Components
3 composed components: ContactForm, NewsletterForm, FormField.
Blog Components
4 components: ArticleHero, BlogCard, ShareButtons, RelatedPosts.
Landing Components
7 components: Hero, CTA, FeatureTabs, Credibility, and more.
SEO Components
3 components: SEO, JsonLd, Breadcrumbs.
| Category | Count | Description |
|---|---|---|
| UI Components | 33 | Button, Input, Card, Badge, Alert, etc. |
| Layout Components | 4 | Header, Footer, ThemeToggle, Analytics |
| Pattern Components | 3 | ContactForm, NewsletterForm, FormField |
| Blog Components | 4 | ArticleHero, BlogCard, ShareButtons, RelatedPosts |
| Landing Components | 7 | Hero, CTA, FeatureTabs, etc. |
| SEO Components | 3 | SEO, JsonLd, Breadcrumbs |
| Hero Components | 2 | Hero variants |
| Total | 56 |
---import Button from '@/components/ui/Button.astro';import Card from '@/components/ui/Card.astro';---
<Button>Click me</Button><Card>Content</Card>All components use the @/ alias pointing to src/:
// tsconfig.json{ "compilerOptions": { "paths": { "@/*": ["./src/*"] } }}Most components accept variant and size props:
<Button variant="primary" size="lg">Large Primary</Button><Button variant="outline" size="sm">Small Outline</Button>For components on dark backgrounds:
<Button colorScheme="invert">On Dark Background</Button>Some components support responsive variants:
<Card padding={{ base: 'md', lg: 'lg' }}> Responsive padding</Card>