@olonjs/cli 3.0.88 → 3.0.89
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
|
@@ -1641,7 +1641,7 @@ cat << 'END_OF_FILE_CONTENT' > "package.json"
|
|
|
1641
1641
|
"@tiptap/extension-link": "^2.11.5",
|
|
1642
1642
|
"@tiptap/react": "^2.11.5",
|
|
1643
1643
|
"@tiptap/starter-kit": "^2.11.5",
|
|
1644
|
-
"@olonjs/core": "^1.0.
|
|
1644
|
+
"@olonjs/core": "^1.0.77",
|
|
1645
1645
|
"clsx": "^2.1.1",
|
|
1646
1646
|
"lucide-react": "^0.474.0",
|
|
1647
1647
|
"react": "^19.0.0",
|
|
@@ -7743,19 +7743,19 @@ cat << 'END_OF_FILE_CONTENT' > "src/data/config/menu.json"
|
|
|
7743
7743
|
{
|
|
7744
7744
|
"main": [
|
|
7745
7745
|
{
|
|
7746
|
-
"label": "
|
|
7747
|
-
"href": "#
|
|
7746
|
+
"label": "The Problem",
|
|
7747
|
+
"href": "#problem"
|
|
7748
7748
|
},
|
|
7749
7749
|
{
|
|
7750
|
-
"label": "
|
|
7751
|
-
"href": "#
|
|
7750
|
+
"label": "Architecture",
|
|
7751
|
+
"href": "#architecture"
|
|
7752
7752
|
},
|
|
7753
7753
|
{
|
|
7754
|
-
"label": "
|
|
7755
|
-
"href": "#
|
|
7754
|
+
"label": "Why",
|
|
7755
|
+
"href": "#why"
|
|
7756
7756
|
},
|
|
7757
7757
|
{
|
|
7758
|
-
"label": "
|
|
7758
|
+
"label": "DX",
|
|
7759
7759
|
"href": "#devex"
|
|
7760
7760
|
}
|
|
7761
7761
|
]
|
|
@@ -7796,19 +7796,19 @@ cat << 'END_OF_FILE_CONTENT' > "src/data/config/site.json"
|
|
|
7796
7796
|
"badge": "v1.4.0",
|
|
7797
7797
|
"links": [
|
|
7798
7798
|
{
|
|
7799
|
-
"label": "
|
|
7800
|
-
"href": "#
|
|
7799
|
+
"label": "The Problem",
|
|
7800
|
+
"href": "#problem"
|
|
7801
7801
|
},
|
|
7802
7802
|
{
|
|
7803
|
-
"label": "
|
|
7804
|
-
"href": "#
|
|
7803
|
+
"label": "Architecture",
|
|
7804
|
+
"href": "#architecture"
|
|
7805
7805
|
},
|
|
7806
7806
|
{
|
|
7807
|
-
"label": "
|
|
7808
|
-
"href": "#
|
|
7807
|
+
"label": "Why",
|
|
7808
|
+
"href": "#why"
|
|
7809
7809
|
},
|
|
7810
7810
|
{
|
|
7811
|
-
"label": "
|
|
7811
|
+
"label": "DX",
|
|
7812
7812
|
"href": "#devex"
|
|
7813
7813
|
}
|
|
7814
7814
|
]
|
|
@@ -7917,8 +7917,18 @@ cat << 'END_OF_FILE_CONTENT' > "src/data/pages/home.json"
|
|
|
7917
7917
|
"titleHighlight": "Agentic Web",
|
|
7918
7918
|
"description": "AI agents are becoming operational actors in commerce, marketing, and support. OlonJS introduces a deterministic machine contract for websites — so agents can reliably read and operate any site, without custom glue.",
|
|
7919
7919
|
"ctas": [
|
|
7920
|
-
{
|
|
7921
|
-
|
|
7920
|
+
{
|
|
7921
|
+
"id": "cta-1",
|
|
7922
|
+
"label": "Read the Spec",
|
|
7923
|
+
"href": "/docs",
|
|
7924
|
+
"variant": "primary"
|
|
7925
|
+
},
|
|
7926
|
+
{
|
|
7927
|
+
"id": "cta-2",
|
|
7928
|
+
"label": "View on GitHub",
|
|
7929
|
+
"href": "https://github.com/olonjs/npm-jpcore",
|
|
7930
|
+
"variant": "secondary"
|
|
7931
|
+
}
|
|
7922
7932
|
],
|
|
7923
7933
|
"metrics": []
|
|
7924
7934
|
},
|
|
@@ -7933,16 +7943,35 @@ cat << 'END_OF_FILE_CONTENT' > "src/data/pages/home.json"
|
|
|
7933
7943
|
"problemTag": "The problem",
|
|
7934
7944
|
"problemTitle": "Websites aren't built for agents",
|
|
7935
7945
|
"problemItems": [
|
|
7936
|
-
{
|
|
7937
|
-
|
|
7938
|
-
|
|
7946
|
+
{
|
|
7947
|
+
"id": "pi-1",
|
|
7948
|
+
"text": "Agentic workflows are growing, but integration is mostly custom glue — rebuilt tenant by tenant"
|
|
7949
|
+
},
|
|
7950
|
+
{
|
|
7951
|
+
"id": "pi-2",
|
|
7952
|
+
"text": "Every site has a different content structure, routing assumptions, and edge cases"
|
|
7953
|
+
},
|
|
7954
|
+
{
|
|
7955
|
+
"id": "pi-3",
|
|
7956
|
+
"text": "HTML-heavy, CMS-fragmented, inconsistent across properties — slow, brittle, expensive"
|
|
7957
|
+
}
|
|
7939
7958
|
],
|
|
7940
7959
|
"solutionTag": "Our solution",
|
|
7941
7960
|
"solutionTitle": "A standard machine contract across tenants",
|
|
7942
7961
|
"solutionItems": [
|
|
7943
|
-
{
|
|
7944
|
-
|
|
7945
|
-
|
|
7962
|
+
{
|
|
7963
|
+
"id": "si-1",
|
|
7964
|
+
"text": "Predictable page endpoints for agents —",
|
|
7965
|
+
"code": "/{slug}.json"
|
|
7966
|
+
},
|
|
7967
|
+
{
|
|
7968
|
+
"id": "si-2",
|
|
7969
|
+
"text": "Typed, schema-driven content contracts — validated, versioned, auditable"
|
|
7970
|
+
},
|
|
7971
|
+
{
|
|
7972
|
+
"id": "si-3",
|
|
7973
|
+
"text": "Repeatable governance and deployment patterns across every tenant"
|
|
7974
|
+
}
|
|
7946
7975
|
]
|
|
7947
7976
|
},
|
|
7948
7977
|
"settings": {}
|
|
@@ -7956,15 +7985,47 @@ cat << 'END_OF_FILE_CONTENT' > "src/data/pages/home.json"
|
|
|
7956
7985
|
"sectionTitle": "Built for enterprise scale",
|
|
7957
7986
|
"sectionLead": "Every layer is designed for determinism — from file system layout to component contracts to Studio UX.",
|
|
7958
7987
|
"cards": [
|
|
7959
|
-
{
|
|
7960
|
-
|
|
7961
|
-
|
|
7962
|
-
|
|
7963
|
-
|
|
7964
|
-
|
|
7988
|
+
{
|
|
7989
|
+
"id": "fc-1",
|
|
7990
|
+
"emoji": "📐",
|
|
7991
|
+
"title": "Modular Type Registry",
|
|
7992
|
+
"description": "Core defines empty registries; tenants inject types via module augmentation. Full TypeScript safety, zero Core changes."
|
|
7993
|
+
},
|
|
7994
|
+
{
|
|
7995
|
+
"id": "fc-2",
|
|
7996
|
+
"emoji": "🧱",
|
|
7997
|
+
"title": "Tenant Block Protocol",
|
|
7998
|
+
"description": "Self-contained capsules (View + schema + types) enable automated ingestion and consistent editor generation."
|
|
7999
|
+
},
|
|
8000
|
+
{
|
|
8001
|
+
"id": "fc-3",
|
|
8002
|
+
"emoji": "⚙️",
|
|
8003
|
+
"title": "Deterministic CLI",
|
|
8004
|
+
"description": "@olonjs/cli projects new tenants from a canonical script — reproducible across every environment."
|
|
8005
|
+
},
|
|
8006
|
+
{
|
|
8007
|
+
"id": "fc-4",
|
|
8008
|
+
"emoji": "🎯",
|
|
8009
|
+
"title": "ICE Data Contract",
|
|
8010
|
+
"description": "Mandatory DOM attributes bind the Studio canvas to Inspector fields without coupling to tenant DOM structure."
|
|
8011
|
+
},
|
|
8012
|
+
{
|
|
8013
|
+
"id": "fc-5",
|
|
8014
|
+
"emoji": "📦",
|
|
8015
|
+
"title": "Base Schema Fragments",
|
|
8016
|
+
"description": "Shared BaseSectionData and BaseArrayItem enforce anchor IDs and stable React keys across all capsules."
|
|
8017
|
+
},
|
|
8018
|
+
{
|
|
8019
|
+
"id": "fc-6",
|
|
8020
|
+
"emoji": "🔗",
|
|
8021
|
+
"title": "Path-Based Selection",
|
|
8022
|
+
"description": "v1.4 strict path semantics eliminate nested array ambiguity. Studio selection is root-to-leaf, always deterministic."
|
|
8023
|
+
}
|
|
7965
8024
|
]
|
|
7966
8025
|
},
|
|
7967
|
-
"settings": {
|
|
8026
|
+
"settings": {
|
|
8027
|
+
"columns": 3
|
|
8028
|
+
}
|
|
7968
8029
|
},
|
|
7969
8030
|
{
|
|
7970
8031
|
"id": "why-now",
|
|
@@ -7975,10 +8036,26 @@ cat << 'END_OF_FILE_CONTENT' > "src/data/pages/home.json"
|
|
|
7975
8036
|
"title": "Why this matters",
|
|
7976
8037
|
"titleAccent": "now",
|
|
7977
8038
|
"cards": [
|
|
7978
|
-
{
|
|
7979
|
-
|
|
7980
|
-
|
|
7981
|
-
|
|
8039
|
+
{
|
|
8040
|
+
"id": "wc-1",
|
|
8041
|
+
"title": "Agentic commerce is live",
|
|
8042
|
+
"description": "Operational standards are missing. Without a contract layer, teams face high integration cost and low reliability."
|
|
8043
|
+
},
|
|
8044
|
+
{
|
|
8045
|
+
"id": "wc-2",
|
|
8046
|
+
"title": "Enterprises need governance",
|
|
8047
|
+
"description": "A contract layer you can audit, version, and scale — not a one-off adapter for every new agent workflow."
|
|
8048
|
+
},
|
|
8049
|
+
{
|
|
8050
|
+
"id": "wc-3",
|
|
8051
|
+
"title": "AI tooling is ready",
|
|
8052
|
+
"description": "Deterministic structure means AI can scaffold, validate, and evolve tenants with less prompt ambiguity."
|
|
8053
|
+
},
|
|
8054
|
+
{
|
|
8055
|
+
"id": "wc-4",
|
|
8056
|
+
"title": "Speed compounds",
|
|
8057
|
+
"description": "Teams that standardize now ship new experiences in hours while others rebuild integration logic repeatedly."
|
|
8058
|
+
}
|
|
7982
8059
|
]
|
|
7983
8060
|
},
|
|
7984
8061
|
"settings": {}
|
|
@@ -7987,19 +8064,40 @@ cat << 'END_OF_FILE_CONTENT' > "src/data/pages/home.json"
|
|
|
7987
8064
|
"id": "dx-section",
|
|
7988
8065
|
"type": "devex",
|
|
7989
8066
|
"data": {
|
|
7990
|
-
"anchorId": "
|
|
8067
|
+
"anchorId": "devex",
|
|
7991
8068
|
"label": "Developer Velocity",
|
|
7992
8069
|
"title": "AI-native advantage,\nfrom day one",
|
|
7993
8070
|
"description": "OlonJS dramatically increases AI-assisted development speed. Because structure is deterministic, agents scaffold and evolve tenants faster — with lower regression risk.",
|
|
7994
8071
|
"features": [
|
|
7995
|
-
{
|
|
7996
|
-
|
|
7997
|
-
|
|
8072
|
+
{
|
|
8073
|
+
"id": "df-1",
|
|
8074
|
+
"text": "AI scaffolds and evolves tenants faster because structure is deterministic"
|
|
8075
|
+
},
|
|
8076
|
+
{
|
|
8077
|
+
"id": "df-2",
|
|
8078
|
+
"text": "Shared conventions reduce prompt ambiguity and implementation drift"
|
|
8079
|
+
},
|
|
8080
|
+
{
|
|
8081
|
+
"id": "df-3",
|
|
8082
|
+
"text": "Ship new tenant experiences in hours, not weeks"
|
|
8083
|
+
}
|
|
7998
8084
|
],
|
|
7999
8085
|
"stats": [
|
|
8000
|
-
{
|
|
8001
|
-
|
|
8002
|
-
|
|
8086
|
+
{
|
|
8087
|
+
"id": "ds-1",
|
|
8088
|
+
"value": "10×",
|
|
8089
|
+
"label": "Faster scaffolding"
|
|
8090
|
+
},
|
|
8091
|
+
{
|
|
8092
|
+
"id": "ds-2",
|
|
8093
|
+
"value": "∅",
|
|
8094
|
+
"label": "Glue per tenant"
|
|
8095
|
+
},
|
|
8096
|
+
{
|
|
8097
|
+
"id": "ds-3",
|
|
8098
|
+
"value": "100%",
|
|
8099
|
+
"label": "Type-safe contracts"
|
|
8100
|
+
}
|
|
8003
8101
|
]
|
|
8004
8102
|
},
|
|
8005
8103
|
"settings": {}
|
|
@@ -8013,15 +8111,24 @@ cat << 'END_OF_FILE_CONTENT' > "src/data/pages/home.json"
|
|
|
8013
8111
|
"description": "Read the full specification or explore the source on GitHub. Zero dependencies to start — one JSON endpoint per page.",
|
|
8014
8112
|
"cliCommand": "npx @olonjs/cli@latest new tenant",
|
|
8015
8113
|
"ctas": [
|
|
8016
|
-
{
|
|
8017
|
-
|
|
8114
|
+
{
|
|
8115
|
+
"id": "cta-docs",
|
|
8116
|
+
"label": "Read the Specification",
|
|
8117
|
+
"href": "/docs",
|
|
8118
|
+
"variant": "primary"
|
|
8119
|
+
},
|
|
8120
|
+
{
|
|
8121
|
+
"id": "cta-gh",
|
|
8122
|
+
"label": "View on GitHub",
|
|
8123
|
+
"href": "https://github.com/olonjs/npm-jpcore",
|
|
8124
|
+
"variant": "secondary"
|
|
8125
|
+
}
|
|
8018
8126
|
]
|
|
8019
8127
|
},
|
|
8020
8128
|
"settings": {}
|
|
8021
8129
|
}
|
|
8022
8130
|
]
|
|
8023
8131
|
}
|
|
8024
|
-
|
|
8025
8132
|
END_OF_FILE_CONTENT
|
|
8026
8133
|
echo "Creating src/data/pages/post.json..."
|
|
8027
8134
|
cat << 'END_OF_FILE_CONTENT' > "src/data/pages/post.json"
|
|
@@ -596,7 +596,7 @@ cat << 'END_OF_FILE_CONTENT' > "package.json"
|
|
|
596
596
|
"@tiptap/extension-link": "^2.11.5",
|
|
597
597
|
"@tiptap/react": "^2.11.5",
|
|
598
598
|
"@tiptap/starter-kit": "^2.11.5",
|
|
599
|
-
"@olonjs/core": "^1.0.
|
|
599
|
+
"@olonjs/core": "^1.0.77",
|
|
600
600
|
"clsx": "^2.1.1",
|
|
601
601
|
"lucide-react": "^0.474.0",
|
|
602
602
|
"react": "^19.0.0",
|
|
@@ -1641,7 +1641,7 @@ cat << 'END_OF_FILE_CONTENT' > "package.json"
|
|
|
1641
1641
|
"@tiptap/extension-link": "^2.11.5",
|
|
1642
1642
|
"@tiptap/react": "^2.11.5",
|
|
1643
1643
|
"@tiptap/starter-kit": "^2.11.5",
|
|
1644
|
-
"@olonjs/core": "^1.0.
|
|
1644
|
+
"@olonjs/core": "^1.0.77",
|
|
1645
1645
|
"clsx": "^2.1.1",
|
|
1646
1646
|
"lucide-react": "^0.474.0",
|
|
1647
1647
|
"react": "^19.0.0",
|
|
@@ -7743,19 +7743,19 @@ cat << 'END_OF_FILE_CONTENT' > "src/data/config/menu.json"
|
|
|
7743
7743
|
{
|
|
7744
7744
|
"main": [
|
|
7745
7745
|
{
|
|
7746
|
-
"label": "
|
|
7747
|
-
"href": "#
|
|
7746
|
+
"label": "The Problem",
|
|
7747
|
+
"href": "#problem"
|
|
7748
7748
|
},
|
|
7749
7749
|
{
|
|
7750
|
-
"label": "
|
|
7751
|
-
"href": "#
|
|
7750
|
+
"label": "Architecture",
|
|
7751
|
+
"href": "#architecture"
|
|
7752
7752
|
},
|
|
7753
7753
|
{
|
|
7754
|
-
"label": "
|
|
7755
|
-
"href": "#
|
|
7754
|
+
"label": "Why",
|
|
7755
|
+
"href": "#why"
|
|
7756
7756
|
},
|
|
7757
7757
|
{
|
|
7758
|
-
"label": "
|
|
7758
|
+
"label": "DX",
|
|
7759
7759
|
"href": "#devex"
|
|
7760
7760
|
}
|
|
7761
7761
|
]
|
|
@@ -7796,19 +7796,19 @@ cat << 'END_OF_FILE_CONTENT' > "src/data/config/site.json"
|
|
|
7796
7796
|
"badge": "v1.4.0",
|
|
7797
7797
|
"links": [
|
|
7798
7798
|
{
|
|
7799
|
-
"label": "
|
|
7800
|
-
"href": "#
|
|
7799
|
+
"label": "The Problem",
|
|
7800
|
+
"href": "#problem"
|
|
7801
7801
|
},
|
|
7802
7802
|
{
|
|
7803
|
-
"label": "
|
|
7804
|
-
"href": "#
|
|
7803
|
+
"label": "Architecture",
|
|
7804
|
+
"href": "#architecture"
|
|
7805
7805
|
},
|
|
7806
7806
|
{
|
|
7807
|
-
"label": "
|
|
7808
|
-
"href": "#
|
|
7807
|
+
"label": "Why",
|
|
7808
|
+
"href": "#why"
|
|
7809
7809
|
},
|
|
7810
7810
|
{
|
|
7811
|
-
"label": "
|
|
7811
|
+
"label": "DX",
|
|
7812
7812
|
"href": "#devex"
|
|
7813
7813
|
}
|
|
7814
7814
|
]
|
|
@@ -7917,8 +7917,18 @@ cat << 'END_OF_FILE_CONTENT' > "src/data/pages/home.json"
|
|
|
7917
7917
|
"titleHighlight": "Agentic Web",
|
|
7918
7918
|
"description": "AI agents are becoming operational actors in commerce, marketing, and support. OlonJS introduces a deterministic machine contract for websites — so agents can reliably read and operate any site, without custom glue.",
|
|
7919
7919
|
"ctas": [
|
|
7920
|
-
{
|
|
7921
|
-
|
|
7920
|
+
{
|
|
7921
|
+
"id": "cta-1",
|
|
7922
|
+
"label": "Read the Spec",
|
|
7923
|
+
"href": "/docs",
|
|
7924
|
+
"variant": "primary"
|
|
7925
|
+
},
|
|
7926
|
+
{
|
|
7927
|
+
"id": "cta-2",
|
|
7928
|
+
"label": "View on GitHub",
|
|
7929
|
+
"href": "https://github.com/olonjs/npm-jpcore",
|
|
7930
|
+
"variant": "secondary"
|
|
7931
|
+
}
|
|
7922
7932
|
],
|
|
7923
7933
|
"metrics": []
|
|
7924
7934
|
},
|
|
@@ -7933,16 +7943,35 @@ cat << 'END_OF_FILE_CONTENT' > "src/data/pages/home.json"
|
|
|
7933
7943
|
"problemTag": "The problem",
|
|
7934
7944
|
"problemTitle": "Websites aren't built for agents",
|
|
7935
7945
|
"problemItems": [
|
|
7936
|
-
{
|
|
7937
|
-
|
|
7938
|
-
|
|
7946
|
+
{
|
|
7947
|
+
"id": "pi-1",
|
|
7948
|
+
"text": "Agentic workflows are growing, but integration is mostly custom glue — rebuilt tenant by tenant"
|
|
7949
|
+
},
|
|
7950
|
+
{
|
|
7951
|
+
"id": "pi-2",
|
|
7952
|
+
"text": "Every site has a different content structure, routing assumptions, and edge cases"
|
|
7953
|
+
},
|
|
7954
|
+
{
|
|
7955
|
+
"id": "pi-3",
|
|
7956
|
+
"text": "HTML-heavy, CMS-fragmented, inconsistent across properties — slow, brittle, expensive"
|
|
7957
|
+
}
|
|
7939
7958
|
],
|
|
7940
7959
|
"solutionTag": "Our solution",
|
|
7941
7960
|
"solutionTitle": "A standard machine contract across tenants",
|
|
7942
7961
|
"solutionItems": [
|
|
7943
|
-
{
|
|
7944
|
-
|
|
7945
|
-
|
|
7962
|
+
{
|
|
7963
|
+
"id": "si-1",
|
|
7964
|
+
"text": "Predictable page endpoints for agents —",
|
|
7965
|
+
"code": "/{slug}.json"
|
|
7966
|
+
},
|
|
7967
|
+
{
|
|
7968
|
+
"id": "si-2",
|
|
7969
|
+
"text": "Typed, schema-driven content contracts — validated, versioned, auditable"
|
|
7970
|
+
},
|
|
7971
|
+
{
|
|
7972
|
+
"id": "si-3",
|
|
7973
|
+
"text": "Repeatable governance and deployment patterns across every tenant"
|
|
7974
|
+
}
|
|
7946
7975
|
]
|
|
7947
7976
|
},
|
|
7948
7977
|
"settings": {}
|
|
@@ -7956,15 +7985,47 @@ cat << 'END_OF_FILE_CONTENT' > "src/data/pages/home.json"
|
|
|
7956
7985
|
"sectionTitle": "Built for enterprise scale",
|
|
7957
7986
|
"sectionLead": "Every layer is designed for determinism — from file system layout to component contracts to Studio UX.",
|
|
7958
7987
|
"cards": [
|
|
7959
|
-
{
|
|
7960
|
-
|
|
7961
|
-
|
|
7962
|
-
|
|
7963
|
-
|
|
7964
|
-
|
|
7988
|
+
{
|
|
7989
|
+
"id": "fc-1",
|
|
7990
|
+
"emoji": "📐",
|
|
7991
|
+
"title": "Modular Type Registry",
|
|
7992
|
+
"description": "Core defines empty registries; tenants inject types via module augmentation. Full TypeScript safety, zero Core changes."
|
|
7993
|
+
},
|
|
7994
|
+
{
|
|
7995
|
+
"id": "fc-2",
|
|
7996
|
+
"emoji": "🧱",
|
|
7997
|
+
"title": "Tenant Block Protocol",
|
|
7998
|
+
"description": "Self-contained capsules (View + schema + types) enable automated ingestion and consistent editor generation."
|
|
7999
|
+
},
|
|
8000
|
+
{
|
|
8001
|
+
"id": "fc-3",
|
|
8002
|
+
"emoji": "⚙️",
|
|
8003
|
+
"title": "Deterministic CLI",
|
|
8004
|
+
"description": "@olonjs/cli projects new tenants from a canonical script — reproducible across every environment."
|
|
8005
|
+
},
|
|
8006
|
+
{
|
|
8007
|
+
"id": "fc-4",
|
|
8008
|
+
"emoji": "🎯",
|
|
8009
|
+
"title": "ICE Data Contract",
|
|
8010
|
+
"description": "Mandatory DOM attributes bind the Studio canvas to Inspector fields without coupling to tenant DOM structure."
|
|
8011
|
+
},
|
|
8012
|
+
{
|
|
8013
|
+
"id": "fc-5",
|
|
8014
|
+
"emoji": "📦",
|
|
8015
|
+
"title": "Base Schema Fragments",
|
|
8016
|
+
"description": "Shared BaseSectionData and BaseArrayItem enforce anchor IDs and stable React keys across all capsules."
|
|
8017
|
+
},
|
|
8018
|
+
{
|
|
8019
|
+
"id": "fc-6",
|
|
8020
|
+
"emoji": "🔗",
|
|
8021
|
+
"title": "Path-Based Selection",
|
|
8022
|
+
"description": "v1.4 strict path semantics eliminate nested array ambiguity. Studio selection is root-to-leaf, always deterministic."
|
|
8023
|
+
}
|
|
7965
8024
|
]
|
|
7966
8025
|
},
|
|
7967
|
-
"settings": {
|
|
8026
|
+
"settings": {
|
|
8027
|
+
"columns": 3
|
|
8028
|
+
}
|
|
7968
8029
|
},
|
|
7969
8030
|
{
|
|
7970
8031
|
"id": "why-now",
|
|
@@ -7975,10 +8036,26 @@ cat << 'END_OF_FILE_CONTENT' > "src/data/pages/home.json"
|
|
|
7975
8036
|
"title": "Why this matters",
|
|
7976
8037
|
"titleAccent": "now",
|
|
7977
8038
|
"cards": [
|
|
7978
|
-
{
|
|
7979
|
-
|
|
7980
|
-
|
|
7981
|
-
|
|
8039
|
+
{
|
|
8040
|
+
"id": "wc-1",
|
|
8041
|
+
"title": "Agentic commerce is live",
|
|
8042
|
+
"description": "Operational standards are missing. Without a contract layer, teams face high integration cost and low reliability."
|
|
8043
|
+
},
|
|
8044
|
+
{
|
|
8045
|
+
"id": "wc-2",
|
|
8046
|
+
"title": "Enterprises need governance",
|
|
8047
|
+
"description": "A contract layer you can audit, version, and scale — not a one-off adapter for every new agent workflow."
|
|
8048
|
+
},
|
|
8049
|
+
{
|
|
8050
|
+
"id": "wc-3",
|
|
8051
|
+
"title": "AI tooling is ready",
|
|
8052
|
+
"description": "Deterministic structure means AI can scaffold, validate, and evolve tenants with less prompt ambiguity."
|
|
8053
|
+
},
|
|
8054
|
+
{
|
|
8055
|
+
"id": "wc-4",
|
|
8056
|
+
"title": "Speed compounds",
|
|
8057
|
+
"description": "Teams that standardize now ship new experiences in hours while others rebuild integration logic repeatedly."
|
|
8058
|
+
}
|
|
7982
8059
|
]
|
|
7983
8060
|
},
|
|
7984
8061
|
"settings": {}
|
|
@@ -7987,19 +8064,40 @@ cat << 'END_OF_FILE_CONTENT' > "src/data/pages/home.json"
|
|
|
7987
8064
|
"id": "dx-section",
|
|
7988
8065
|
"type": "devex",
|
|
7989
8066
|
"data": {
|
|
7990
|
-
"anchorId": "
|
|
8067
|
+
"anchorId": "devex",
|
|
7991
8068
|
"label": "Developer Velocity",
|
|
7992
8069
|
"title": "AI-native advantage,\nfrom day one",
|
|
7993
8070
|
"description": "OlonJS dramatically increases AI-assisted development speed. Because structure is deterministic, agents scaffold and evolve tenants faster — with lower regression risk.",
|
|
7994
8071
|
"features": [
|
|
7995
|
-
{
|
|
7996
|
-
|
|
7997
|
-
|
|
8072
|
+
{
|
|
8073
|
+
"id": "df-1",
|
|
8074
|
+
"text": "AI scaffolds and evolves tenants faster because structure is deterministic"
|
|
8075
|
+
},
|
|
8076
|
+
{
|
|
8077
|
+
"id": "df-2",
|
|
8078
|
+
"text": "Shared conventions reduce prompt ambiguity and implementation drift"
|
|
8079
|
+
},
|
|
8080
|
+
{
|
|
8081
|
+
"id": "df-3",
|
|
8082
|
+
"text": "Ship new tenant experiences in hours, not weeks"
|
|
8083
|
+
}
|
|
7998
8084
|
],
|
|
7999
8085
|
"stats": [
|
|
8000
|
-
{
|
|
8001
|
-
|
|
8002
|
-
|
|
8086
|
+
{
|
|
8087
|
+
"id": "ds-1",
|
|
8088
|
+
"value": "10×",
|
|
8089
|
+
"label": "Faster scaffolding"
|
|
8090
|
+
},
|
|
8091
|
+
{
|
|
8092
|
+
"id": "ds-2",
|
|
8093
|
+
"value": "∅",
|
|
8094
|
+
"label": "Glue per tenant"
|
|
8095
|
+
},
|
|
8096
|
+
{
|
|
8097
|
+
"id": "ds-3",
|
|
8098
|
+
"value": "100%",
|
|
8099
|
+
"label": "Type-safe contracts"
|
|
8100
|
+
}
|
|
8003
8101
|
]
|
|
8004
8102
|
},
|
|
8005
8103
|
"settings": {}
|
|
@@ -8013,15 +8111,24 @@ cat << 'END_OF_FILE_CONTENT' > "src/data/pages/home.json"
|
|
|
8013
8111
|
"description": "Read the full specification or explore the source on GitHub. Zero dependencies to start — one JSON endpoint per page.",
|
|
8014
8112
|
"cliCommand": "npx @olonjs/cli@latest new tenant",
|
|
8015
8113
|
"ctas": [
|
|
8016
|
-
{
|
|
8017
|
-
|
|
8114
|
+
{
|
|
8115
|
+
"id": "cta-docs",
|
|
8116
|
+
"label": "Read the Specification",
|
|
8117
|
+
"href": "/docs",
|
|
8118
|
+
"variant": "primary"
|
|
8119
|
+
},
|
|
8120
|
+
{
|
|
8121
|
+
"id": "cta-gh",
|
|
8122
|
+
"label": "View on GitHub",
|
|
8123
|
+
"href": "https://github.com/olonjs/npm-jpcore",
|
|
8124
|
+
"variant": "secondary"
|
|
8125
|
+
}
|
|
8018
8126
|
]
|
|
8019
8127
|
},
|
|
8020
8128
|
"settings": {}
|
|
8021
8129
|
}
|
|
8022
8130
|
]
|
|
8023
8131
|
}
|
|
8024
|
-
|
|
8025
8132
|
END_OF_FILE_CONTENT
|
|
8026
8133
|
echo "Creating src/data/pages/post.json..."
|
|
8027
8134
|
cat << 'END_OF_FILE_CONTENT' > "src/data/pages/post.json"
|