๐ Data Loading Options
- ๐ Static Data
- ๐ HTTP API
- ๐ Hybrid Loading
๐ Static Data Loading
Projects loaded from static JSON/YAML files. Best for:
- Personal portfolios
- Static documentation sites
- Small to medium project collections
- Fast loading and offline support
๐ฏ Live Projects Available! The interactive Projects component is running live at /projects with real data. See real-time data loading and filtering in action! This demo shows the configuration and usage patterns.
โก Component Features
๐ Search & Filtering
- โ Real-time text search across all fields
- โ Category-based filtering
- โ Tag-based filtering
- โ Status filtering (Active, Development, Archived)
- โ Featured projects highlighting
๐จ Display Options
- โ Grid and list view options
- โ Responsive design
- โ Customizable card layouts
- โ Theme-aware styling
- โ Loading states and error handling
โ๏ธ Configuration Options
Basic Configuration
import Projects from '@site/src/components/Projects';
// Static data example
<Projects
projectsData={staticProjectsData}
enableSearch={true}
enableFiltering={true}
showCategories={true}
gridColumns={3}
/>
// HTTP API example
<Projects
apiEndpoint="/api/projects"
fallbackToStatic={true}
cacheTimeout={300000} // 5 minutes
enableSearch={true}
enableFiltering={true}
/>
// Minimal configuration
<Projects projectsData={projects} />Data Schema (projects.yml)
projects:
- id: "project-id"
name: "Project Name"
description: "Project description"
url: "https://github.com/user/repo"
tags: ["React", "TypeScript"]
category: "library"
featured: true
status: "active"
# ... more fields๐ Integration & Documentation
Learn more about implementing and customizing the Projects component