@adkinn/astro-ai-readiness 0.0.10 → 0.0.11
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.
package/README.md
CHANGED
|
@@ -2,9 +2,9 @@
|
|
|
2
2
|
|
|
3
3
|
> AI Readiness toolkit for Astro — eight JSON-LD helper components plus `dist/llms.txt`, `dist/llms-full.txt`, `dist/agents.md`, `dist/robots.txt`, and `dist/.well-known/mcp.json`.
|
|
4
4
|
|
|
5
|
-
**Status:** v0.0.
|
|
5
|
+
**Status:** v0.0.11 — app / product / game support. `<SoftwareApplicationSchema />` (screenshots, feature list, offers, and a `type` for `VideoGame` / `MobileApplication` / `WebApplication` + `gamePlatform`), Organization `description` + `sameAs` + `contactPoint`, `founder.url`, WebSite `inLanguage`, and custom `## sections` for `agents.md` — proven on three real sites (a person, an app, a game).
|
|
6
6
|
|
|
7
|
-
## What ships in v0.0.
|
|
7
|
+
## What ships in v0.0.11
|
|
8
8
|
|
|
9
9
|
**Eight JSON-LD components**:
|
|
10
10
|
- `<OrganizationSchema />` — Organization block. Config-driven from `organization` (optional; now supports `description`, `contactPoint`, and `founder.url`); place in your `BaseLayout` so it ships site-wide and the `#organization` `@id` reference resolves on every page. Renders nothing if `organization` is unset.
|
|
@@ -31,14 +31,6 @@ URL config fields (`site`, `organization.url`, `organization.logo`, `founder.sam
|
|
|
31
31
|
|
|
32
32
|
Config validation errors are formatted with one issue per line — `path: message` per Zod issue — instead of the default `ZodError` JSON blob.
|
|
33
33
|
|
|
34
|
-
## On the roadmap (toward v0.1.0)
|
|
35
|
-
|
|
36
|
-
- v0.0.8 — fixture Astro app validation against adamkinney.com install paths; refine robots presets from real traffic policy.
|
|
37
|
-
- v0.0.9 — content-collection assisted `llms-full.txt` generation.
|
|
38
|
-
- v0.1.0 — polish, docs, release hardening; full install on adamkinney.com
|
|
39
|
-
|
|
40
|
-
Track progress: <https://github.com/adkinn/astro-ai-readiness/milestones>
|
|
41
|
-
|
|
42
34
|
## Install
|
|
43
35
|
|
|
44
36
|
```bash
|
|
@@ -292,6 +284,7 @@ The v0.1 line is content → artifacts: components and files. Build-time AI-read
|
|
|
292
284
|
|
|
293
285
|
- [adamkinney.com](https://adamkinney.com) — the personal-brand reference implementation. Person-first: runs `PersonSchema` + `WebSiteSchema` site-wide and emits `dist/llms.txt` at <https://adamkinney.com/llms.txt> and `dist/agents.md` at <https://adamkinney.com/agents.md>.
|
|
294
286
|
- [comicscry.com](https://comicscry.com) — the app/product reference implementation (Astro 6 SSR, `@astrojs/cloudflare`). Runs `OrganizationSchema` + `WebSiteSchema` site-wide and `SoftwareApplicationSchema` + `FAQPageSchema` on the homepage, and emits `dist/llms.txt`, `dist/agents.md`, and `dist/robots.txt`. Drove the app/product features in v0.0.9–v0.0.10.
|
|
287
|
+
- [gurn.app](https://gurn.app) — the game reference implementation (Astro 6 SSR, `@astrojs/cloudflare`). Runs `OrganizationSchema` + `WebSiteSchema` site-wide and `SoftwareApplicationSchema` (as a `VideoGame`) + `FAQPageSchema` on the homepage, and emits `dist/llms.txt` + `dist/robots.txt`. Drove `VideoGame` / `gamePlatform` support in v0.0.11.
|
|
295
288
|
|
|
296
289
|
## Contributing
|
|
297
290
|
|
|
@@ -51,9 +51,14 @@ var offerSchema = z.object({
|
|
|
51
51
|
}).strict();
|
|
52
52
|
var softwareApplicationSchema = z.object({
|
|
53
53
|
name: z.string().min(1),
|
|
54
|
+
// schema.org @type — VideoGame / MobileApplication / WebApplication are
|
|
55
|
+
// subtypes of SoftwareApplication, more accurate for games and mobile/web
|
|
56
|
+
// apps. Defaults to 'SoftwareApplication'.
|
|
57
|
+
type: z.enum(["SoftwareApplication", "VideoGame", "MobileApplication", "WebApplication"]).optional(),
|
|
54
58
|
applicationCategory: z.string().optional(),
|
|
55
59
|
applicationSubCategory: z.string().optional(),
|
|
56
60
|
operatingSystem: z.string().optional(),
|
|
61
|
+
gamePlatform: z.union([z.string().min(1), z.array(z.string().min(1)).min(1)]).optional(),
|
|
57
62
|
description: z.string().optional(),
|
|
58
63
|
url: httpsUrl.optional(),
|
|
59
64
|
image: httpsUrl.optional(),
|
|
@@ -18,7 +18,7 @@ let appLd: SchemaJson | null = null
|
|
|
18
18
|
if (app) {
|
|
19
19
|
appLd = {
|
|
20
20
|
'@context': 'https://schema.org',
|
|
21
|
-
'@type': 'SoftwareApplication',
|
|
21
|
+
'@type': app.type ?? 'SoftwareApplication',
|
|
22
22
|
'@id': `${config.site}#app`,
|
|
23
23
|
name: app.name,
|
|
24
24
|
}
|
|
@@ -26,6 +26,7 @@ if (app) {
|
|
|
26
26
|
if (app.applicationCategory) appLd.applicationCategory = app.applicationCategory
|
|
27
27
|
if (app.applicationSubCategory) appLd.applicationSubCategory = app.applicationSubCategory
|
|
28
28
|
if (app.operatingSystem) appLd.operatingSystem = app.operatingSystem
|
|
29
|
+
if (app.gamePlatform) appLd.gamePlatform = app.gamePlatform
|
|
29
30
|
if (app.description) appLd.description = app.description
|
|
30
31
|
if (app.url) appLd.url = app.url
|
|
31
32
|
if (app.image) appLd.image = app.image
|
package/dist/config.d.ts
CHANGED
|
@@ -180,9 +180,11 @@ declare const webSiteSchema: z.ZodObject<{
|
|
|
180
180
|
}>;
|
|
181
181
|
declare const softwareApplicationSchema: z.ZodObject<{
|
|
182
182
|
name: z.ZodString;
|
|
183
|
+
type: z.ZodOptional<z.ZodEnum<["SoftwareApplication", "VideoGame", "MobileApplication", "WebApplication"]>>;
|
|
183
184
|
applicationCategory: z.ZodOptional<z.ZodString>;
|
|
184
185
|
applicationSubCategory: z.ZodOptional<z.ZodString>;
|
|
185
186
|
operatingSystem: z.ZodOptional<z.ZodString>;
|
|
187
|
+
gamePlatform: z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodArray<z.ZodString, "many">]>>;
|
|
186
188
|
description: z.ZodOptional<z.ZodString>;
|
|
187
189
|
url: z.ZodOptional<z.ZodEffects<z.ZodString, string, string>>;
|
|
188
190
|
image: z.ZodOptional<z.ZodEffects<z.ZodString, string, string>>;
|
|
@@ -220,10 +222,12 @@ declare const softwareApplicationSchema: z.ZodObject<{
|
|
|
220
222
|
name: string;
|
|
221
223
|
url?: string | undefined;
|
|
222
224
|
description?: string | undefined;
|
|
225
|
+
type?: "SoftwareApplication" | "VideoGame" | "MobileApplication" | "WebApplication" | undefined;
|
|
223
226
|
image?: string | undefined;
|
|
224
227
|
applicationCategory?: string | undefined;
|
|
225
228
|
applicationSubCategory?: string | undefined;
|
|
226
229
|
operatingSystem?: string | undefined;
|
|
230
|
+
gamePlatform?: string | string[] | undefined;
|
|
227
231
|
screenshot?: string[] | undefined;
|
|
228
232
|
featureList?: string[] | undefined;
|
|
229
233
|
offers?: {
|
|
@@ -242,10 +246,12 @@ declare const softwareApplicationSchema: z.ZodObject<{
|
|
|
242
246
|
name: string;
|
|
243
247
|
url?: string | undefined;
|
|
244
248
|
description?: string | undefined;
|
|
249
|
+
type?: "SoftwareApplication" | "VideoGame" | "MobileApplication" | "WebApplication" | undefined;
|
|
245
250
|
image?: string | undefined;
|
|
246
251
|
applicationCategory?: string | undefined;
|
|
247
252
|
applicationSubCategory?: string | undefined;
|
|
248
253
|
operatingSystem?: string | undefined;
|
|
254
|
+
gamePlatform?: string | string[] | undefined;
|
|
249
255
|
screenshot?: string[] | undefined;
|
|
250
256
|
featureList?: string[] | undefined;
|
|
251
257
|
offers?: {
|
|
@@ -742,9 +748,11 @@ declare const aiReadinessConfigSchema: z.ZodEffects<z.ZodObject<{
|
|
|
742
748
|
}>>;
|
|
743
749
|
softwareApplication: z.ZodOptional<z.ZodObject<{
|
|
744
750
|
name: z.ZodString;
|
|
751
|
+
type: z.ZodOptional<z.ZodEnum<["SoftwareApplication", "VideoGame", "MobileApplication", "WebApplication"]>>;
|
|
745
752
|
applicationCategory: z.ZodOptional<z.ZodString>;
|
|
746
753
|
applicationSubCategory: z.ZodOptional<z.ZodString>;
|
|
747
754
|
operatingSystem: z.ZodOptional<z.ZodString>;
|
|
755
|
+
gamePlatform: z.ZodOptional<z.ZodUnion<[z.ZodString, z.ZodArray<z.ZodString, "many">]>>;
|
|
748
756
|
description: z.ZodOptional<z.ZodString>;
|
|
749
757
|
url: z.ZodOptional<z.ZodEffects<z.ZodString, string, string>>;
|
|
750
758
|
image: z.ZodOptional<z.ZodEffects<z.ZodString, string, string>>;
|
|
@@ -782,10 +790,12 @@ declare const aiReadinessConfigSchema: z.ZodEffects<z.ZodObject<{
|
|
|
782
790
|
name: string;
|
|
783
791
|
url?: string | undefined;
|
|
784
792
|
description?: string | undefined;
|
|
793
|
+
type?: "SoftwareApplication" | "VideoGame" | "MobileApplication" | "WebApplication" | undefined;
|
|
785
794
|
image?: string | undefined;
|
|
786
795
|
applicationCategory?: string | undefined;
|
|
787
796
|
applicationSubCategory?: string | undefined;
|
|
788
797
|
operatingSystem?: string | undefined;
|
|
798
|
+
gamePlatform?: string | string[] | undefined;
|
|
789
799
|
screenshot?: string[] | undefined;
|
|
790
800
|
featureList?: string[] | undefined;
|
|
791
801
|
offers?: {
|
|
@@ -804,10 +814,12 @@ declare const aiReadinessConfigSchema: z.ZodEffects<z.ZodObject<{
|
|
|
804
814
|
name: string;
|
|
805
815
|
url?: string | undefined;
|
|
806
816
|
description?: string | undefined;
|
|
817
|
+
type?: "SoftwareApplication" | "VideoGame" | "MobileApplication" | "WebApplication" | undefined;
|
|
807
818
|
image?: string | undefined;
|
|
808
819
|
applicationCategory?: string | undefined;
|
|
809
820
|
applicationSubCategory?: string | undefined;
|
|
810
821
|
operatingSystem?: string | undefined;
|
|
822
|
+
gamePlatform?: string | string[] | undefined;
|
|
811
823
|
screenshot?: string[] | undefined;
|
|
812
824
|
featureList?: string[] | undefined;
|
|
813
825
|
offers?: {
|
|
@@ -1237,10 +1249,12 @@ declare const aiReadinessConfigSchema: z.ZodEffects<z.ZodObject<{
|
|
|
1237
1249
|
name: string;
|
|
1238
1250
|
url?: string | undefined;
|
|
1239
1251
|
description?: string | undefined;
|
|
1252
|
+
type?: "SoftwareApplication" | "VideoGame" | "MobileApplication" | "WebApplication" | undefined;
|
|
1240
1253
|
image?: string | undefined;
|
|
1241
1254
|
applicationCategory?: string | undefined;
|
|
1242
1255
|
applicationSubCategory?: string | undefined;
|
|
1243
1256
|
operatingSystem?: string | undefined;
|
|
1257
|
+
gamePlatform?: string | string[] | undefined;
|
|
1244
1258
|
screenshot?: string[] | undefined;
|
|
1245
1259
|
featureList?: string[] | undefined;
|
|
1246
1260
|
offers?: {
|
|
@@ -1376,10 +1390,12 @@ declare const aiReadinessConfigSchema: z.ZodEffects<z.ZodObject<{
|
|
|
1376
1390
|
name: string;
|
|
1377
1391
|
url?: string | undefined;
|
|
1378
1392
|
description?: string | undefined;
|
|
1393
|
+
type?: "SoftwareApplication" | "VideoGame" | "MobileApplication" | "WebApplication" | undefined;
|
|
1379
1394
|
image?: string | undefined;
|
|
1380
1395
|
applicationCategory?: string | undefined;
|
|
1381
1396
|
applicationSubCategory?: string | undefined;
|
|
1382
1397
|
operatingSystem?: string | undefined;
|
|
1398
|
+
gamePlatform?: string | string[] | undefined;
|
|
1383
1399
|
screenshot?: string[] | undefined;
|
|
1384
1400
|
featureList?: string[] | undefined;
|
|
1385
1401
|
offers?: {
|
|
@@ -1515,10 +1531,12 @@ declare const aiReadinessConfigSchema: z.ZodEffects<z.ZodObject<{
|
|
|
1515
1531
|
name: string;
|
|
1516
1532
|
url?: string | undefined;
|
|
1517
1533
|
description?: string | undefined;
|
|
1534
|
+
type?: "SoftwareApplication" | "VideoGame" | "MobileApplication" | "WebApplication" | undefined;
|
|
1518
1535
|
image?: string | undefined;
|
|
1519
1536
|
applicationCategory?: string | undefined;
|
|
1520
1537
|
applicationSubCategory?: string | undefined;
|
|
1521
1538
|
operatingSystem?: string | undefined;
|
|
1539
|
+
gamePlatform?: string | string[] | undefined;
|
|
1522
1540
|
screenshot?: string[] | undefined;
|
|
1523
1541
|
featureList?: string[] | undefined;
|
|
1524
1542
|
offers?: {
|
|
@@ -1654,10 +1672,12 @@ declare const aiReadinessConfigSchema: z.ZodEffects<z.ZodObject<{
|
|
|
1654
1672
|
name: string;
|
|
1655
1673
|
url?: string | undefined;
|
|
1656
1674
|
description?: string | undefined;
|
|
1675
|
+
type?: "SoftwareApplication" | "VideoGame" | "MobileApplication" | "WebApplication" | undefined;
|
|
1657
1676
|
image?: string | undefined;
|
|
1658
1677
|
applicationCategory?: string | undefined;
|
|
1659
1678
|
applicationSubCategory?: string | undefined;
|
|
1660
1679
|
operatingSystem?: string | undefined;
|
|
1680
|
+
gamePlatform?: string | string[] | undefined;
|
|
1661
1681
|
screenshot?: string[] | undefined;
|
|
1662
1682
|
featureList?: string[] | undefined;
|
|
1663
1683
|
offers?: {
|
package/dist/config.js
CHANGED
package/dist/index.js
CHANGED
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@adkinn/astro-ai-readiness",
|
|
3
|
-
"version": "0.0.
|
|
3
|
+
"version": "0.0.11",
|
|
4
4
|
"description": "AI Readiness toolkit for Astro — six JSON-LD components plus llms.txt, llms-full.txt, agents.md, robots.txt, and .well-known/mcp.json outputs.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "./dist/index.js",
|