[{"data":1,"prerenderedAt":842},["ShallowReactive",2],{"navigation_docs":3,"/blog/studio-oss":205},[4,24,51,73,95,112,158,171],{"title":5,"path":6,"stem":7,"children":8,"icon":23},"Getting Started","/docs/getting-started","docs/1.getting-started/1.index",[9,11,15,19],{"title":10,"path":6,"stem":7},"Introduction",{"title":12,"path":13,"stem":14},"Installation","/docs/getting-started/installation","docs/1.getting-started/2.installation",{"title":16,"path":17,"stem":18},"Configuration","/docs/getting-started/configuration","docs/1.getting-started/3.configuration",{"title":20,"path":21,"stem":22},"Migration","/docs/getting-started/migration","docs/1.getting-started/4.migration","i-lucide-square-play",{"title":25,"icon":26,"path":27,"stem":28,"children":29,"page":50},"Collections","i-lucide-database","/docs/collections","docs/2.collections",[30,34,38,42,46],{"title":31,"path":32,"stem":33},"Define","/docs/collections/define","docs/2.collections/1.define",{"title":35,"path":36,"stem":37},"Types","/docs/collections/types","docs/2.collections/2.types",{"title":39,"path":40,"stem":41},"Sources","/docs/collections/sources","docs/2.collections/3.sources",{"title":43,"path":44,"stem":45},"Validators","/docs/collections/validators","docs/2.collections/4.validators",{"title":47,"path":48,"stem":49},"Components","/docs/collections/inherit-schema-from-component","docs/2.collections/5.inherit-schema-from-component",false,{"title":52,"icon":53,"path":54,"stem":55,"children":56,"page":50},"Files","i-lucide-file","/docs/files","docs/3.files",[57,61,65,69],{"title":58,"path":59,"stem":60},"Markdown","/docs/files/markdown","docs/3.files/1.markdown",{"title":62,"path":63,"stem":64},"YAML","/docs/files/yaml","docs/3.files/2.yaml",{"title":66,"path":67,"stem":68},"JSON","/docs/files/json","docs/3.files/3.json",{"title":70,"path":71,"stem":72},"CSV","/docs/files/csv","docs/3.files/4.csv",{"title":74,"icon":75,"path":76,"stem":77,"children":78,"page":50},"Query Utils","i-lucide-square-function","/docs/utils","docs/4.utils",[79,83,87,91],{"title":80,"path":81,"stem":82},"queryCollection","/docs/utils/query-collection","docs/4.utils/1.query-collection",{"title":84,"path":85,"stem":86},"queryCollectionNavigation","/docs/utils/query-collection-navigation","docs/4.utils/2.query-collection-navigation",{"title":88,"path":89,"stem":90},"queryCollectionItemSurroundings","/docs/utils/query-collection-item-surroundings","docs/4.utils/3.query-collection-item-surroundings",{"title":92,"path":93,"stem":94},"queryCollectionSearchSections","/docs/utils/query-collection-search-sections","docs/4.utils/4.query-collection-search-sections",{"title":47,"icon":96,"path":97,"stem":98,"children":99,"page":50},"i-lucide-square-code","/docs/components","docs/5.components",[100,104,108],{"title":101,"path":102,"stem":103},"ContentRenderer","/docs/components/content-renderer","docs/5.components/0.content-renderer",{"title":105,"path":106,"stem":107},"Slot","/docs/components/slot","docs/5.components/1.slot",{"title":109,"path":110,"stem":111},"Prose Components","/docs/components/prose","docs/5.components/2.prose",{"title":113,"icon":114,"path":115,"stem":116,"children":117,"page":50},"Deploy","i-lucide-cloud-upload","/docs/deploy","docs/6.deploy",[118,122,126,130,134,138,142,146,150,154],{"title":119,"path":120,"stem":121},"Server","/docs/deploy/server","docs/6.deploy/1.server",{"title":123,"path":124,"stem":125},"Static","/docs/deploy/static","docs/6.deploy/10.static",{"title":127,"path":128,"stem":129},"Serverless","/docs/deploy/serverless","docs/6.deploy/2.serverless",{"title":131,"path":132,"stem":133},"NuxtHub","/docs/deploy/nuxthub","docs/6.deploy/3.nuxthub",{"title":135,"path":136,"stem":137},"Cloudflare Pages","/docs/deploy/cloudflare-pages","docs/6.deploy/4.cloudflare-pages",{"title":139,"path":140,"stem":141},"Cloudflare Workers","/docs/deploy/cloudflare-workers","docs/6.deploy/5.cloudflare-workers",{"title":143,"path":144,"stem":145},"Vercel","/docs/deploy/vercel","docs/6.deploy/6.vercel",{"title":147,"path":148,"stem":149},"Netlify","/docs/deploy/netlify","docs/6.deploy/7.netlify",{"title":151,"path":152,"stem":153},"AWS Amplify","/docs/deploy/aws-amplify","docs/6.deploy/8.aws-amplify",{"title":155,"path":156,"stem":157},"Docker","/docs/deploy/docker","docs/6.deploy/9.docker",{"title":159,"icon":114,"path":160,"stem":161,"children":162,"page":50},"Integrations","/docs/integrations","docs/7.integrations",[163,167],{"title":164,"path":165,"stem":166},"Nuxt i18n","/docs/integrations/i18n","docs/7.integrations/01.i18n",{"title":168,"path":169,"stem":170},"Nuxt LLMs","/docs/integrations/llms","docs/7.integrations/02.llms",{"title":172,"icon":173,"path":174,"stem":175,"children":176,"page":50},"Advanced","i-lucide-code-xml","/docs/advanced","docs/8.advanced",[177,181,185,189,193,197,201],{"title":178,"path":179,"stem":180},"Full-Text Search","/docs/advanced/fulltext-search","docs/8.advanced/1.fulltext-search",{"title":182,"path":183,"stem":184},"Raw Content","/docs/advanced/raw-content","docs/8.advanced/2.raw-content",{"title":186,"path":187,"stem":188},"SQL Storage","/docs/advanced/database","docs/8.advanced/3.database",{"title":190,"path":191,"stem":192},"Debugging tools","/docs/advanced/tools","docs/8.advanced/4.tools",{"title":194,"path":195,"stem":196},"Hooks","/docs/advanced/hooks","docs/8.advanced/5.hooks",{"title":198,"path":199,"stem":200},"Custom Source","/docs/advanced/custom-source","docs/8.advanced/6.custom-source",{"title":202,"path":203,"stem":204},"Transformers","/docs/advanced/transformers","docs/8.advanced/8.transformers",{"page":206,"surround":831},{"id":207,"title":208,"authors":209,"body":228,"categories":816,"category":817,"date":818,"description":819,"draft":50,"extension":820,"image":821,"meta":824,"navigation":825,"path":826,"seo":827,"stem":829,"__hash__":830},"posts/blog/studio-oss.md","Nuxt Studio is Now Free and Open Source",[210,216,222],{"name":211,"avatar":212,"to":214,"username":215},"Baptiste Leproux",{"src":213},"https://avatars.githubusercontent.com/u/7290030?v=4","https://x.com/_larbish","larbish",{"name":217,"avatar":218,"to":220,"username":221},"Ahad Birang",{"src":219},"https://avatars.githubusercontent.com/u/2047945?v=4","https://x.com/farnabaz","farnabaz",{"name":223,"avatar":224,"to":226,"username":227},"Sébastien Chopin",{"src":225},"https://avatars.githubusercontent.com/u/904724?v=4","https://x.com/atinux","atinux",{"type":229,"value":230,"toc":791},"minimark",[231,238,253,262,270,284,290,293,297,300,305,327,331,334,338,353,373,377,384,398,402,410,414,421,425,428,432,435,439,442,446,449,453,456,488,491,633,638,642,659,668,672,675,721,725,728,752,756,759,762,777,780,787],[232,233,234],"p",{},[235,236,237],"strong",{},"Nuxt Studio is dead, long live Nuxt Studio.",[232,239,240,241,244,245,252],{},"We promised to deliver by the end of the 2025 year and today we're keeping that promise: we're officially releasing the first stable version of Nuxt Studio as a ",[235,242,243],{},"free, open-source Nuxt module",". At the same time, we're sunsetting the legacy ",[246,247,251],"a",{"href":248,"rel":249},"https://nuxt.studio",[250],"nofollow","nuxt.studio"," platform. It now becomes the new official documentation.",[254,255,261],"u-button",{"color":256,"icon":257,"target":258,"to":259,"variant":260},"neutral","i-simple-icons-github","_blank","https://github.com/nuxt-content/nuxt-studio","outline","Discover the Nuxt Studio module on GitHub.",[263,264,266,267],"h2",{"id":265},"why-were-sunsetting-nuxtstudio","🌄 Why We're Sunsetting ",[246,268,251],{"href":248,"rel":269},[250],[232,271,272,273,278,279,283],{},"When NuxtLabs joined Vercel, we promised to make our premium products free and open source.We're following the same approach already taken with ",[246,274,277],{"href":275,"rel":276},"https://ui.nuxt.com",[250],"Nuxt UI"," and soon applied to ",[246,280,131],{"href":281,"rel":282},"https://hub.nuxt.com",[250],".",[232,285,286,287,283],{},"For us, this means everything. It's the opportunity to focus entirely on building tools that are ",[235,288,289],{},"free, open source, and accessible to everyone",[232,291,292],{},"This is why Studio platform will be discontinued.",[263,294,296],{"id":295},"meet-the-new-studio-module","🚀 Meet the New Studio Module",[232,298,299],{},"We rebuilt Studio from the ground up as a Nuxt module. The result is a fully self-hosted content management solution that runs alongside your Nuxt Content website.",[301,302,304],"h3",{"id":303},"whats-different","What's Different?",[306,307,308,315,321],"ul",{},[309,310,311,314],"li",{},[235,312,313],{},"Self-hosted"," — runs entirely on your infrastructure alongside your Nuxt app",[309,316,317,320],{},[235,318,319],{},"Free and open-source"," — released under the MIT license",[309,322,323,326],{},[235,324,325],{},"Dev integration"," — works also in development mode",[263,328,330],{"id":329},"features","📦 Features",[232,332,333],{},"This stable release includes everything you need to edit content in production:",[301,335,337],{"id":336},"tiptap-visual-editor","TipTap Visual Editor",[232,339,340,341,346,347,352],{},"The modern Notion-like editing experience for Markdown content is back with a improved version, powered by ",[246,342,345],{"href":343,"rel":344},"https://tiptap.dev/",[250],"TipTap"," integrated through the ",[246,348,351],{"href":349,"rel":350},"https://ui.nuxt.com/pro/components/editor",[250],"Nuxt UI Editor"," component:",[306,354,355,358,361,364,367,370],{},[309,356,357],{},"Rich text editing with headings, formatting, links, and more",[309,359,360],{},"MDC component support for inserting Vue components",[309,362,363],{},"Vue component props editor for visual property editing",[309,365,366],{},"Drag & drop for reordering content blocks",[309,368,369],{},"Slash commands for quick formatting access",[309,371,372],{},"Real-time conversion between visual content and MDC syntax",[301,374,376],{"id":375},"form-based-editor","Form-Based Editor",[232,378,379,380,383],{},"Schema-based forms automatically generated from your ",[246,381,382],{"href":32},"collection definitions",":",[306,385,386,389,392,395],{},[309,387,388],{},"Automatic form generation for frontmatter, YAML, and JSON files",[309,390,391],{},"Custom inputs for media and icon selection",[309,393,394],{},"Native type mapping (string → text, boolean → toggle, enum → select)",[309,396,397],{},"Array support and object support",[301,399,401],{"id":400},"file-operations","File Operations",[232,403,404,405,409],{},"Complete CRUD operations for your ",[406,407,408],"code",{},"content/"," directory: create, edit, delete, rename, and move files with built-in draft management.",[301,411,413],{"id":412},"media-management","Media Management",[232,415,416,417,420],{},"Centralized media library for assets in your ",[406,418,419],{},"public/"," directory with upload, organize and preview.",[301,422,424],{"id":423},"git-integration","Git Integration",[232,426,427],{},"Direct commits to GitHub or GitLab with conflict detection, author attribution, and custom commit messages.",[301,429,431],{"id":430},"real-time-preview","Real-time Preview",[232,433,434],{},"Live preview of draft changes on your production website with instant updates and side-by-side editing.",[301,436,438],{"id":437},"multi-language-support","Multi-Language Support",[232,440,441],{},"The Studio interface is available in 17 languages including English, French, German, Spanish, Japanese, Chinese, and more.",[301,443,445],{"id":444},"authentication-options","Authentication Options",[232,447,448],{},"Multiple authentication providers: GitHub OAuth, GitLab OAuth, Google OAuth, or custom authentication with your own flow.",[263,450,452],{"id":451},"quick-start","📦 Quick Start",[232,454,455],{},"Install the module using the Nuxt CLI:",[457,458,464],"pre",{"className":459,"code":460,"filename":461,"language":462,"meta":463,"style":463},"language-bash shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","npx nuxt module add nuxt-studio\n","Terminal","bash","",[406,465,466],{"__ignoreMap":463},[467,468,471,475,479,482,485],"span",{"class":469,"line":470},"line",1,[467,472,474],{"class":473},"sBMFI","npx",[467,476,478],{"class":477},"sfazB"," nuxt",[467,480,481],{"class":477}," module",[467,483,484],{"class":477}," add",[467,486,487],{"class":477}," nuxt-studio\n",[232,489,490],{},"Start editing in local or configure your repository for production:",[457,492,497],{"className":493,"code":494,"filename":495,"language":496,"meta":463,"style":463},"language-ts shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","export default defineNuxtConfig({\n  studio: {\n    repository: {\n      provider: 'github',\n      owner: 'your-username',\n      repo: 'your-repo',\n      branch: 'main'\n    }\n  }\n})\n","nuxt.config.ts","ts",[406,498,499,520,532,542,562,579,596,612,618,624],{"__ignoreMap":463},[467,500,501,505,508,512,516],{"class":469,"line":470},[467,502,504],{"class":503},"s7zQu","export",[467,506,507],{"class":503}," default",[467,509,511],{"class":510},"s2Zo4"," defineNuxtConfig",[467,513,515],{"class":514},"sTEyZ","(",[467,517,519],{"class":518},"sMK4o","{\n",[467,521,523,527,529],{"class":469,"line":522},2,[467,524,526],{"class":525},"swJcz","  studio",[467,528,383],{"class":518},[467,530,531],{"class":518}," {\n",[467,533,535,538,540],{"class":469,"line":534},3,[467,536,537],{"class":525},"    repository",[467,539,383],{"class":518},[467,541,531],{"class":518},[467,543,545,548,550,553,556,559],{"class":469,"line":544},4,[467,546,547],{"class":525},"      provider",[467,549,383],{"class":518},[467,551,552],{"class":518}," '",[467,554,555],{"class":477},"github",[467,557,558],{"class":518},"'",[467,560,561],{"class":518},",\n",[467,563,565,568,570,572,575,577],{"class":469,"line":564},5,[467,566,567],{"class":525},"      owner",[467,569,383],{"class":518},[467,571,552],{"class":518},[467,573,574],{"class":477},"your-username",[467,576,558],{"class":518},[467,578,561],{"class":518},[467,580,582,585,587,589,592,594],{"class":469,"line":581},6,[467,583,584],{"class":525},"      repo",[467,586,383],{"class":518},[467,588,552],{"class":518},[467,590,591],{"class":477},"your-repo",[467,593,558],{"class":518},[467,595,561],{"class":518},[467,597,599,602,604,606,609],{"class":469,"line":598},7,[467,600,601],{"class":525},"      branch",[467,603,383],{"class":518},[467,605,552],{"class":518},[467,607,608],{"class":477},"main",[467,610,611],{"class":518},"'\n",[467,613,615],{"class":469,"line":614},8,[467,616,617],{"class":518},"    }\n",[467,619,621],{"class":469,"line":620},9,[467,622,623],{"class":518},"  }\n",[467,625,627,630],{"class":469,"line":626},10,[467,628,629],{"class":518},"}",[467,631,632],{"class":514},")\n",[634,635,637],"tip",{"to":636},"https://nuxt.studio/setup","Follow the complete setup guide for detailed installation instructions.",[263,639,641],{"id":640},"sunset-timeline","📅 Sunset Timeline",[643,644,645,649,652,656],"prose-steps",{},[301,646,648],{"id":647},"now","Now",[232,650,651],{},"You can already migrate to the new module. All existing subscription have been canceled.",[301,653,655],{"id":654},"_2026","2026",[232,657,658],{},"The legacy nuxt.studio platform becomes the new official documentation and we'll keep improving this module day after day.",[660,661,662,663,667],"note",{},"The ",[246,664,251],{"href":665,"rel":666},"http://nuxt.studio",[250]," platform has always been just an editing layer. Your content lives in your Git repository and you remain in full control. The sunset of the platform will have zero impact on your deployed website or its behaviour.",[263,669,671],{"id":670},"migration-guide","🔄 Migration Guide",[232,673,674],{},"Migration is extremely simple:",[676,677,678,688,711],"ol",{},[309,679,680,683,684],{},[235,681,682],{},"Install the module",": Follow the ",[246,685,687],{"href":636,"rel":686},[250],"setup documentation",[309,689,690,693,694,699,700,705,706],{},[235,691,692],{},"Configure authentication",": Set up ",[246,695,698],{"href":696,"rel":697},"https://nuxt.studio/git-providers#github",[250],"GitHub",", ",[246,701,704],{"href":702,"rel":703},"https://nuxt.studio/git-providers#gitlab",[250],"GitLab",", or ",[246,707,710],{"href":708,"rel":709},"https://nuxt.studio/auth-providers#google",[250],"Google OAuth",[309,712,713,716,717,720],{},[235,714,715],{},"Remove legacy code",": Upcoming versions of Nuxt Content will automatically remove all legacy Studio code, but you can already remove the ",[406,718,719],{},"preview"," key in your Nuxt Content configuration.",[263,722,724],{"id":723},"whats-next","🗺 What's Next",[232,726,727],{},"We're committed to making the open-source module an even better experience. Here's what's coming in 2026:",[306,729,730,736,746],{},[309,731,732,735],{},[235,733,734],{},"AI-powered content generation"," — intelligent content suggestions and assistance",[309,737,738,741,742,283],{},[235,739,740],{},"TipTap extension exposal"," — we'll expose the TipTap extensions we've built (related to MDC syntax) so you can use it with the ",[246,743,351],{"href":744,"rel":745},"https://ui.nuxt.com/docs/components/editor",[250],[309,747,748,751],{},[235,749,750],{},"Community-driven features"," — shaped by your feedback",[263,753,755],{"id":754},"thank-you","🙏 Thank You",[232,757,758],{},"Your feedback shaped both the old and new Studio. Your support made this transition possible.",[232,760,761],{},"Thanks to Vercel for making this happen. Their pushing towards open source.",[232,763,764,765,770,771,776],{},"We're excited to see what you build with the new Nuxt Studio module. Join the conversation on ",[246,766,769],{"href":767,"rel":768},"https://github.com/nuxt-content/nuxt-studio/discussions",[250],"GitHub Discussions"," or ",[246,772,775],{"href":773,"rel":774},"https://discord.gg/sBXDm6e8SP",[250],"join our Discord"," to help shape the future of content editing.",[778,779],"hr",{},[232,781,782,783,283],{},"If you need help migrating, reach out on our ",[246,784,786],{"href":773,"rel":785},[250],"Discord server",[788,789,790],"style",{},"html pre.shiki code .sBMFI, html code.shiki .sBMFI{--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B}html pre.shiki code .sfazB, html code.shiki .sfazB{--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D}html .light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html.light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html pre.shiki code .s7zQu, html code.shiki .s7zQu{--shiki-light:#39ADB5;--shiki-light-font-style:italic;--shiki-default:#89DDFF;--shiki-default-font-style:italic;--shiki-dark:#89DDFF;--shiki-dark-font-style:italic}html pre.shiki code .s2Zo4, html code.shiki .s2Zo4{--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF}html pre.shiki code .sTEyZ, html code.shiki .sTEyZ{--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8}html pre.shiki code .sMK4o, html code.shiki .sMK4o{--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF}html pre.shiki code .swJcz, html code.shiki .swJcz{--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178}",{"title":463,"searchDepth":522,"depth":522,"links":792},[793,795,798,808,809,813,814,815],{"id":265,"depth":522,"text":794},"🌄 Why We're Sunsetting nuxt.studio",{"id":295,"depth":522,"text":296,"children":796},[797],{"id":303,"depth":534,"text":304},{"id":329,"depth":522,"text":330,"children":799},[800,801,802,803,804,805,806,807],{"id":336,"depth":534,"text":337},{"id":375,"depth":534,"text":376},{"id":400,"depth":534,"text":401},{"id":412,"depth":534,"text":413},{"id":423,"depth":534,"text":424},{"id":430,"depth":534,"text":431},{"id":437,"depth":534,"text":438},{"id":444,"depth":534,"text":445},{"id":451,"depth":522,"text":452},{"id":640,"depth":522,"text":641,"children":810},[811,812],{"id":647,"depth":534,"text":648},{"id":654,"depth":534,"text":655},{"id":670,"depth":522,"text":671},{"id":723,"depth":522,"text":724},{"id":754,"depth":522,"text":755},[],"release","2026-01-05","We're officially releasing Nuxt Studio as a free, open-source, self-hosted module. The legacy nuxt.studio platform is being sunset and now becomes the official documentation. Your content editing experience continues, now on your own terms.","md",{"src":822,"alt":823},"/blog/Nuxt-Studio-is-Dead.png","Nuxt Studio Official Release",{},true,"/blog/studio-oss",{"title":208,"description":828},"We're officially releasing Nuxt Studio as a free, open-source, self-hosted module. The legacy nuxt.studio platform is being sunset. Your content editing experience continues, now on your own terms.","blog/studio-oss","HLQh9hZ3pk0wNQxnoz1UAbHh4f9y4uCG9DLF84Wn88k",[832,837],{"title":833,"path":834,"stem":835,"description":836,"children":-1},"Meet the AI Assistant for Docus","/blog/ai-assistant","blog/ai-assistant","Setup your assistant in seconds with a single environment variable. Fast and real-time search. Make it yours with custom tools.",{"title":838,"path":839,"stem":840,"description":841,"children":-1},"Nuxt Studio Alpha Release","/blog/studio-module-alpha","blog/studio-module-alpha","Introducing the first alpha release of Nuxt Studio as a free, open-source Nuxt module. Edit your content in production with GitHub integration and real-time preview.",1774543458294]