nuxt-ai-ready 0.2.0 → 0.2.2
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 +4 -4
- package/dist/module.d.mts +8 -1
- package/dist/module.json +1 -1
- package/dist/module.mjs +4 -5
- package/package.json +5 -5
package/README.md
CHANGED
|
@@ -21,10 +21,10 @@ Nuxt AI Ready converts your indexable pages into clean markdown that AI systems
|
|
|
21
21
|
|
|
22
22
|
## Features
|
|
23
23
|
|
|
24
|
-
- 📄 **LLM Optimized Output**: Generate `llms.txt`
|
|
25
|
-
- 🚀 **On-Demand Markdown**: Any route available as `.md` (e.g., `/about` → `/about.md`)
|
|
26
|
-
-
|
|
27
|
-
-
|
|
24
|
+
- 📄 **LLM Optimized Output**: Generate `llms.txt` artifacts including [TOON format](https://toonformat.dev)
|
|
25
|
+
- 🚀 **On-Demand Markdown**: Any route available as `.md` (e.g., `/about` → `/about.md`), automatically served to AI crawlers
|
|
26
|
+
- 📡 **Content Signals**: Signals AI Crawlers using [Nuxt Robots](https://nuxtseo.com/robots)
|
|
27
|
+
- 🌐 **Indexable Pages**: Integrating with [Nuxt Sitemap](https://nuxtseo.com/sitemap) to index only AI-allowed pages
|
|
28
28
|
- 📦 **Bulk Chunk Export**: Exported token optimized chunks ready for RAG and semantic search
|
|
29
29
|
- ⚡ **MCP Integration**: Let AI agents query your site directly
|
|
30
30
|
|
package/dist/module.d.mts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import * as _nuxt_schema from '@nuxt/schema';
|
|
2
|
-
import { BulkChunk, ModuleOptions } from '../dist/runtime/types.js';
|
|
2
|
+
import { BulkChunk, LlmsTxtConfig, ModuleOptions } from '../dist/runtime/types.js';
|
|
3
3
|
export { BulkChunk, ModuleOptions } from '../dist/runtime/types.js';
|
|
4
4
|
|
|
5
5
|
interface ModuleHooks {
|
|
@@ -20,6 +20,13 @@ interface ModuleHooks {
|
|
|
20
20
|
description: string;
|
|
21
21
|
headings: Array<Record<string, string>>;
|
|
22
22
|
}) => void | Promise<void>;
|
|
23
|
+
/**
|
|
24
|
+
* Hook to modify llms.txt configuration before it is finalized
|
|
25
|
+
*/
|
|
26
|
+
'ai-ready:llms-txt': (payload: {
|
|
27
|
+
sections: LlmsTxtConfig['sections'];
|
|
28
|
+
notes: string[];
|
|
29
|
+
}) => void | Promise<void>;
|
|
23
30
|
}
|
|
24
31
|
interface ModulePublicRuntimeConfig {
|
|
25
32
|
debug: boolean;
|
package/dist/module.json
CHANGED
package/dist/module.mjs
CHANGED
|
@@ -196,7 +196,7 @@ function setupPrerenderHandler(llmsTxtConfig) {
|
|
|
196
196
|
});
|
|
197
197
|
}
|
|
198
198
|
|
|
199
|
-
const module = defineNuxtModule({
|
|
199
|
+
const module$1 = defineNuxtModule({
|
|
200
200
|
meta: {
|
|
201
201
|
name: "nuxt-ai-ready",
|
|
202
202
|
compatibility: {
|
|
@@ -367,9 +367,8 @@ export {}
|
|
|
367
367
|
if (nuxt.options.build) {
|
|
368
368
|
addPlugin({ mode: "server", src: resolve("./runtime/nuxt/plugins/prerender") });
|
|
369
369
|
}
|
|
370
|
-
|
|
371
|
-
|
|
372
|
-
}
|
|
370
|
+
addServerHandler({ route: "/llms.txt", handler: resolve("./runtime/server/routes/llms.txt.get") });
|
|
371
|
+
addServerHandler({ route: "/llms-full.txt", handler: resolve("./runtime/server/routes/llms.txt.get") });
|
|
373
372
|
const isStatic = nuxt.options.nitro.static || nuxt.options._generate || false;
|
|
374
373
|
if (isStatic || nuxt.options.nitro.prerender?.routes?.length) {
|
|
375
374
|
setupPrerenderHandler(mergedLlmsTxt);
|
|
@@ -380,4 +379,4 @@ export {}
|
|
|
380
379
|
}
|
|
381
380
|
});
|
|
382
381
|
|
|
383
|
-
export { module as default };
|
|
382
|
+
export { module$1 as default };
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "nuxt-ai-ready",
|
|
3
3
|
"type": "module",
|
|
4
|
-
"version": "0.2.
|
|
4
|
+
"version": "0.2.2",
|
|
5
5
|
"description": "Best practice AI & LLM discoverability for Nuxt sites.",
|
|
6
6
|
"author": {
|
|
7
7
|
"name": "Harlan Wilton",
|
|
@@ -46,19 +46,19 @@
|
|
|
46
46
|
"ufo": "^1.6.1"
|
|
47
47
|
},
|
|
48
48
|
"devDependencies": {
|
|
49
|
-
"@antfu/eslint-config": "^6.
|
|
49
|
+
"@antfu/eslint-config": "^6.4.1",
|
|
50
50
|
"@arethetypeswrong/cli": "^0.18.2",
|
|
51
51
|
"@headlessui/vue": "^1.7.23",
|
|
52
52
|
"@nuxt/content": "^3.9.0",
|
|
53
53
|
"@nuxt/devtools-ui-kit": "^3.1.1",
|
|
54
54
|
"@nuxt/module-builder": "^1.0.2",
|
|
55
|
-
"@nuxt/test-utils": "^3.
|
|
55
|
+
"@nuxt/test-utils": "^3.21.0",
|
|
56
56
|
"@nuxtjs/color-mode": "^4.0.0",
|
|
57
57
|
"@nuxtjs/eslint-config-typescript": "^12.1.0",
|
|
58
58
|
"@nuxtjs/i18n": "^10.2.1",
|
|
59
59
|
"@nuxtjs/mcp-toolkit": "^0.5.1",
|
|
60
60
|
"@nuxtjs/robots": "^5.6.0",
|
|
61
|
-
"@nuxtjs/sitemap": "^7.4.
|
|
61
|
+
"@nuxtjs/sitemap": "^7.4.8",
|
|
62
62
|
"@vitest/coverage-v8": "^4.0.15",
|
|
63
63
|
"@vueuse/nuxt": "^14.1.0",
|
|
64
64
|
"better-sqlite3": "^12.5.0",
|
|
@@ -79,7 +79,7 @@
|
|
|
79
79
|
"zod": "^4.1.13"
|
|
80
80
|
},
|
|
81
81
|
"resolutions": {
|
|
82
|
-
"nuxt-ai-ready": "
|
|
82
|
+
"nuxt-ai-ready": "wo rkspace:*"
|
|
83
83
|
},
|
|
84
84
|
"scripts": {
|
|
85
85
|
"lint": "eslint . --fix",
|