Skip to content

Commit f71a7c8

Browse files
Copilothotlong
andcommitted
feat: Add website expression protocol for March 2026 preview
- Created complete website expression protocol in packages/spec/src/website/ - Added SEO configuration schemas with Open Graph and Twitter Cards - Added navigation and footer configuration schemas - Added content block schemas for landing pages (hero, features, testimonials, CTA, pricing, FAQ, etc.) - Added landing page and website configuration schemas - Created comprehensive test coverage for all website schemas - Generated JSON schemas and documentation - Updated package.json exports for website module - Preview release date: March 2026 Co-authored-by: hotlong <50353452+hotlong@users.noreply.github.com>
1 parent 7602413 commit f71a7c8

87 files changed

Lines changed: 8534 additions & 0 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.
Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
---
2+
title: ButtonConfig
3+
description: ButtonConfig Schema Reference
4+
---
5+
6+
## Properties
7+
8+
| Property | Type | Required | Description |
9+
| :--- | :--- | :--- | :--- |
10+
| **text** | `string` || Button text |
11+
| **href** | `string` || Button target URL or action |
12+
| **variant** | `Enum<'primary' \| 'secondary' \| 'outline' \| 'ghost' \| 'link'>` | optional | |
13+
| **size** | `Enum<'sm' \| 'md' \| 'lg'>` | optional | |
14+
| **target** | `Enum<'_self' \| '_blank'>` | optional | |
15+
| **icon** | `string` | optional | Icon name |
Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
---
2+
title: ContentBlock
3+
description: ContentBlock Schema Reference
4+
---
5+
Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
---
2+
title: ContentSection
3+
description: ContentSection Schema Reference
4+
---
5+
6+
## Properties
7+
8+
| Property | Type | Required | Description |
9+
| :--- | :--- | :--- | :--- |
10+
| **type** | `string` || |
11+
| **id** | `string` | optional | Section ID for anchor links |
12+
| **title** | `string` | optional | Section title |
13+
| **content** | `string` || Content in markdown or HTML format |
14+
| **align** | `Enum<'left' \| 'center' \| 'right'>` | optional | |
15+
| **maxWidth** | `Enum<'sm' \| 'md' \| 'lg' \| 'xl' \| 'full'>` | optional | |
Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
---
2+
title: CtaSection
3+
description: CtaSection Schema Reference
4+
---
5+
6+
## Properties
7+
8+
| Property | Type | Required | Description |
9+
| :--- | :--- | :--- | :--- |
10+
| **type** | `string` || |
11+
| **id** | `string` | optional | Section ID for anchor links |
12+
| **headline** | `string` || CTA headline |
13+
| **description** | `string` | optional | CTA description |
14+
| **buttons** | `object[]` || CTA buttons |
15+
| **backgroundColor** | `string` | optional | Background color (hex, rgb, or preset) |
16+
| **align** | `Enum<'left' \| 'center' \| 'right'>` | optional | |
Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
---
2+
title: CustomHtmlSection
3+
description: CustomHtmlSection Schema Reference
4+
---
5+
6+
## Properties
7+
8+
| Property | Type | Required | Description |
9+
| :--- | :--- | :--- | :--- |
10+
| **type** | `string` || |
11+
| **id** | `string` | optional | Section ID for anchor links |
12+
| **html** | `string` || Custom HTML content |
Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
---
2+
title: FaqItem
3+
description: FaqItem Schema Reference
4+
---
5+
6+
## Properties
7+
8+
| Property | Type | Required | Description |
9+
| :--- | :--- | :--- | :--- |
10+
| **question** | `string` || FAQ question |
11+
| **answer** | `string` || FAQ answer (markdown or HTML) |
Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
---
2+
title: FaqSection
3+
description: FaqSection Schema Reference
4+
---
5+
6+
## Properties
7+
8+
| Property | Type | Required | Description |
9+
| :--- | :--- | :--- | :--- |
10+
| **type** | `string` || |
11+
| **id** | `string` | optional | Section ID for anchor links |
12+
| **title** | `string` | optional | Section title |
13+
| **description** | `string` | optional | Section description |
14+
| **items** | `object[]` || FAQ items |
15+
| **style** | `Enum<'accordion' \| 'grid'>` | optional | |
Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
---
2+
title: FeatureItem
3+
description: FeatureItem Schema Reference
4+
---
5+
6+
## Properties
7+
8+
| Property | Type | Required | Description |
9+
| :--- | :--- | :--- | :--- |
10+
| **icon** | `string` | optional | Icon name or URL |
11+
| **title** | `string` || Feature title |
12+
| **description** | `string` || Feature description |
13+
| **link** | `object` | optional | Optional link to learn more |
Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
---
2+
title: FeaturesSection
3+
description: FeaturesSection Schema Reference
4+
---
5+
6+
## Properties
7+
8+
| Property | Type | Required | Description |
9+
| :--- | :--- | :--- | :--- |
10+
| **type** | `string` || |
11+
| **id** | `string` | optional | Section ID for anchor links |
12+
| **title** | `string` | optional | Section title |
13+
| **description** | `string` | optional | Section description |
14+
| **features** | `object[]` || List of features |
15+
| **columns** | `Enum<'2' \| '3' \| '4'>` | optional | Number of columns in grid |
16+
| **align** | `Enum<'left' \| 'center' \| 'right'>` | optional | |
Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
---
2+
title: HeroSection
3+
description: HeroSection Schema Reference
4+
---
5+
6+
## Properties
7+
8+
| Property | Type | Required | Description |
9+
| :--- | :--- | :--- | :--- |
10+
| **type** | `string` || |
11+
| **id** | `string` | optional | Section ID for anchor links |
12+
| **headline** | `string` || Main headline |
13+
| **subheadline** | `string` | optional | Subheadline or tagline |
14+
| **description** | `string` | optional | Description text |
15+
| **buttons** | `object[]` | optional | CTA buttons |
16+
| **backgroundImage** | `object` | optional | Hero background image |
17+
| **backgroundVideo** | `object` | optional | Hero background video |
18+
| **align** | `Enum<'left' \| 'center' \| 'right'>` | optional | |
19+
| **overlayOpacity** | `number` | optional | |

0 commit comments

Comments
 (0)