Changelog
3.8.1 (2025-11-13)
Bug Fixes
- deps: nuxt 4.2 patch (91a1de7)
- docs: docs collection prefix (72cc17d)
- make sure last char of column is not special char (#3610) (d763452)
Performance Improvements
- replace internal object records with maps (#3591) (7b16de3)
- use
moduleDependencies to install mdc module (#3597) (9600533)
3.8.0 (2025-10-29)
Features
Bug Fixes
Performance Improvements
3.7.1 (2025-09-16)
Bug Fixes
- remove
zod and zod-to-json-schema from optional deps (#3541) (8e038f0)
3.7.0 (2025-09-12)
Deprecations
The following features are deprecated and will be removed in a future release:
z re-export from @nuxt/content
- Calling
.editor() directly on zod schemas (e.g. z.string().editor(...))
Migration guide :
- import { defineContentConfig, defineCollection, z } from '@nuxt/content'
+ import { defineContentConfig, defineCollection, property } from '@nuxt/content'
+ import { z } from 'zod' // or 'zod/v3' if your setup exposes this subpath
export default defineContentConfig({
collections: {
posts: defineCollection({
type: 'page',
source: 'blog/*.md',
schema: z.object({
image: z.object({
- src: z.string().editor({ input: 'media' }),
+ src: property(z.string()).editor({ input: 'media' }),
alt: z.string(),
}),
}),
},
})
Features
- adopt standard schema spec and support different validators (#3524) (46a1004)
- inherit component prop types in content collection (#3451) (a620a2c)
Bug Fixes
ProseCode preview syntax highlighting (#3491) (4a725bd)
- add dependency at Nuxt root dir (#3525) (71f2989)
- block experimental sqlite warning on node (5ac31da)
- deprecate
nitro export in favor of server (ec97064)
- do not register
close hook if websocket is disabled (#3474) (9edcc8f)
- ignore .DS_Store files in all subdirectories (c7a9af3)
- ignore OSX meta file
.DS_Store (fe5d7f9)
- improve websocket and watcher cleanup handling (#3478) (8041807)
- inherit: cache component meta (e9658de)
- inherit: issue with property definition in arrays (873b768)
- inherit: try resolve component from root directory (b0073f1)
- inherit: type generation (63500f3)
- normalize source cwd (#3532) (0a34742)
- nuxthub: missing line separator in database migrations (#3464) (4983443)
- use listhen's
publicUrl if available (#3500) (fb0f022)
3.6.3 (2025-07-04)
Bug Fixes
3.6.2 (2025-07-02)
Features
- schema: set navigation.icon of page as icon for preview (eff825d)
Bug Fixes
- check sqlite connector only if database type is sqlite (#3425) (9166169)
- dev: dont ignore subfolders (#3421) (78f461d)
- docs: update query method to use
first() for consistency (#3430) (5fed4ea)
- fallback to api call if webassembly is not supported (#3399) (cf5ca24)
3.6.1 (2025-06-20)
Features
Bug Fixes
3.6.0 (2025-06-12)
Features
- add
findPageBreadcrumb, findPageChildren and findPageSiblings utils (#3393) (c74ec44)
- parser: allow extra transformers to provide components used (#3355) (baff541)
- source: do not watch for excluded files (2ee1149)
- toggle content heading extraction (#3400) (f01256a)
- use json schema instead of zod for internal routines (#3347) (3f2ff74)
Bug Fixes
- add
sql_dump file extension (#3339) (d0ceeb6)
- collections: default values (10f3a06)
- deps: remove optimized brace-expansion from preview module (d5ac591)
- do not escape newlines (#3320) (eb60ecb)
- module: check modules existence using
import (#3348) (bd84992)
- module: ignore files in content folder in nuxt building (#3380) (b01e307)
- preview: handle deleted key in object (231ef50)
- templates: populate preview template schema (b7230cd)
- websocket: client url (#3344) (d67b63b)
3.5.1 (2025-04-24)
Bug Fixes
- prevenr hydration when content contains
\r (c10269d)
3.5.0 (2025-04-23)
Features
Bug Fixes
- cache: split large queries (ef50925)
- cloudflare: load sql dump from assets (#3275) (453ba2e)
- collection: avoid double update of some record by using the hash column as index (#3304) (ebfb6e5)
- dev: do not create hash column on local cache table (8fff15c)
- Disallow crawlers from crawling
/__nuxt_content paths. (#3299) (849e79d)
- explicitly set the dump's content type (#3302) (e1a98d4)
- generate correct collection insert for object and array default values (#3277) (a9587ee)
- module: invalid rootDir of layer sources (#3308) (2579910)
- preview: handle collection search with prefixed sources (#3317) (c152782)
- preview: handle strings format when generating insert query (c18e094)
- preview: remove prefix when parsing files (498168f)
- preview: transform value based on schema for sql query generation (994ae98)
- reactively load components when
body changes (#3283) (b6a30aa)
- templates: props definition (997fc65)
- update csv docs & fix csv options typo (#3300) (2c2fc77)
3.4.0 (2025-03-20)
Features
- collection: add support for Bitbucket repository (#3226) (55b0e5b)
- db: experimental
node:sqlite under flag (#3230) (e97d579)
- search: retrieve extra fields in search sections (#3178) (29f4b3e)
Bug Fixes
- check for ws existence before closing (#3238) (6ec0eb8)
- module: prevent conflict with auth & security tools (#3245) (dc27bc9)
- parser: recreate highlighter when options did change (53875b1)
3.3.0 (2025-03-05)
Features
Bug Fixes
- collection: detect two part branches (b0a743b)
- database: remove comments form dump queries (#3221) (474c224)
- module: load
ts transformers (#3218) (819ab7f)
- module: prevent adding css modules in components template (1a48095), closes #3206
- preview: remove db (ad62971)
- warn about using
./ and ../ in source (7a7b3b2), closes #3215
3.2.2 (2025-02-24)
Bug Fixes
- client-database: separate db init from collection dump fetch (#3188) (82425a5)
- search: invalid helper naming (895c220), closes #3186
3.2.1 (2025-02-21)
Bug Fixes
- bunsqlite: polyfills not being loaded (#3176) (139744c)
- client-database: prevent concurrent initialization (#3174) (49531dd)
- ContentRenderer: async loader types (f1a9b8e)
- llms: add missing import for
defineNitroPlugin (#3170) (b091253)
- llms: add missing import on
queryCollection (2fe61e6)
3.2.0 (2025-02-20)
Features
Bug Fixes
queryCollectionItemSurroundings type definition in built module (#3121) (808c133)
- allow
count(*) query (71221d3), closes #3136
- constant initialization of content tables (#3146) (b2b1b4e)
- database: prevent creating multiple database connections (#3126) (06a7014)
- generate checksum after processing all sources (e97c787)
- manage concurent initializations (#3132) (c351947)
- nuxtlabs studio url in migration (#3150) (5e69bf2)
- remove zod from server bundle (842bcd6)
- renderer: do not ignore component objects (#3127) (8a66225)
- type: register module hooks types (#3166) (afcf815)
- type: type error on built package (7be1a2b)
- use a 90 seconds timeout to prevent Cloudflare from timing out (#3160) (7552090)
3.1.1 (2025-02-11)
Bug Fixes
- docs: use
bindingName instead of binding (#3109) (311609c)
- don't force pg for vercel (#3093) (0866008)
- preset: allow presets to provide default options (254fd24)
- query: allow uppercase in column names (#3100) (598dd13)
- vercel: use
/tmp directory for sqlite db (#3108) (bfc58cc)
3.1.0 (2025-02-03)
Features
node-sqlite3 connector (#3032) (1188550)
- db: drop built-in database adapters in favor of db0 connectors (#3010) (1a7371a)
- integrate with NuxtHub database queries (#3019) (7b480c5)
- module: extend content transformers (#3056) (5ac8532)
- search: allow filtering contents in search sections (#3053) (2dc38cf)
Bug Fixes
- changelog: image size (7c8e950)
- convert boolean value to number in query condition (#2927) (#3018) (c11f90a)
- fix broken install link (#2990) (b8da5ee)
- highlighter: support custom languages (cfc9f43), closes #3067
- hmr: ignore sources without
cwd (1a8c2bd)
- invalid sqlite3 connector resolve (74dd3e1)
- migration doc typo (#3017) (ada613f)
- module: clone layers to prevent side-effect (b4e7dec)
- module: collection detection on windown file-watcher (#3006) (3807fe9)
- module: content parser error handling (#3046) (022c385)
- module: remove
scule from optimizeDps list (ddb3bc8), closes #3042
- nuxthub: ensure database is enabled (b46fc37)
- nuxthub: split queries into 1MB chunks (083a47a)
- parse new content when file is modified (5dc3429)
- parser: de-prioritise code highlighter plugin (#3009) (dc7d866)
- preview: draft ready not received event (a8ee72e)
- preview: handle index file in prefix folder (i18n) (37d3008)
- preview: optimize brace-expansion (e84e7f4)
- preview: take exclude into account to find collection (bddd834)
- query: handle comments and improve single selection (8de0f14), closes #3054
- schema: mark
ZodMap as json field (69a14fa)
- studio: return when collection not found (454a22d)
- template: demo url (#2983) (57ee33d)
- templates: handle cors form studio (06b57ac)
- vercel: default database url (042c548)
- wasm: ignore OPFS warning as Nuxt Content does not depend on it (5d5506c)
- wasm: override logger functions (#3024) (99f5ac9)
3.0.1 (2025-01-27)
Bug Fixes
- studio: return when collection not found (0e0c8e7)
- validate query before execute (#3048) (0f0da14)
3.0.0 (2025-01-16)
Bug Fixes
Features
Bug Fixes
- docs: ensure card prose on the homepage matches the correct title (#2919) (67c57a7)
- hooks: generate missing dirname & extension in vFile (e048a55), closes #2970
- module: update dump template on new file creation (e098115)
- module: mark
build.pathMeta as optional in module config (8329a63)
- module: split big sql queries into two (#2917) (a27dcae)
- navigation: prevent duplicate nodes (#2959) (67d6c6b)
- navigation: respect user defined order (#2974) (b832033)
- prevent import cache in development (8ea4de1)
- refine json and boolean fields after retrieving content (#2957) (0dacb1e)
- shiki: inline codes syntax highlighting (f124c95)
- shiki: preserve style priority on compress (b95e807)
- sqlite: remove extra
/ from database filename in windows (8a9af69), closes #2897
- sqlite: remove leading
/ from file path (85010c1)
- types: inject content types to server tsConfig (203ac90), closes #2968
- typos: collectionQureyBuilder (#2953) (71036e2)
- undefined ssr event & and invalid column update (#2962) (9660776)
- vfile extension format (12aef72)
Performance Improvements
Features
- build: allow modifying
slugify options (#2898) (d05f0ed)
- config: provide defineContentConfig utility (#2891) (cf85cd4)
- multi source collection (acfbe96)
- query: support complex SQL where conditions (#2878) (7f8f128)
- studio: integration (#2836) (99f6f2f)
- support
where & order in navigation & surround utils (e8df390)
- support authentication token for private repositories (66cd372)
- watch: watch for cahnges in all local sources (c5b1a4f)
Bug Fixes
- collection: path route matching (8ae885d)
- collection: respect default value in
null fields (9fdc4d6)
- ContentRenderer: render
empty slot if body is empty (c325151), closes #2877
- correct typos in comments within mergeDraft function (006c615)
- docs: prerendering issues (c9a0cda)
- hot reload: normalize files path in windows (f883273), closes #2872
- lint: single function argument (c96fd9d)
- module: postgres database types (36d3b08)
- navigation: highlight (862a8b4)
- navigation: mobile display (0525e9d)
- preview: move comment (72e894e)
- preview: prerendering issue on load (b955f76)
- query: ensure fields are unique in query (9b4635e)
- query: no trailing slash on path (a2e5c9f)
- renderer: bundle prose/alias components (bd9e15b)
- studio: find index file collection by route path (c3f2b9b)
- studio: use minimatch for browser (a1582b6)
- surround: do not use parent item if it exists as first child (5810fc6)
- surround: handle missing path (59c69bc)
- surround: remove all posible dupplicate paths (d529996)
- typecheck (4890997)
- typecheck prepack (dae4149)
Performance Improvements
- broadcase changes before templates update (2957772)
Features
- add support for LibSQL (e345fdc)
- enable
remark-mdc automatic unwrap (b5b7759)
- provice default value for seo title & description (c8d8848)
Bug Fixes
- broken util (89352b8)
- build: do not return database in
dropContentTables (668bc15)
- ContentRenderer: typo in class props (e817035)
- deprioritise
~/components/content directory (0a7077a)
- deps: use
@nuxt/content from workspace (4d89141)
- Dev: update dump on file modification and deletion (21a04d7)
- drop
markdown.mdc option, plugin can be controlled vie markdown.remarkPlugins (1cf4cbd)
- drop
useContentHead in favor of useSeoMeta (ca78aaf)
- drop content tables to start local server with a clean state (#2859) (aa4614d)
- icons: use local server bundle (a440e2f)
- source: do not edit
source.include (fa591ff)
- typo (e0f7bf5)
- unshift components dirs to prevent getting prefixed (8f8b373)
- use version for info collection (a79040d)
v2.13.4
compare changes
🏡 Chore
❤️ Contributors
v2.13.3
compare changes
🩹 Fixes
- module: Allow using
@nuxtjs/mdc utils via content module (#2775)
- search: Add
charset=utf-8 to headers of indexed mode (#2729)
- docs: Add warning about using
ssr: false with Content (#2776)
- Corrected .gradient class (#2723)
- build: Keep parser deps out of main bundle (#2780)
- navigation: Respect query locale (#2772)
- Import
defineNitroPlugin from #imports (34f65172)
- Respect
draft key as _draft (#2738)
- Draft field order (b0b5eb2d)
📖 Documentation
- Fix incorrect TS types import path in documentation (#2773)
- Missing imports and typo in code blocks (#2741)
- Changed types path (#2735)
- Fix typo in SSR warning on Installation page (#2777)
- Update link to downloads count badge (c1d6ad14)
🏡 Chore
❤️ Contributors
v2.13.2
compare changes
🚀 Enhancements
- home: Update studio section (#2696)
- landing: Design review (#2703)
🩹 Fixes
- Add string type to gt/lt/gte/lte type definitions (#2704)
- search: Non-md file might not have dscription file (#2706)
- module: Disable MDC plugin if user disabled it (#2707)
- Unwatch storage on nitro
close (ec7105ad)
📖 Documentation
- Add missing
await for searchContent docs (#2692)
- Prerender home (4253f0bf)
- Update
nuxt-og-image and add postinstall script (#2705)
- Update ContentSlot Documentation (#2713)
🤖 CI
❤️ Contributors
v2.13.1
compare changes
🔥 Performance
- dev-cache: Improve localhost markdown page navigation performance (when having 2,000+ pages) (#2675)
🩹 Fixes
- module: Do not force prerender index page (#2681)
- Hot reload on dev server for documentDriven: false (#2686)
📖 Documentation
- Typo in configuration (#2677)
- Add missing await keyword in search documentation (#2687)
🏡 Chore
❤️ Contributors
v2.13.0
compare changes
🚀 Enhancements
- Top level
content/ directory in Nuxt 4 compatibility version (#2649)
🩹 Fixes
- Optimise nested dependencies (#2583)
- Opt in to
import.meta.* properties (#2597)
- Ignore unsupported files from contents list (#2607)
- module: Convert
content-slot to MDCSlot (#2632)
- Fix typo in logger warning message (#2626)
- search: Keep page's beginning paragraphs (#2658)
- Add Nitro hooks types declarations (#2655)
- Filter draft files in production (#2648)
- search: Use page title as default title for sections (9d81acc2)
- Init storage only when used (#2670)
- Use runtimeconfig only when necessary (6f06f356)
- Do not update
devDependencies (062fb97f)
- search: Improve sections with root node (#2672)
- prerender: Ensure
/ exists inside prerender rotues (#2673)
📖 Documentation
- Update to @nuxt/fonts (40b3a070)
- Update ui-pro ui props (#2585)
- Use new
nuxi module add command in installation (#2603)
- Add multiple slots example (#2619)
- Better excerpt description (#2633)
- Update version (cc894eb2)
- Resolution for nuxt/ui (b581635e)
- Fix and update transformers (#2639)
- Fix social card in README (#2659)
🏡 Chore
❤️ Contributors
v2.12.1
compare changes
🩹 Fixes
- Missing import (#2560)
- types: Use const type parameter for QueryBuilder only (#2546)
- Split
getContent to chunks in getIndexedContentsList (#2354, #2549)
- types: Add const type parameter for QueryBuilder.only() and .without() (#2573)
📖 Documentation
- Typo in showURL prop (#2537)
- Add descriptions of all match operators (#2552)
- Update
highlight.langs defaults (#2559)
🏡 Chore
- Fix Nuxt extends in renovate.json (#2567)
- Upgrade
@nuxtjs/mdc (8a176f93)
❤️ Contributors
v2.12.0
compare changes
🚀 Enhancements
- Adopt to mdc v0.4 (#2539)
🔥 Performance
- content-list: Cache contents list during generation and per-request (#2527)
🩹 Fixes
- module: Handle former props in ContentSlot transformer (#2525)
- client-db: Fetch dir config on legacy query (4b9b6b7a)
- navigation: Ignore extensions on navigation sort (#2529)
📖 Documentation
🏡 Chore
- tw-support: Get cssPath from array (#2501)
- Missing imports in playground (e7e082c3)
- Upgrade
@nuxtjs/mdc (d3437082)
❤️ Contributors
v2.11.0
compare changes
🩹 Fixes
- types: Fields in
experimental.search can be optional (#2506)
- ContentSlot: Detect multiline usage (#2508)
📖 Documentation
- Fix component name (#2482)
- Search result variable name (#2485)
- Updates (d41902ad)
- Mention that
searchContent is an experimental feature (#2505)
- Add carbon ads (77163e4b)
📦 Build
- Do not emit
.mjs in runtime directory (#2514)
🏡 Chore
- Move to
shikiji for types (#2495)
- Remove unused argument (#2496)
- dx: Remove caching for dev HMR (78e1eebe)
❤️ Contributors
v2.10.0
compare changes
🚀 Enhancements
- Add homepage on package.json (#2413)
- api: Cache api endpoints (d2bcf70f)
🩹 Fixes
- Add missing imports for search (#2412)
- Import nuxt composables from #imports (#2418)
- 7.search-content.md typo (7bf89960)
- Enable cache only for clientDb (#2425)
- Remove d.ts (#2427)
- Ensure
bundler module resolution works with runtime type imports (#2470)
- Imports (f33f5a20)
📖 Documentation
🏡 Chore
- perf: Leverage ISR instead for query caching (dee73c67)
- Remove routeRules added (6b94f131)
- perf: Leverage ISR instead for query caching" (6a56986c)
- Upgrade @nuxtjs/mdc^0.3.0 (8c442665)
- Remove
ts-ignore as unstorage has fixed subpath export (#2472)
- Test bundler module resolution (#2474)
❤️ Contributors
v2.9.0
compare changes
🚀 Enhancements
🩹 Fixes
- path-meta: Prevent
undefined error (1257cb5c)
- Types import (ee4ea3ad)
- Ignore regexes in fetchDirConfig (#2362)
- Optional experimental options (#2391)
- Update types and imports (061192c5)
- Prevent duplicate parses (a208567e)
- Prevent duplicate parses (dae92681)
📖 Documentation
- Update to latest ui-pro (a08dc1b8)
- Remove global style (e58855fb)
- Add terms (798a0a8c)
- Add data pops in ContentRendererMarkdown and varaibles binding (#2360)
- Update examples for content helpers composable (b6ff9ba2)
- Upgrade deps (feca11b6)
- Improve home (fe357920)
- Add links for shiki on home (#2386)
- Update highlight.preload config (#2395)
- Grammatical tweaks on markdown page (#2394)
- Update bindings with default value (#2397)
- Update 3.search.md (40a2e5de)
❤️ Contributors
v2.8.5
compare changes
🩹 Fixes
❤️ Contributors
v2.8.4
compare changes
🩹 Fixes
- prose-pre: Only wrap
slot in pre (#2348)
❤️ Contributors
v2.8.3
compare changes
🚀 Enhancements
- Update types (#2156)
- Docs rework with Nuxt UI (#2310)
- Add binding for external data (#2296)
🩹 Fixes
- findSurround: Use filtered contents to find surround (#2291)
- Remove deletion of
prerenderedAt key (#2280)
- module: Remove deprecated
resolveModule (#2298)
- surround: Respect
only and without filters (#2311)
- Add missing dependencies (#2313)
- tailwindcss: Tailwindcss HMR support for content files (#2315)
- Fetch content chunked (#2321)
- storage: Prevent duplicate parsing (#2326)
- Add regex to match ContentSlot in Pug templates (#2344)
📖 Documentation
🏡 Chore
❤️ Contributors
v2.8.2
compare changes
🩹 Fixes
- query: Prevent
undefined error (b680b47c)
- navigation: Prevent client-db conflict (fd8e3b82)
- serverQueryContent: Do not expose advanced query typing (09e37c19)
- document-driven: Invalid composable import (e56f71dc)
- ContentList: Component slot typechecking (#2277)
❤️ Contributors
v2.8.1
compare changes
🩹 Fixes
- Cannot read properties of undefined (11c3b09f)
❤️ Contributors
v2.8.0
compare changes
🚀 Enhancements
- Add count method (#1924)
- nuxt-mdc: Extract markdown parser (#2187)
- Advanced query schema (#2213)
- Allow to disable content head (#2142)
🩹 Fixes
- Markdown render compatiblity (d81a08a2)
- slot: Rename ContentSlot to MDCSlot in render function (efc60481)
- module: Slot transform sourcemap (7558cf0d)
- ProseImg: Prevent conflict between
src and baseURL (#2242)
- Custom drivers failed on build (#2193)
- ContentRenderer: Render contents only with excerpt (#2246)
- content-slot: Better slot name regex (329cf3bc)
📖 Documentation
- Pre-render pages (#2196)
- v1: Link button wrapping for small screens (#2199)
- Add count method (#2200)
- Add edge alert (c582469c)
- Update README.md (#2226)
- mdc: Fix
{attribute} examples (#2228)
- Add warning for
<NuxtPage/> existence in app.vue (#2244)
<ContentDoc> slot example (0bfc275d)
- Fix prose links (aa61d9fd)
- Update prose source links (9720a333)
🏡 Chore
❤️ Contributors
v2.7.2
compare changes
🩹 Fixes
- Remark plugins deprecated warning (#2188)
- Allow
] in filename code block (#2169)
📖 Documentation
- Update slots example for the
content-query component (#2190)
❤️ Contributors
v2.7.1
compare changes
🚀 Enhancements
- Add studio banner (#2165)
🔥 Performance
- Keep document-drive state in
shallowRef and prefetch pages/components (#2118)
🩹 Fixes
- Replace crlf line endings with lf (#2120)
- Use
consola.withTag instead of kit.useLogger (#2140)
- module: Add
yml / json extensions to tailwind content files (#2147)
- Remove unneeded await (#2175)
- Use unstorage types (#2136)
- Uppercase in path (#2170)
- markdown: Allow plugin with array type option (#2114)
- Allow empty string in
$contains (#2179)
- Remove favicon handling (#2157)
📖 Documentation
- Reorder document-driven page slots components description (#2108)
- Add utm_source in banner link (f9a0113e)
- Use lowercase typings, use
([ instead of or in type declaration (#2167)](https://github.com/nuxt/content/commit/` instead of or in type declaration (#2167)))
- Add warning about windows development (#2180)
❤️ Contributors
v2.7.0
compare changes
🚀 Enhancements
- shiki: Support italic, bold and underline styles (#2079)
- config: Update ignores to advanced pattern (#2035)
🩹 Fixes
- link: Remove hash before checking if ending by '.md' (#2033)
- markdown: Prevent script execution (#2040)
- code-block: Pass language as class name (#2064)
- tailwind-integration: Allow content as object (#2060)
- code-block: Meta property (#2067)
- markdown: Respect
_draft key in frontmatter (#2077)
📖 Documentation
- Guide for adding custom grammars for syntax highlighting (7da9b286)
- Add example of additional sorting options for queryContent (#2042)
- Explain useasyncdata wrapping (#2054)
- Update url (#2055)
- Add latest to nuxi command (2939b793)
- Update
Content Wind live demo url (#2080)
- Update links (#2085)
- Remove outdated description (#2098)
🏡 Chore
- Use caret dependency for kit (#2044)
❤️ Contributors
v2.6.0
compare changes
🚀 Enhancements
- CodeBlock: Add line number attribute to code block lines (#1973)
- More flexible ignores configuration (#2022)
🩹 Fixes
- type: Content locale (#1965)
- markdown: Html ids in markdown headings should not start with a digit (#1961)
- useContentHead: Set
property instead of name for OG metadata (#1981)
- Access config from
public key (#2005)
- ContentRendererMarkdown: Prevent
undefiend error on component resolve (#2021)
- code-block: Use span with
\n instead of div for lines (#2008)
- preview: Use
sessionStorage to keep token (#2020)
- shiki: Add
\n to empty lines (46f3d79f)
- markdown-renderer: Document reactivity (e46309fe)
- query: Prevent adding duplicate conditions to query (#2027)
- document-driven: Ensure layout is set on hydration (#2032)
📖 Documentation
- Add Nuxt Studio link (bc329334)
- Fix link to nitro plugins (#1969)
- Format docs & update links & fix mistakes (#1982)
- Fix template syntax (9d8478de)
❤️ Contributors
v2.5.2
compare changes
🩹 Fixes
- Revert navDirFromPath behavior (049c356d)
❤️ Contributors
v2.5.1
compare changes
🩹 Fixes
- client-db: Ensure
ignoreSources is an array (45b44a69)
- document-driven: Page layout detection (#1955)
🏡 Chore
❤️ Contributors
v2.5.0
compare changes
🚀 Enhancements
- Introduce
component-resolver transformer (#1907)
- client-db: Allow possibility to ignore some sources from client storage (#1917)
🩹 Fixes
- Add anchorLinks type (#1894)
- headings: Don't generate link if
id is missing (#1893)
- code block: Use div instead of span (#1885)
- Types (#1912)
- Db access time issue (#1838)
- Refresh content-index on nitro start (#1947)
- findSurround: Allow before and after to be 0 (#1922)
- module: Close dev server on nitro close (#1952)
📖 Documentation
- Remove extraneous comma (#1878)
- Update link to useHead (#1895)
- Update get-started description (13a2e1cf)
- Update content list query example (#1901)
- Fix deployment (#1913)
- Update documentDriven config (#1915)
- Add examples for JSON string for inline props (#1882)
- Update badges (737d5c54)
- Add github in sources (#1946)
❤️ Contributors
v2.4.3
compare changes
🚀 Enhancements
- pnpm: Switch to pnpm (local / ci) (#1868)
🩹 Fixes
- query: Decode unicode params (#1871)
🏡 Chore
❤️ Contributors
v2.4.2
compare changes
🩹 Fixes
- useContentHead: Disable host detection (f6a429dc)
📖 Documentation
🏡 Chore
❤️ Contributors
v2.4.1
compare changes
🩹 Fixes
- useContentHead:
undefined url (b157500b)
📖 Documentation
🏡 Chore
❤️ Contributors
v2.4.0
compare changes
🚀 Enhancements
- shiki-highlighter: Improve performance & auto load new languages (#1775)
- shiki: Highlight excerpt (#1802)
- markdown: Keep meta from fenced code block (#1800)
- markdown: Don't create excerpt if there is no
<!--more--> (#1801)
🩹 Fixes
- build: Do not register web-socket plugin on non-dev env (#1768)
- document-driven: Prevent
404 error on redirected pages (#1770)
- query: Ensure default values always apply to query params (#1778)
- examples: Layout duplication (#1808)
- Shiki: Sanitize highlighted text (#1818)
- markdown-link: Replacing
blank prop with target (#1828)
- highlighter: Define missing env in Vite (#1830)
- shiki: Issue with JSON import (#1824)
- markdown: XSS Prevention (#1832)
- Handle uri encoded
_pathquery (#1794)
- Add
og:title,url,description meta tags and prefix og:image with host (#1769)
- navigation: Missing import (6a1e854e)
- navigation: Missing import (1f7d3a2b)
- markdown: Images src with
baseURL (#1833)
📖 Documentation
- Update badges (5a2d2871)
- Update outdated link in
sitemap.md (#1772)
- Fix broken quickstart link (#1785)
- Fix
ContentRenderer source link (#1790)
- Fix broken nuxt link (#1789)
- Fix ContentDoc multi-slot example (#1815)
- Add note about transformer (#1826)
- Update logo (f77d7703)
🏡 Chore
✅ Tests
- Disable
autoImport (#1842)
❤️ Contributors
v2.3.0
compare changes
🚀 Enhancements
- module: Introduce
api.baseURL and deprecate base (#1695)
- Unique api calls per build (#1705)
- shiki: Expose highlighting utils (#1727)
- document-driven: Introduce
start and finish hooks (#1744)
- query: Fully cacheable api (#1752)
🩹 Fixes
- markdown: Resolve custom shiki languages (#1692)
- clientDB: Disable clientDB if token is set and has falsy value (#1700)
- shiki: Issue with merging multiple themes (#1703)
- query: Invalid response on missing content (#1706)
- test: Typo (#1707)
- markdown: Remove double and trailing dashes from heading ids (#1711)
- ws: Prevent port conflict on running multiple instances (#1721)
- markdown: Remove extra dash from heading id (4c376587)
- Typo (a7912af1)
- build: Invalid cache route handler (ae138a87)
- ContentRendererMarkdown: Recreate vNodes in render function (#1734)
- query: Fallback to default locale if query has no filter on
_locale (#1748)
- module: Put query parameters removal under an experimental flag (#1757)
- Add missing imports (5285db01)
💅 Refactors
- ContentRenderer: Simplify conditions (#1715)
- Shiki: Prepare Shiki highlighter for external usage (#1720)
📖 Documentation
🏡 Chore
- Upgrade deps (#1691)
- logging: Cleanup logging (#1733)
❤️ Contributors
v2.2.2
compare changes
🩹 Fixes
- ContentRenderer: Empty content detection (#1653)
- ContentList: Handle props change and fix slots default (#1668)
💅 Refactors
- Improve typings and simplify logic (#1669)
📖 Documentation
- Fix error in ContentQuery where clause example (#1643)
- Update sources (#1664)
- a11y: Use list for nav example (#1670)
🏡 Chore
❤️ Contributors
v2.2.1
compare changes
🩹 Fixes
- module: Do not warn when sources is empty (42fffc98)
- module: Set default hostname for dev socket (#1624)
- Document Driven: Layout prefetching (#1637)
- MarkdownParser: Refine content path in anchor link (#1629)
📖 Documentation
🏡 Chore
❤️ Contributors
- Ahad Birang
- Nobkd
- Selemondev
- Sébastien Chopin
v2.2.0
compare changes
🚀 Enhancements
- document-driven: Support
navigation.redirect from _dir files (#1545)
- Spa mode (#1525)
- Config for anchor link generation of headings (#1564)
- parser: Introduce
_dir field in contents (#1613)
🔥 Performance
- build: Build caches before pre-rendering contents (#1530)
🩹 Fixes
- module: Make
documentDriven configs optional (#1539)
- Add missing imports (451b000e)
- Missing imports on preview mode (f9f161b1)
- Use relative
.md link (#1556)
- module: Multi-source array (#1578)
- navigation: Missing composable when navigation is disabled (#1577)
- Ignore built content in preview mode (bc01cde3)
- ClientDB: Drop LocalStorage (7afd857b)
- client-db: Race-condition on multiple calls (c11a4800)
<ContentList>: Respect query.path when path is missing (#1598)
<ContentDoc>: Render blink in SSG (#1600)
- Update h3 usage with explicit
defineEventHandler (#1603)
- anchorLinks: Add useRuntimeConfig imports (#1605)
- runtime: Detect 404 api responses in SSG (#1608)
queryContent: Use path argument as prefix if there is another condition (#1612)
📖 Documentation
- Fix type
client only -> client-only (#1535)
- content-list: Updated query reference and added example (#1548)
- Add search (#1575)
- Update algolia key (9e91948e)
- Cleanup deps (#1582)
- Upgrade Content version (c76c5a75)
- Broken link on Markdown API page (#1588)
- composables: Fix close tag ContentRenderer (#1597)
- Update badge style (49b1c4cc)
- Update cover (ba2aeb45)
- No need to register manually nitro plugin (b6bbb42c)
- Fix nitro plugins link (0259a901)
- Update
findSurround usage (#1609)
- Guidance on using local images (#1617)
🏡 Chore
❤️ Contributors
- Ahad Birang
- Jan-Henrik Damaschke
- Michel EDIGHOFFER
- Nobkd
- Percy Ma
- Pooya Parsa
- Ramses Garate
- Remiconnesson
- Sai Deepesh
- Sébastien Chopin
v2.1.1
compare changes
🩹 Fixes
- document-driven: Sync page layout (#1519)
- document-driven: Disable static payload (#1526)
📖 Documentation
- document-driven: Remove edge channel info (#1462)
- Update title & description (#1505)
- document-driven: Fix typo (#1512)
❤️ Contributors
- Ahad Birang
- Nobkd
- Okoro Redemption
- Sébastien Chopin
v2.1.0
🚀 Enhancements
- types: Provide augmentations for
only and without (#1200)
- types: Expose
MarkdownParsedContent for improved type generics (#1199)
- navigation: Allow passing QueryBuilder or QueryBuilderParams in
fetchNavigation or <ContentNavigation> (#1206)
- markdown: Allow overwriting plugins (#1226)
- config: Allow ws config (#1249)
- markdown: Support multiple themes for code highlighter (#1251)
- navigation: Allow _dir.yml to filter navigation (#1261)
- source: Allow overwriting default source (#1273)
- Variable binding (#1266)
- document-driven: Add document-driven as a @nuxt/content feature (#1279)
- docs: Upgrade docus (3adf4e5d)
- use-content-head: Add helper for <head> binding (#1295)
- document-driven: Add caching layer on client-side (#1312)
- Add web-types.json for WebStorm (#1288)
- Support navigation field in content and _dir.yml (#1328)
- Disable document driven with route meta (#1333)
- tailwindcss: Support tailwindcss classes in content (with hmr) (#1351)
- Improve where query types (#1359)
- Export transformers (#1374)
- DocumentDriven configuration (#1378)
<markdown>: Support fallback default slot (#1405)
- Create index for path base search (#1401)
- Pre fetch contents on build (#1411)
- Per-page components (#1429)
- Implement csv parser with unist/mircomark stack (#1468)
- generate: Use nitro header instead of header link (#1502)
🩹 Fixes
- navigation: Allow navigation opt-out with
navigation: false (#1208)
- types: More accurately represent
ParsedContentMeta (#1196)
- types: Change
QueryBuilderParams keys to partial (#1203)
- ContentQuery: Handle
null data (#1230)
- markdown: Issue with
h1-6 tags (#1223)
- markdown: Detect inline component followed non whitespace characters (#1227)
- query: Use exact match for
findOne (#1224)
- query: Surround and only cannot be used at the same time (#1238)
- storage: Warn & ignore files with invalid characters (#1239)
- lint: Fix linting (ellipsis.vue) (855bb383)
- ContentQuery: Add condition if value is undefined (6a055081)
- mdc-parser: Minor fixes in markdown generation (caf9b83d)
- highlight: Preload common languages (#1278)
- query: Handle array fields in
$in operator (#1277)
- document-driven: Update documentDriven feature (#1294)
- highlight: Warn about languages dynamic loading (#1291)
- markdown: Generate depth field in TOC for h5 & h6 (#1296)
- Support layout from defined vue page in DDM (48fc30b0)
- ignore: Fix ignore paths injected from the module (97f1d74c)
- runtime: ContentRenderer extra props (#1300)
- Remove _theme.yml fetch with doc driven by default (#1310)
- ContentRendererMarkdown: Preload components used in content (#1309)
- markdown: Attributes of span inside headings (#1307)
- Handler files with
index as substring (#1334)
- document-driven: Rendering flash (#1336)
- DocumentDrivenNotFound shall use the layout (d41205aa)
- highlight: Remove
@nuxt/kit from runtime bundle (#1346)
- document-driven: Add empty promise for disabled features (#1356)
- hot: Mitigate empty code blocks (hotfix) (a13cca98)
- lint: Fix linting (cbf08ad9)
- highlight: Respect
highlight option (#1372)
- Clone
head.meta before manipulating (#1370)
- prose-components: Use html anchor link in headings (#1381)
- Support components/content in layers for extends (#1404)
- document-driven: Throw 404 error when content is missing (#1394)
- Import
useRoute (#1408)
- document-driven: Only set 404 status on SSR (#1409)
- query: Do not create empty
where (c71c79bd)
- content-index: Files in
content directory has higher priority (#1414)
- markdown: Add missing task list class (#1416)
- Make sure
components/content is on top in layers (#1418)
- Remove (now deprecated) template utils (#1423)
- pre-fetch: Support github driver (#1433)
- query: Ensure where is set (10709ee2)
- json: Handle parsed content (#1437)
- Avoid mutating
_layers (#1455)
- prerender: Add extension to pre-rendered queries (#1456)
<ContentRenderer>: Prioritize default slot (#1460)
useContentHead was not respecting og:image props (#1461)
- document-driven: Avoid calling middleware on hash change (5a64f469)
- runtime: Allow to give instance of the remark plugin (#1466)
- useContentHead: Set title only if defined (9b9b6489)
- module: Do not add vue files to ignore list (#1476)
<MarkDown>: Prevent multiple deprecation log (#1497)
💅 Refactors
- ⚠️ Spell
extensions correctly (#1204)
- Use
remark-mdc package (#1315)
- Extract nitro logic from transformers (#1352)
📖 Documentation
- Fix typo (fff00b19)
- Remove config redirect (04fe4248)
- Upgrade with latest docus (#1250)
- Update playground (96c161d5)
- Update driverOptions (7adaed10)
- Note about rendering content in Get Started (#1255)
- Small typo (1b7fd920)
- get-started: Minor fixes (#1274)
- Add edge releases channel (58cae1d2)
- edge-channel: Update edge package name (fe1ebb59)
- Upgrade @nuxt/content (3dc1f25d)
- Update document-driven page (90d04bb3)
- Move example of doc driven (6426160e)
- Improve examples (#1302)
- Fix inline code block (#1303)
- Fix missing slash (#1306)
- Generate blog too (#1311)
- Fix link to document-driven example (6e1ff3b1)
- Add template for doc-driven mode (a4ab9444)
- Fix the link-id for the surround EN v1 docs (#1321)
- Missing
, (#1330)
- Specify version in v1 installation guide (85e22aca)
- Remove doubled . from filename (docs FR v1) (#1323)
- Add edge channel for document-driven mode (4b23370c)
- Improve catch-all section in document-driven mode (93813f9a)
- Fix typo (e82fed4b)
- sitemap: Add npm and pnpm install script (#1349)
- Add deploy section (#1347)
- api: QueryContent().sort() descending sorting (#1364)
- Add article 'a' to sentence (#1395)
- Move fetchContentNavigation into function (#1403)
- Upgrade deps (#1424)
- Upgrade deps " (#1424)
- Fix typo 'Convent' -> 'Content' (#1442)
- Describe
highlight.preload (#1436)
- Add pnpm as project start option (#1450)
- Excerpt (#1441)
- Document transformers (#1453)
- Temporary use
<Markdown> (ac95d137)
- README: Fix link to MDC syntax (#1467)
- querying: Add
_params to api routes (#1463)
- Playground content from query (#1499)
- Upgrade docus (#1503)
- Update home page (d7bd2b1a)
- Update social image (8cdae3e2)
🏡 Chore
- Typo (fd1c56dc)
- docs: Upgrade docs (d0ee386e)
- prepare: Prepare for 2.1.0 release (update version) (3dd85b57)
- playground: Add example with ddm and vue page (07d79882)
- Remove style and rename document-driven class (8bf91546)
- Add page:content:start hook (45f696ba)
- Rename to content:middleware:start (63749d2b)
- Remove
unctx from dependencies (#1413)
- Deprecate markdown component (#1435)
- Upgrade to nuxt rc9 (#1498)
- Use latest docus (ef5c3ec9)
⚠️ Breaking Changes
- ⚠️ Spell
extensions correctly (#1204)
❤️ Contributors
- Ahad Birang
- Alexey Tuzov
- Benjamin Canac
- Clément Ollivier
- Daniel Roe
- Farnabaz
- Gregor Becker
- Gustavo Alfredo Marín Sáez
- Harlan Wilton
- Itshizhan
- Kot
- Kotaro Yabe
- Lukas Von Blarer
- Maciej Błędkowski
- Nobkd
- Pooya Parsa
- Rem
- Sébastien Chopin
- Vinayak Kulkarni
- Vinccool96
- Yaël Guilloux