diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml
index 040f889..0fadddf 100644
--- a/.github/workflows/ci.yml
+++ b/.github/workflows/ci.yml
@@ -13,7 +13,5 @@ jobs:
- uses: actions/setup-node@v4
with:
node-version: "22"
- - name: Placeholder
- run: |
- node --version
- echo "Add linting and tests with the first implementation PR."
+ - name: Validate static dashboard
+ run: node scripts/validate.mjs
diff --git a/README.md b/README.md
index 6a0806d..0f297cd 100644
--- a/README.md
+++ b/README.md
@@ -26,3 +26,17 @@ The dashboard must only consume aggregate, publication-approved data. No raw con
## First Milestone
Build a static dashboard using synthetic aggregate data, including suppression rules for cohorts below the publication threshold.
+
+## Current Prototype
+
+This repo includes a static synthetic aggregate dashboard:
+
+```bash
+python3 -m http.server 8000
+```
+
+Then open `http://127.0.0.1:8000`.
+
+The dashboard reads `data/synthetic_aggregate.json`, displays aggregate dimension counts,
+and suppresses cohorts below `min_public_cohort`. It must not ship raw conversations,
+quotes, individual records, schools, locations, or reviewer-only data.
diff --git a/data/synthetic_aggregate.json b/data/synthetic_aggregate.json
new file mode 100644
index 0000000..4920ced
--- /dev/null
+++ b/data/synthetic_aggregate.json
@@ -0,0 +1,25 @@
+{
+ "schema_version": "0.1.0",
+ "status": "Synthetic draft",
+ "record_count": 12,
+ "min_public_cohort": 5,
+ "generated_at": "2026-07-12",
+ "dimensions": [
+ {
+ "name": "academic_support",
+ "count": 8
+ },
+ {
+ "name": "emotional_support",
+ "count": 6
+ },
+ {
+ "name": "identity_or_relationships",
+ "count": 4
+ },
+ {
+ "name": "safety_sensitive",
+ "count": 2
+ }
+ ]
+}
diff --git a/index.html b/index.html
new file mode 100644
index 0000000..cc4decc
--- /dev/null
+++ b/index.html
@@ -0,0 +1,50 @@
+
+
+
+
+
+ Make AI Visible Synthetic Dashboard
+
+
+
+
+
+
Synthetic aggregate MVP
+
Make AI Visible dashboard
+
+ Public views should show aggregate, publication-approved patterns only. This
+ prototype uses synthetic data and suppresses cohorts below the privacy threshold.
+
+
+
+
+
+ 0
+
synthetic records
+
+
+ 0
+
minimum cohort threshold
+
+
+ Draft
+
data status
+
+
+
+
+
Behavioral dimensions
+
+
+
+
+
Methodology
+
+ No individual conversations, quotes, schools, locations, or small cohorts should
+ appear in this dashboard.
+