@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.10 — app/product support. A `<SoftwareApplicationSchema />` component (screenshots, feature list, offers), Organization `description` + `sameAs` + `contactPoint`, `founder.url`, WebSite `inLanguage`, and custom `## sections` for `agents.md` — everything an app/product site needs at full fidelity, proven on a real one.
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.10
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
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  aiReadinessConfigSchema
3
- } from "./chunk-HCEHM7EB.js";
3
+ } from "./chunk-RRCNTDA5.js";
4
4
  export {
5
5
  aiReadinessConfigSchema
6
6
  };
package/dist/index.js CHANGED
@@ -6,7 +6,7 @@ import {
6
6
  } from "./chunk-36CGBNB5.js";
7
7
  import {
8
8
  aiReadinessConfigSchema
9
- } from "./chunk-HCEHM7EB.js";
9
+ } from "./chunk-RRCNTDA5.js";
10
10
  import {
11
11
  writeLlmsTxt
12
12
  } from "./chunk-WYKIPW5J.js";
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@adkinn/astro-ai-readiness",
3
- "version": "0.0.10",
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",