[{"data":1,"prerenderedAt":1559},["ShallowReactive",2],{"navigation":3,"\u002Fplugins\u002Ftools\u002Fspell-checker":629,"\u002Fplugins\u002Ftools\u002Fspell-checker-surround":1554},[4,27,60,265,595,625],{"title":5,"icon":6,"path":7,"stem":8,"children":9,"page":26},"Getting started","i-lucide-rocket","\u002Fgetting-started","1.getting-started",[10,14,18,22],{"title":11,"path":12,"stem":13},"Introduction","\u002Fgetting-started\u002Fintroduction","1.getting-started\u002F1.introduction",{"title":15,"path":16,"stem":17},"Editors","\u002Fgetting-started\u002Feditors","1.getting-started\u002F2.editors",{"title":19,"path":20,"stem":21},"Editor API","\u002Fgetting-started\u002Feditor-api","1.getting-started\u002F3.editor-api",{"title":23,"path":24,"stem":25},"Migration v1 → v2","\u002Fgetting-started\u002Fmigration-v1-to-v2","1.getting-started\u002F4.migration-v1-to-v2",false,{"title":15,"icon":28,"path":29,"stem":30,"children":31,"page":26},"i-lucide-layout-panel-left","\u002Feditors","2.editors",[32,36,40,44,48,52,56],{"title":33,"path":34,"stem":35},"JSON Editor","\u002Feditors\u002Fjson","2.editors\u002F1.json",{"title":37,"path":38,"stem":39},"Markdown Editor","\u002Feditors\u002Fmarkdown","2.editors\u002F2.markdown",{"title":41,"path":42,"stem":43},"Code Editor","\u002Feditors\u002Fcode","2.editors\u002F3.code",{"title":45,"path":46,"stem":47},"Forms Editor","\u002Feditors\u002Fforms","2.editors\u002F4.forms",{"title":49,"path":50,"stem":51},"Charts Editor","\u002Feditors\u002Fcharts","2.editors\u002F5.charts",{"title":53,"path":54,"stem":55},"Calendar Editor","\u002Feditors\u002Fcalendar","2.editors\u002F6.calendar",{"title":57,"path":58,"stem":59},"Tables Editor","\u002Feditors\u002Ftables","2.editors\u002F7.tables",{"title":61,"icon":62,"path":63,"stem":64,"children":65,"page":26},"Plugins","i-lucide-puzzle","\u002Fplugins","3.plugins",[66,70,108,154,180,210,235],{"title":67,"path":68,"stem":69},"Plugins overview","\u002Fplugins\u002Foverview","3.plugins\u002F1.overview",{"title":71,"icon":72,"path":73,"stem":74,"children":75,"page":26},"Formatting","i-lucide-type","\u002Fplugins\u002Fformatting","3.plugins\u002F2.formatting",[76,80,84,88,92,96,100,104],{"title":77,"path":78,"stem":79},"Default marks","\u002Fplugins\u002Fformatting\u002Ftoolbar","3.plugins\u002F2.formatting\u002F1.toolbar",{"title":81,"path":82,"stem":83},"Font","\u002Fplugins\u002Fformatting\u002Ffont","3.plugins\u002F2.formatting\u002F2.font",{"title":85,"path":86,"stem":87},"Typography","\u002Fplugins\u002Fformatting\u002Ftypography","3.plugins\u002F2.formatting\u002F3.typography",{"title":89,"path":90,"stem":91},"Color","\u002Fplugins\u002Fformatting\u002Fcolor","3.plugins\u002F2.formatting\u002F4.color",{"title":93,"path":94,"stem":95},"Clear Styles","\u002Fplugins\u002Fformatting\u002Fclear-styles","3.plugins\u002F2.formatting\u002F5.clear-styles",{"title":97,"path":98,"stem":99},"Alignment","\u002Fplugins\u002Fformatting\u002Falignment","3.plugins\u002F2.formatting\u002F6.alignment",{"title":101,"path":102,"stem":103},"Block Style","\u002Fplugins\u002Fformatting\u002Fblock-style","3.plugins\u002F2.formatting\u002F7.block-style",{"title":105,"path":106,"stem":107},"Link","\u002Fplugins\u002Fformatting\u002Flink","3.plugins\u002F2.formatting\u002F8.link",{"title":109,"icon":110,"path":111,"stem":112,"children":113,"page":26},"Blocks","i-lucide-blocks","\u002Fplugins\u002Fblocks","3.plugins\u002F3.blocks",[114,118,122,126,130,134,138,142,146,150],{"title":115,"path":116,"stem":117},"Block","\u002Fplugins\u002Fblocks\u002Fblock","3.plugins\u002F3.blocks\u002F01.block",{"title":119,"path":120,"stem":121},"Lists","\u002Fplugins\u002Fblocks\u002Flists","3.plugins\u002F3.blocks\u002F02.lists",{"title":123,"path":124,"stem":125},"Table","\u002Fplugins\u002Fblocks\u002Ftable","3.plugins\u002F3.blocks\u002F03.table",{"title":127,"path":128,"stem":129},"Templates","\u002Fplugins\u002Fblocks\u002Ftemplates","3.plugins\u002F3.blocks\u002F04.templates",{"title":131,"path":132,"stem":133},"Code Block","\u002Fplugins\u002Fblocks\u002Fcode-block","3.plugins\u002F3.blocks\u002F05.code-block",{"title":135,"path":136,"stem":137},"Math","\u002Fplugins\u002Fblocks\u002Fmath","3.plugins\u002F3.blocks\u002F06.math",{"title":139,"path":140,"stem":141},"HTML Viewer","\u002Fplugins\u002Fblocks\u002Fhtml-viewer","3.plugins\u002F3.blocks\u002F07.html-viewer",{"title":143,"path":144,"stem":145},"Footnotes","\u002Fplugins\u002Fblocks\u002Ffootnotes","3.plugins\u002F3.blocks\u002F08.footnotes",{"title":147,"path":148,"stem":149},"Anchor Link","\u002Fplugins\u002Fblocks\u002Fanchor-link","3.plugins\u002F3.blocks\u002F09.anchor-link",{"title":151,"path":152,"stem":153},"Footer","\u002Fplugins\u002Fblocks\u002Ffooter","3.plugins\u002F3.blocks\u002F10.footer",{"title":155,"icon":156,"path":157,"stem":158,"children":159,"page":26},"Media","i-lucide-image","\u002Fplugins\u002Fmedia","3.plugins\u002F4.media",[160,164,168,172,176],{"title":161,"path":162,"stem":163},"Image","\u002Fplugins\u002Fmedia\u002Fimage","3.plugins\u002F4.media\u002F1.image",{"title":165,"path":166,"stem":167},"Video","\u002Fplugins\u002Fmedia\u002Fvideo","3.plugins\u002F4.media\u002F2.video",{"title":169,"path":170,"stem":171},"YouTube Video","\u002Fplugins\u002Fmedia\u002Fyoutube-video","3.plugins\u002F4.media\u002F3.youtube-video",{"title":173,"path":174,"stem":175},"File Upload","\u002Fplugins\u002Fmedia\u002Ffile-upload","3.plugins\u002F4.media\u002F4.file-upload",{"title":177,"path":178,"stem":179},"PDF Embed","\u002Fplugins\u002Fmedia\u002Fpdf-embed","3.plugins\u002F4.media\u002F5.pdf-embed",{"title":181,"icon":182,"path":183,"stem":184,"children":185,"page":26},"Data & embeds","i-lucide-database","\u002Fplugins\u002Fdata","3.plugins\u002F5.data",[186,190,194,198,202,206],{"title":187,"path":188,"stem":189},"JSON","\u002Fplugins\u002Fdata\u002Fjson","3.plugins\u002F5.data\u002F1.json",{"title":191,"path":192,"stem":193},"Markdown","\u002Fplugins\u002Fdata\u002Fmarkdown","3.plugins\u002F5.data\u002F2.markdown",{"title":195,"path":196,"stem":197},"Charts","\u002Fplugins\u002Fdata\u002Fcharts","3.plugins\u002F5.data\u002F3.charts",{"title":199,"path":200,"stem":201},"Form Builder","\u002Fplugins\u002Fdata\u002Fform-builder","3.plugins\u002F5.data\u002F4.form-builder",{"title":203,"path":204,"stem":205},"Calendar","\u002Fplugins\u002Fdata\u002Fcalendar","3.plugins\u002F5.data\u002F5.calendar",{"title":207,"path":208,"stem":209},"Timer","\u002Fplugins\u002Fdata\u002Ftimer","3.plugins\u002F5.data\u002F6.timer",{"title":211,"icon":212,"path":213,"stem":214,"children":215,"page":26},"Collaboration","i-lucide-users","\u002Fplugins\u002Fcollaboration","3.plugins\u002F6.collaboration",[216,219,223,227,231],{"title":211,"path":217,"stem":218},"\u002Fplugins\u002Fcollaboration\u002Fcollaboration","3.plugins\u002F6.collaboration\u002F1.collaboration",{"title":220,"path":221,"stem":222},"Comments","\u002Fplugins\u002Fcollaboration\u002Fcomments","3.plugins\u002F6.collaboration\u002F2.comments",{"title":224,"path":225,"stem":226},"Mentions","\u002Fplugins\u002Fcollaboration\u002Fmentions","3.plugins\u002F6.collaboration\u002F3.mentions",{"title":228,"path":229,"stem":230},"Track Changes","\u002Fplugins\u002Fcollaboration\u002Ftrack-changes","3.plugins\u002F6.collaboration\u002F4.track-changes",{"title":232,"path":233,"stem":234},"History","\u002Fplugins\u002Fcollaboration\u002Fhistory","3.plugins\u002F6.collaboration\u002F5.history",{"title":236,"icon":237,"path":238,"stem":239,"children":240,"page":26},"Tools","i-lucide-wrench","\u002Fplugins\u002Ftools","3.plugins\u002F7.tools",[241,245,249,253,257,261],{"title":242,"path":243,"stem":244},"Export","\u002Fplugins\u002Ftools\u002Fexport","3.plugins\u002F7.tools\u002F1.export",{"title":246,"path":247,"stem":248},"Shortcuts","\u002Fplugins\u002Ftools\u002Fshortcuts","3.plugins\u002F7.tools\u002F2.shortcuts",{"title":250,"path":251,"stem":252},"Responsive","\u002Fplugins\u002Ftools\u002Fresponsive","3.plugins\u002F7.tools\u002F3.responsive",{"title":254,"path":255,"stem":256},"Language","\u002Fplugins\u002Ftools\u002Flanguage","3.plugins\u002F7.tools\u002F4.language",{"title":258,"path":259,"stem":260},"Spell Checker","\u002Fplugins\u002Ftools\u002Fspell-checker","3.plugins\u002F7.tools\u002F5.spell-checker",{"title":262,"path":263,"stem":264},"AI Assistant","\u002Fplugins\u002Ftools\u002Fai-assistant","3.plugins\u002F7.tools\u002F6.ai-assistant",{"title":266,"icon":267,"path":268,"stem":269,"children":270,"page":26},"Integrate","i-lucide-plug","\u002Fintegrate","4.integrate",[271,275,305,359,385,423,445,471,493,523,569],{"title":272,"path":273,"stem":274},"Integrate overview","\u002Fintegrate\u002Foverview","4.integrate\u002F01.overview",{"title":276,"icon":277,"path":278,"stem":279,"children":280,"page":26},"Basics","i-lucide-book-open","\u002Fintegrate\u002Fbasics","4.integrate\u002F02.basics",[281,285,289,293,297,301],{"title":282,"path":283,"stem":284},"Persistence","\u002Fintegrate\u002Fbasics\u002Fpersistence","4.integrate\u002F02.basics\u002F1.persistence",{"title":286,"path":287,"stem":288},"Host config","\u002Fintegrate\u002Fbasics\u002Fhost-config","4.integrate\u002F02.basics\u002F2.host-config",{"title":290,"path":291,"stem":292},"Server + Vite","\u002Fintegrate\u002Fbasics\u002Fserver-vite","4.integrate\u002F02.basics\u002F3.server-vite",{"title":294,"path":295,"stem":296},"Meta-frameworks (SSR \u002F CSR)","\u002Fintegrate\u002Fbasics\u002Fmeta-ssr","4.integrate\u002F02.basics\u002F4.meta-ssr",{"title":298,"path":299,"stem":300},"Native \u002F iframe bridge","\u002Fintegrate\u002Fbasics\u002Fnative-bridge","4.integrate\u002F02.basics\u002F5.native-bridge",{"title":302,"path":303,"stem":304},"Chrome & host","\u002Fintegrate\u002Fbasics\u002Fchrome-and-host","4.integrate\u002F02.basics\u002F6.chrome-and-host",{"title":306,"icon":307,"path":308,"stem":309,"children":310,"page":26},"Frontend","i-lucide-monitor","\u002Fintegrate\u002Ffrontend","4.integrate\u002F03.frontend",[311,315,319,323,327,331,335,339,343,347,351,355],{"title":312,"path":313,"stem":314},"React","\u002Fintegrate\u002Ffrontend\u002Freact","4.integrate\u002F03.frontend\u002F01.react",{"title":316,"path":317,"stem":318},"Vue 2","\u002Fintegrate\u002Ffrontend\u002Fvue2","4.integrate\u002F03.frontend\u002F02.vue2",{"title":320,"path":321,"stem":322},"Vue 3","\u002Fintegrate\u002Ffrontend\u002Fvue3","4.integrate\u002F03.frontend\u002F03.vue3",{"title":324,"path":325,"stem":326},"Angular","\u002Fintegrate\u002Ffrontend\u002Fangular","4.integrate\u002F03.frontend\u002F04.angular",{"title":328,"path":329,"stem":330},"Svelte","\u002Fintegrate\u002Ffrontend\u002Fsvelte","4.integrate\u002F03.frontend\u002F05.svelte",{"title":332,"path":333,"stem":334},"Solid.js","\u002Fintegrate\u002Ffrontend\u002Fsolid","4.integrate\u002F03.frontend\u002F06.solid",{"title":336,"path":337,"stem":338},"Preact","\u002Fintegrate\u002Ffrontend\u002Fpreact","4.integrate\u002F03.frontend\u002F07.preact",{"title":340,"path":341,"stem":342},"Lit","\u002Fintegrate\u002Ffrontend\u002Flit","4.integrate\u002F03.frontend\u002F08.lit",{"title":344,"path":345,"stem":346},"Qwik","\u002Fintegrate\u002Ffrontend\u002Fqwik","4.integrate\u002F03.frontend\u002F09.qwik",{"title":348,"path":349,"stem":350},"jQuery","\u002Fintegrate\u002Ffrontend\u002Fjquery","4.integrate\u002F03.frontend\u002F10.jquery",{"title":352,"path":353,"stem":354},"Alpine.js","\u002Fintegrate\u002Ffrontend\u002Falpine","4.integrate\u002F03.frontend\u002F11.alpine",{"title":356,"path":357,"stem":358},"Backbone.js","\u002Fintegrate\u002Ffrontend\u002Fbackbone","4.integrate\u002F03.frontend\u002F12.backbone",{"title":360,"icon":361,"path":362,"stem":363,"children":364,"page":26},"Meta-frameworks","i-lucide-layers","\u002Fintegrate\u002Fmeta-frameworks","4.integrate\u002F04.meta-frameworks",[365,369,373,377,381],{"title":366,"path":367,"stem":368},"Next.js","\u002Fintegrate\u002Fmeta-frameworks\u002Fnext","4.integrate\u002F04.meta-frameworks\u002F1.next",{"title":370,"path":371,"stem":372},"Nuxt 3 \u002F 4","\u002Fintegrate\u002Fmeta-frameworks\u002Fnuxt","4.integrate\u002F04.meta-frameworks\u002F2.nuxt",{"title":374,"path":375,"stem":376},"SvelteKit","\u002Fintegrate\u002Fmeta-frameworks\u002Fsveltekit","4.integrate\u002F04.meta-frameworks\u002F3.sveltekit",{"title":378,"path":379,"stem":380},"Remix","\u002Fintegrate\u002Fmeta-frameworks\u002Fremix","4.integrate\u002F04.meta-frameworks\u002F4.remix",{"title":382,"path":383,"stem":384},"Astro","\u002Fintegrate\u002Fmeta-frameworks\u002Fastro","4.integrate\u002F04.meta-frameworks\u002F5.astro",{"title":386,"icon":387,"path":388,"stem":389,"children":390,"page":26},"Node \u002F edge","i-simple-icons-nodedotjs","\u002Fintegrate\u002Fnode","4.integrate\u002F05.node",[391,395,399,403,407,411,415,419],{"title":392,"path":393,"stem":394},"Express.js","\u002Fintegrate\u002Fnode\u002Fexpress","4.integrate\u002F05.node\u002F1.express",{"title":396,"path":397,"stem":398},"NestJS","\u002Fintegrate\u002Fnode\u002Fnestjs","4.integrate\u002F05.node\u002F2.nestjs",{"title":400,"path":401,"stem":402},"Fastify","\u002Fintegrate\u002Fnode\u002Ffastify","4.integrate\u002F05.node\u002F3.fastify",{"title":404,"path":405,"stem":406},"Hono","\u002Fintegrate\u002Fnode\u002Fhono","4.integrate\u002F05.node\u002F4.hono",{"title":408,"path":409,"stem":410},"Koa","\u002Fintegrate\u002Fnode\u002Fkoa","4.integrate\u002F05.node\u002F5.koa",{"title":412,"path":413,"stem":414},"Bun","\u002Fintegrate\u002Fnode\u002Fbun","4.integrate\u002F05.node\u002F6.bun",{"title":416,"path":417,"stem":418},"Deno","\u002Fintegrate\u002Fnode\u002Fdeno","4.integrate\u002F05.node\u002F7.deno",{"title":420,"path":421,"stem":422},"AdonisJS","\u002Fintegrate\u002Fnode\u002Fadonis","4.integrate\u002F05.node\u002F8.adonis",{"title":424,"icon":425,"path":426,"stem":427,"children":428,"page":26},"Python","i-simple-icons-python","\u002Fintegrate\u002Fpython","4.integrate\u002F06.python",[429,433,437,441],{"title":430,"path":431,"stem":432},"FastAPI","\u002Fintegrate\u002Fpython\u002Ffastapi","4.integrate\u002F06.python\u002F1.fastapi",{"title":434,"path":435,"stem":436},"Django","\u002Fintegrate\u002Fpython\u002Fdjango","4.integrate\u002F06.python\u002F2.django",{"title":438,"path":439,"stem":440},"Python Flask","\u002Fintegrate\u002Fpython\u002Fpython-flask","4.integrate\u002F06.python\u002F3.python-flask",{"title":442,"path":443,"stem":444},"Litestar","\u002Fintegrate\u002Fpython\u002Flitestar","4.integrate\u002F06.python\u002F4.litestar",{"title":446,"icon":447,"path":448,"stem":449,"children":450,"page":26},"PHP","i-simple-icons-php","\u002Fintegrate\u002Fphp","4.integrate\u002F07.php",[451,455,459,463,467],{"title":452,"path":453,"stem":454},"Laravel","\u002Fintegrate\u002Fphp\u002Flaravel","4.integrate\u002F07.php\u002F1.laravel",{"title":456,"path":457,"stem":458},"Symfony","\u002Fintegrate\u002Fphp\u002Fsymfony","4.integrate\u002F07.php\u002F2.symfony",{"title":460,"path":461,"stem":462},"Slim","\u002Fintegrate\u002Fphp\u002Fslim","4.integrate\u002F07.php\u002F3.slim",{"title":464,"path":465,"stem":466},"CakePHP","\u002Fintegrate\u002Fphp\u002Fcakephp","4.integrate\u002F07.php\u002F4.cakephp",{"title":468,"path":469,"stem":470},"CodeIgniter","\u002Fintegrate\u002Fphp\u002Fcodeigniter","4.integrate\u002F07.php\u002F5.codeigniter",{"title":472,"icon":473,"path":474,"stem":475,"children":476,"page":26},"Go","i-simple-icons-go","\u002Fintegrate\u002Fgo","4.integrate\u002F08.go",[477,481,485,489],{"title":478,"path":479,"stem":480},"Go Gin","\u002Fintegrate\u002Fgo\u002Fgo-gin","4.integrate\u002F08.go\u002F1.go-gin",{"title":482,"path":483,"stem":484},"Go Echo","\u002Fintegrate\u002Fgo\u002Fgo-echo","4.integrate\u002F08.go\u002F2.go-echo",{"title":486,"path":487,"stem":488},"Go Fiber","\u002Fintegrate\u002Fgo\u002Fgo-fiber","4.integrate\u002F08.go\u002F3.go-fiber",{"title":490,"path":491,"stem":492},"Go Chi","\u002Fintegrate\u002Fgo\u002Fgo-chi","4.integrate\u002F08.go\u002F4.go-chi",{"title":494,"icon":495,"path":496,"stem":497,"children":498,"page":26},"Rust","i-simple-icons-rust","\u002Fintegrate\u002Frust","4.integrate\u002F09.rust",[499,503,507,511,515,519],{"title":500,"path":501,"stem":502},"Rust Axum","\u002Fintegrate\u002Frust\u002Frust-axum","4.integrate\u002F09.rust\u002F1.rust-axum",{"title":504,"path":505,"stem":506},"Rust Actix-web","\u002Fintegrate\u002Frust\u002Frust-actix","4.integrate\u002F09.rust\u002F2.rust-actix",{"title":508,"path":509,"stem":510},"Rust Rocket","\u002Fintegrate\u002Frust\u002Frust-rocket","4.integrate\u002F09.rust\u002F3.rust-rocket",{"title":512,"path":513,"stem":514},"Rust Warp","\u002Fintegrate\u002Frust\u002Frust-warp","4.integrate\u002F09.rust\u002F4.rust-warp",{"title":516,"path":517,"stem":518},"Rust Poem","\u002Fintegrate\u002Frust\u002Frust-poem","4.integrate\u002F09.rust\u002F5.rust-poem",{"title":520,"path":521,"stem":522},"Rust Loco","\u002Fintegrate\u002Frust\u002Frust-loco","4.integrate\u002F09.rust\u002F6.rust-loco",{"title":524,"icon":525,"path":526,"stem":527,"children":528,"page":26},"JVM \u002F .NET \u002F other","i-lucide-coffee","\u002Fintegrate\u002Fjvm-dotnet","4.integrate\u002F10.jvm-dotnet",[529,533,537,541,545,549,553,557,561,565],{"title":530,"path":531,"stem":532},"Spring Boot","\u002Fintegrate\u002Fjvm-dotnet\u002Fspring","4.integrate\u002F10.jvm-dotnet\u002F01.spring",{"title":534,"path":535,"stem":536},"Quarkus","\u002Fintegrate\u002Fjvm-dotnet\u002Fquarkus","4.integrate\u002F10.jvm-dotnet\u002F02.quarkus",{"title":538,"path":539,"stem":540},"Micronaut","\u002Fintegrate\u002Fjvm-dotnet\u002Fmicronaut","4.integrate\u002F10.jvm-dotnet\u002F03.micronaut",{"title":542,"path":543,"stem":544},"Kotlin Spring Boot","\u002Fintegrate\u002Fjvm-dotnet\u002Fkotlin-spring","4.integrate\u002F10.jvm-dotnet\u002F04.kotlin-spring",{"title":546,"path":547,"stem":548},"Ktor","\u002Fintegrate\u002Fjvm-dotnet\u002Fktor","4.integrate\u002F10.jvm-dotnet\u002F05.ktor",{"title":550,"path":551,"stem":552},"ASP.NET Core","\u002Fintegrate\u002Fjvm-dotnet\u002Faspnet-core","4.integrate\u002F10.jvm-dotnet\u002F06.aspnet-core",{"title":554,"path":555,"stem":556},"Blazor","\u002Fintegrate\u002Fjvm-dotnet\u002Fblazor","4.integrate\u002F10.jvm-dotnet\u002F07.blazor",{"title":558,"path":559,"stem":560},"Phoenix","\u002Fintegrate\u002Fjvm-dotnet\u002Fphoenix","4.integrate\u002F10.jvm-dotnet\u002F08.phoenix",{"title":562,"path":563,"stem":564},"Ruby on Rails","\u002Fintegrate\u002Fjvm-dotnet\u002Frails","4.integrate\u002F10.jvm-dotnet\u002F09.rails",{"title":566,"path":567,"stem":568},"HTMX host","\u002Fintegrate\u002Fjvm-dotnet\u002Fhtmx","4.integrate\u002F10.jvm-dotnet\u002F10.htmx",{"title":570,"icon":571,"path":572,"stem":573,"children":574,"page":26},"Desktop & mobile hosts","i-lucide-smartphone","\u002Fintegrate\u002Fhosts","4.integrate\u002F11.hosts",[575,579,583,587,591],{"title":576,"path":577,"stem":578},"Flutter","\u002Fintegrate\u002Fhosts\u002Fflutter","4.integrate\u002F11.hosts\u002F1.flutter",{"title":580,"path":581,"stem":582},"Electron","\u002Fintegrate\u002Fhosts\u002Felectron","4.integrate\u002F11.hosts\u002F2.electron",{"title":584,"path":585,"stem":586},"Tauri","\u002Fintegrate\u002Fhosts\u002Ftauri","4.integrate\u002F11.hosts\u002F3.tauri",{"title":588,"path":589,"stem":590},"Wails","\u002Fintegrate\u002Fhosts\u002Fwails","4.integrate\u002F11.hosts\u002F4.wails",{"title":592,"path":593,"stem":594},"Capacitor","\u002Fintegrate\u002Fhosts\u002Fcapacitor","4.integrate\u002F11.hosts\u002F5.capacitor",{"title":596,"icon":597,"path":598,"stem":599,"children":600,"page":26},"Architecture","i-lucide-cpu","\u002Farchitecture","5.architecture",[601,605,609,613,617,621],{"title":602,"path":603,"stem":604},"Document model","\u002Farchitecture\u002Fdocument-model","5.architecture\u002F1.document-model",{"title":606,"path":607,"stem":608},"SDK reference","\u002Farchitecture\u002Fsdk","5.architecture\u002F2.sdk",{"title":610,"path":611,"stem":612},"View runtime","\u002Farchitecture\u002Fview","5.architecture\u002F3.view",{"title":614,"path":615,"stem":616},"Authoring plugins","\u002Farchitecture\u002Fauthoring-plugins","5.architecture\u002F4.authoring-plugins",{"title":618,"path":619,"stem":620},"Mermaid","\u002Farchitecture\u002Fmermaid","5.architecture\u002F5.mermaid",{"title":622,"path":623,"stem":624},"Publishing packages","\u002Farchitecture\u002Fpublishing-packages","5.architecture\u002F6.publishing-packages",{"title":626,"path":627,"stem":628},"Changelog","\u002Fchangelog","9.changelog",{"id":630,"title":631,"body":632,"description":1547,"extension":1548,"links":1549,"meta":1550,"navigation":1551,"path":259,"seo":1552,"stem":260,"__hash__":1553},"docs\u002F3.plugins\u002F7.tools\u002F5.spell-checker.md","Spell Checker Plugin",{"type":633,"value":634,"toc":1535},"minimark",[635,653,658,663,667,682,730,741,822,833,837,842,870,1189,1200,1259,1263,1270,1352,1356,1383,1387,1488,1492,1502,1506,1531],[636,637,638,639,643,644,648,649,652],"p",{},"Toggle: ",[640,641,642],"strong",{},"Tools → Spell Checker"," or ",[645,646,647],"code",{},"Mod-Shift-s",". Misspellings get a ",[645,650,651],{},"misspelled"," mark (red underline).",[654,655,657],"h2",{"id":656},"demo","Demo",[659,660],"editor-component",{":active-plugins":661,":show-results":662},"[\"SpellCheckerPlugin\"]","false",[654,664,666],{"id":665},"install-dictionaries","Install dictionaries",[636,668,669,670,677,678,681],{},"Use Hunspell packages from ",[671,672,676],"a",{"href":673,"rel":674},"https:\u002F\u002Fgithub.com\u002Fwooorm\u002Fdictionaries",[675],"nofollow","wooorm\u002Fdictionaries"," (npm: ",[645,679,680],{},"dictionary-\u003Clocale>","):",[683,684,689],"pre",{"className":685,"code":686,"language":687,"meta":688,"style":688},"language-bash shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","npm install dictionary-en\n# optional:\nnpm install dictionary-ru dictionary-de dictionary-fr\n","bash","",[645,690,691,707,714],{"__ignoreMap":688},[692,693,696,700,704],"span",{"class":694,"line":695},"line",1,[692,697,699],{"class":698},"sBMFI","npm",[692,701,703],{"class":702},"sfazB"," install",[692,705,706],{"class":702}," dictionary-en\n",[692,708,710],{"class":694,"line":709},2,[692,711,713],{"class":712},"sHwdD","# optional:\n",[692,715,717,719,721,724,727],{"class":694,"line":716},3,[692,718,699],{"class":698},[692,720,703],{"class":702},[692,722,723],{"class":702}," dictionary-ru",[692,725,726],{"class":702}," dictionary-de",[692,728,729],{"class":702}," dictionary-fr\n",[636,731,732,733,736,737,740],{},"Each package contains ",[645,734,735],{},"index.aff"," and ",[645,738,739],{},"index.dic",".",[742,743,744,757],"table",{},[745,746,747],"thead",{},[748,749,750,754],"tr",{},[751,752,753],"th",{},"Locale",[751,755,756],{},"Package",[758,759,760,771,781,791,801,811],"tbody",{},[748,761,762,766],{},[763,764,765],"td",{},"English",[763,767,768],{},[645,769,770],{},"dictionary-en",[748,772,773,776],{},[763,774,775],{},"Russian",[763,777,778],{},[645,779,780],{},"dictionary-ru",[748,782,783,786],{},[763,784,785],{},"German",[763,787,788],{},[645,789,790],{},"dictionary-de",[748,792,793,796],{},[763,794,795],{},"French",[763,797,798],{},[645,799,800],{},"dictionary-fr",[748,802,803,806],{},[763,804,805],{},"Spanish",[763,807,808],{},[645,809,810],{},"dictionary-es",[748,812,813,816],{},[763,814,815],{},"…",[763,817,818,821],{},[645,819,820],{},"dictionary-\u003Ccode>"," — see the repo for the full list",[636,823,824,825,828,829,832],{},"You can also host your own ",[645,826,827],{},".aff"," \u002F ",[645,830,831],{},".dic"," files and point URLs at them.",[654,834,836],{"id":835},"connect-to-the-editor","Connect to the editor",[838,839,841],"h3",{"id":840},"vite-vitepress","Vite \u002F VitePress",[636,843,844,846,847,850,851,854,855,858,859,861,862,865,866,869],{},[645,845,770],{}," only exports ",[645,848,849],{},"index.js"," (uses Node ",[645,852,853],{},"fs",") — do ",[640,856,857],{},"not"," deep-import ",[645,860,735],{}," via the package name (Vite\u002FNode ",[645,863,864],{},"exports"," will fail). Point at the files with ",[645,867,868],{},"import.meta.url"," (or host them yourself):",[683,871,875],{"className":872,"code":873,"language":874,"meta":688,"style":688},"language-ts shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","import { Editor, SpellCheckerPlugin } from 'on-codemerge';\nimport 'on-codemerge\u002Findex.css';\nimport 'on-codemerge\u002Fpublic.css';\n\nconst enAff = new URL('..\u002Fnode_modules\u002Fdictionary-en\u002Findex.aff', import.meta.url).href;\nconst enDic = new URL('..\u002Fnode_modules\u002Fdictionary-en\u002Findex.dic', import.meta.url).href;\n\u002F\u002F Or: import enAff from '.\u002Fdicts\u002Fen.aff?url' after copying the files into your app.\n\nconst editor = new Editor(container, {\n  plugins: [\n    SpellCheckerPlugin({\n      dictionaries: {\n        en: { aff: enAff, dic: enDic },\n        \u002F\u002F ru: { aff: ruAff, dic: ruDic },\n      },\n      \u002F\u002F defaultLocale: 'en', \u002F\u002F fallback when editor locale has no entry\n    }),\n  ],\n});\n","ts",[645,876,877,915,928,941,948,1000,1041,1047,1052,1074,1087,1098,1108,1138,1144,1150,1159,1171,1179],{"__ignoreMap":688},[692,878,879,883,887,891,894,897,900,903,906,909,912],{"class":694,"line":695},[692,880,882],{"class":881},"s7zQu","import",[692,884,886],{"class":885},"sMK4o"," {",[692,888,890],{"class":889},"sTEyZ"," Editor",[692,892,893],{"class":885},",",[692,895,896],{"class":889}," SpellCheckerPlugin",[692,898,899],{"class":885}," }",[692,901,902],{"class":881}," from",[692,904,905],{"class":885}," '",[692,907,908],{"class":702},"on-codemerge",[692,910,911],{"class":885},"'",[692,913,914],{"class":885},";\n",[692,916,917,919,921,924,926],{"class":694,"line":709},[692,918,882],{"class":881},[692,920,905],{"class":885},[692,922,923],{"class":702},"on-codemerge\u002Findex.css",[692,925,911],{"class":885},[692,927,914],{"class":885},[692,929,930,932,934,937,939],{"class":694,"line":716},[692,931,882],{"class":881},[692,933,905],{"class":885},[692,935,936],{"class":702},"on-codemerge\u002Fpublic.css",[692,938,911],{"class":885},[692,940,914],{"class":885},[692,942,944],{"class":694,"line":943},4,[692,945,947],{"emptyLinePlaceholder":946},true,"\n",[692,949,951,955,958,961,964,968,971,973,976,978,980,983,985,988,990,993,995,998],{"class":694,"line":950},5,[692,952,954],{"class":953},"spNyl","const",[692,956,957],{"class":889}," enAff ",[692,959,960],{"class":885},"=",[692,962,963],{"class":885}," new",[692,965,967],{"class":966},"s2Zo4"," URL",[692,969,970],{"class":889},"(",[692,972,911],{"class":885},[692,974,975],{"class":702},"..\u002Fnode_modules\u002Fdictionary-en\u002Findex.aff",[692,977,911],{"class":885},[692,979,893],{"class":885},[692,981,982],{"class":881}," import",[692,984,740],{"class":885},[692,986,987],{"class":889},"meta",[692,989,740],{"class":885},[692,991,992],{"class":889},"url)",[692,994,740],{"class":885},[692,996,997],{"class":889},"href",[692,999,914],{"class":885},[692,1001,1003,1005,1008,1010,1012,1014,1016,1018,1021,1023,1025,1027,1029,1031,1033,1035,1037,1039],{"class":694,"line":1002},6,[692,1004,954],{"class":953},[692,1006,1007],{"class":889}," enDic ",[692,1009,960],{"class":885},[692,1011,963],{"class":885},[692,1013,967],{"class":966},[692,1015,970],{"class":889},[692,1017,911],{"class":885},[692,1019,1020],{"class":702},"..\u002Fnode_modules\u002Fdictionary-en\u002Findex.dic",[692,1022,911],{"class":885},[692,1024,893],{"class":885},[692,1026,982],{"class":881},[692,1028,740],{"class":885},[692,1030,987],{"class":889},[692,1032,740],{"class":885},[692,1034,992],{"class":889},[692,1036,740],{"class":885},[692,1038,997],{"class":889},[692,1040,914],{"class":885},[692,1042,1044],{"class":694,"line":1043},7,[692,1045,1046],{"class":712},"\u002F\u002F Or: import enAff from '.\u002Fdicts\u002Fen.aff?url' after copying the files into your app.\n",[692,1048,1050],{"class":694,"line":1049},8,[692,1051,947],{"emptyLinePlaceholder":946},[692,1053,1055,1057,1060,1062,1064,1066,1069,1071],{"class":694,"line":1054},9,[692,1056,954],{"class":953},[692,1058,1059],{"class":889}," editor ",[692,1061,960],{"class":885},[692,1063,963],{"class":885},[692,1065,890],{"class":966},[692,1067,1068],{"class":889},"(container",[692,1070,893],{"class":885},[692,1072,1073],{"class":885}," {\n",[692,1075,1077,1081,1084],{"class":694,"line":1076},10,[692,1078,1080],{"class":1079},"swJcz","  plugins",[692,1082,1083],{"class":885},":",[692,1085,1086],{"class":889}," [\n",[692,1088,1090,1093,1095],{"class":694,"line":1089},11,[692,1091,1092],{"class":966},"    SpellCheckerPlugin",[692,1094,970],{"class":889},[692,1096,1097],{"class":885},"{\n",[692,1099,1101,1104,1106],{"class":694,"line":1100},12,[692,1102,1103],{"class":1079},"      dictionaries",[692,1105,1083],{"class":885},[692,1107,1073],{"class":885},[692,1109,1111,1114,1116,1118,1121,1123,1126,1128,1131,1133,1135],{"class":694,"line":1110},13,[692,1112,1113],{"class":1079},"        en",[692,1115,1083],{"class":885},[692,1117,886],{"class":885},[692,1119,1120],{"class":1079}," aff",[692,1122,1083],{"class":885},[692,1124,1125],{"class":889}," enAff",[692,1127,893],{"class":885},[692,1129,1130],{"class":1079}," dic",[692,1132,1083],{"class":885},[692,1134,1007],{"class":889},[692,1136,1137],{"class":885},"},\n",[692,1139,1141],{"class":694,"line":1140},14,[692,1142,1143],{"class":712},"        \u002F\u002F ru: { aff: ruAff, dic: ruDic },\n",[692,1145,1147],{"class":694,"line":1146},15,[692,1148,1149],{"class":885},"      },\n",[692,1151,1153,1156],{"class":694,"line":1152},16,[692,1154,1155],{"class":712},"      \u002F\u002F defaultLocale: 'en',",[692,1157,1158],{"class":712}," \u002F\u002F fallback when editor locale has no entry\n",[692,1160,1162,1165,1168],{"class":694,"line":1161},17,[692,1163,1164],{"class":885},"    }",[692,1166,1167],{"class":889},")",[692,1169,1170],{"class":885},",\n",[692,1172,1174,1177],{"class":694,"line":1173},18,[692,1175,1176],{"class":889},"  ]",[692,1178,1170],{"class":885},[692,1180,1182,1185,1187],{"class":694,"line":1181},19,[692,1183,1184],{"class":885},"}",[692,1186,1167],{"class":889},[692,1188,914],{"class":885},[636,1190,1191,1192,1195,1196,1199],{},"Allow asset imports in ",[645,1193,1194],{},"vite.config.ts"," \u002F VitePress ",[645,1197,1198],{},"vite"," config if needed:",[683,1201,1203],{"className":872,"code":1202,"language":874,"meta":688,"style":688},"export default defineConfig({\n  assetsInclude: ['**\u002F*.aff', '**\u002F*.dic'],\n});\n",[645,1204,1205,1220,1251],{"__ignoreMap":688},[692,1206,1207,1210,1213,1216,1218],{"class":694,"line":695},[692,1208,1209],{"class":881},"export",[692,1211,1212],{"class":881}," default",[692,1214,1215],{"class":966}," defineConfig",[692,1217,970],{"class":889},[692,1219,1097],{"class":885},[692,1221,1222,1225,1227,1230,1232,1235,1237,1239,1241,1244,1246,1249],{"class":694,"line":709},[692,1223,1224],{"class":1079},"  assetsInclude",[692,1226,1083],{"class":885},[692,1228,1229],{"class":889}," [",[692,1231,911],{"class":885},[692,1233,1234],{"class":702},"**\u002F*.aff",[692,1236,911],{"class":885},[692,1238,893],{"class":885},[692,1240,905],{"class":885},[692,1242,1243],{"class":702},"**\u002F*.dic",[692,1245,911],{"class":885},[692,1247,1248],{"class":889},"]",[692,1250,1170],{"class":885},[692,1252,1253,1255,1257],{"class":694,"line":716},[692,1254,1184],{"class":885},[692,1256,1167],{"class":889},[692,1258,914],{"class":885},[838,1260,1262],{"id":1261},"static-public-folder","Static \u002F public folder",[636,1264,1265,1266,1269],{},"Copy files into ",[645,1267,1268],{},"public\u002Fdictionaries\u002F"," and pass paths:",[683,1271,1273],{"className":872,"code":1272,"language":874,"meta":688,"style":688},"SpellCheckerPlugin({\n  dictionaries: {\n    en: {\n      aff: '\u002Fdictionaries\u002Fen.aff',\n      dic: '\u002Fdictionaries\u002Fen.dic',\n    },\n  },\n});\n",[645,1274,1275,1284,1293,1302,1318,1334,1339,1344],{"__ignoreMap":688},[692,1276,1277,1280,1282],{"class":694,"line":695},[692,1278,1279],{"class":966},"SpellCheckerPlugin",[692,1281,970],{"class":889},[692,1283,1097],{"class":885},[692,1285,1286,1289,1291],{"class":694,"line":709},[692,1287,1288],{"class":1079},"  dictionaries",[692,1290,1083],{"class":885},[692,1292,1073],{"class":885},[692,1294,1295,1298,1300],{"class":694,"line":716},[692,1296,1297],{"class":1079},"    en",[692,1299,1083],{"class":885},[692,1301,1073],{"class":885},[692,1303,1304,1307,1309,1311,1314,1316],{"class":694,"line":943},[692,1305,1306],{"class":1079},"      aff",[692,1308,1083],{"class":885},[692,1310,905],{"class":885},[692,1312,1313],{"class":702},"\u002Fdictionaries\u002Fen.aff",[692,1315,911],{"class":885},[692,1317,1170],{"class":885},[692,1319,1320,1323,1325,1327,1330,1332],{"class":694,"line":950},[692,1321,1322],{"class":1079},"      dic",[692,1324,1083],{"class":885},[692,1326,905],{"class":885},[692,1328,1329],{"class":702},"\u002Fdictionaries\u002Fen.dic",[692,1331,911],{"class":885},[692,1333,1170],{"class":885},[692,1335,1336],{"class":694,"line":1002},[692,1337,1338],{"class":885},"    },\n",[692,1340,1341],{"class":694,"line":1043},[692,1342,1343],{"class":885},"  },\n",[692,1345,1346,1348,1350],{"class":694,"line":1049},[692,1347,1184],{"class":885},[692,1349,1167],{"class":889},[692,1351,914],{"class":885},[838,1353,1355],{"id":1354},"locale-matching","Locale matching",[636,1357,1358,1359,1362,1363,1366,1367,1370,1371,1374,1375,1378,1379,1382],{},"The plugin uses the language part of ",[645,1360,1361],{},"editor.getLocale()"," (",[645,1364,1365],{},"en-US"," → ",[645,1368,1369],{},"en","). If that key is missing in ",[645,1372,1373],{},"dictionaries",", it falls back to ",[645,1376,1377],{},"defaultLocale"," (default ",[645,1380,1381],{},"'en'","), then to the first configured locale.",[654,1384,1386],{"id":1385},"options","Options",[683,1388,1390],{"className":872,"code":1389,"language":874,"meta":688,"style":688},"type SpellDictionaryFiles = { aff: string; dic: string };\n\ntype SpellCheckerOptions = {\n  \u002F** locale → URLs to Hunspell .aff \u002F .dic (required) *\u002F\n  dictionaries: Record\u003Cstring, SpellDictionaryFiles>;\n  \u002F** fallback locale key (default: 'en') *\u002F\n  defaultLocale?: string;\n};\n",[645,1391,1392,1424,1428,1439,1444,1466,1471,1483],{"__ignoreMap":688},[692,1393,1394,1397,1400,1403,1405,1407,1409,1412,1415,1417,1419,1421],{"class":694,"line":695},[692,1395,1396],{"class":953},"type",[692,1398,1399],{"class":698}," SpellDictionaryFiles",[692,1401,1402],{"class":885}," =",[692,1404,886],{"class":885},[692,1406,1120],{"class":1079},[692,1408,1083],{"class":885},[692,1410,1411],{"class":698}," string",[692,1413,1414],{"class":885},";",[692,1416,1130],{"class":1079},[692,1418,1083],{"class":885},[692,1420,1411],{"class":698},[692,1422,1423],{"class":885}," };\n",[692,1425,1426],{"class":694,"line":709},[692,1427,947],{"emptyLinePlaceholder":946},[692,1429,1430,1432,1435,1437],{"class":694,"line":716},[692,1431,1396],{"class":953},[692,1433,1434],{"class":698}," SpellCheckerOptions",[692,1436,1402],{"class":885},[692,1438,1073],{"class":885},[692,1440,1441],{"class":694,"line":943},[692,1442,1443],{"class":712},"  \u002F** locale → URLs to Hunspell .aff \u002F .dic (required) *\u002F\n",[692,1445,1446,1448,1450,1453,1456,1459,1461,1463],{"class":694,"line":950},[692,1447,1288],{"class":1079},[692,1449,1083],{"class":885},[692,1451,1452],{"class":698}," Record",[692,1454,1455],{"class":885},"\u003C",[692,1457,1458],{"class":698},"string",[692,1460,893],{"class":885},[692,1462,1399],{"class":698},[692,1464,1465],{"class":885},">;\n",[692,1467,1468],{"class":694,"line":1002},[692,1469,1470],{"class":712},"  \u002F** fallback locale key (default: 'en') *\u002F\n",[692,1472,1473,1476,1479,1481],{"class":694,"line":1043},[692,1474,1475],{"class":1079},"  defaultLocale",[692,1477,1478],{"class":885},"?:",[692,1480,1411],{"class":698},[692,1482,914],{"class":885},[692,1484,1485],{"class":694,"line":1049},[692,1486,1487],{"class":885},"};\n",[654,1489,1491],{"id":1490},"styling","Styling",[636,1493,1494,1495,1497,1498,1501],{},"Misspelled words use the ",[645,1496,651],{}," mark; public CSS paints ",[645,1499,1500],{},".misspelled-word"," with a red underline. Override in your app if needed.",[654,1503,1505],{"id":1504},"notes","Notes",[1507,1508,1509,1522,1525],"ul",{},[1510,1511,1512,1514,1515,1517,1518,1521],"li",{},[645,1513,1279],{}," is ",[640,1516,857],{}," included in ",[645,1519,1520],{},"createDefaultPlugins()"," — configure dictionaries and add it yourself.",[1510,1523,1524],{},"Code blocks are skipped.",[1510,1526,1527,1528,740],{},"Checking is debounced (~280ms) on ",[645,1529,1530],{},"docChanged",[1532,1533,1534],"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 pre.shiki code .sHwdD, html code.shiki .sHwdD{--shiki-light:#90A4AE;--shiki-light-font-style:italic;--shiki-default:#546E7A;--shiki-default-font-style:italic;--shiki-dark:#676E95;--shiki-dark-font-style:italic}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 .sMK4o, html code.shiki .sMK4o{--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF}html pre.shiki code .sTEyZ, html code.shiki .sTEyZ{--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8}html pre.shiki code .spNyl, html code.shiki .spNyl{--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA}html pre.shiki code .s2Zo4, html code.shiki .s2Zo4{--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF}html pre.shiki code .swJcz, html code.shiki .swJcz{--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178}",{"title":688,"searchDepth":709,"depth":716,"links":1536},[1537,1538,1539,1544,1545,1546],{"id":656,"depth":709,"text":657},{"id":665,"depth":709,"text":666},{"id":835,"depth":709,"text":836,"children":1540},[1541,1542,1543],{"id":840,"depth":716,"text":841},{"id":1261,"depth":716,"text":1262},{"id":1354,"depth":716,"text":1355},{"id":1385,"depth":709,"text":1386},{"id":1490,"depth":709,"text":1491},{"id":1504,"depth":709,"text":1505},"Live spell check via the in-house Hunspell engine (@codemerge\u002Fhunspell, also bundled into on-codemerge). Dictionaries are not shipped with on-codemerge — you pass .aff \u002F .dic URLs when creating the plugin.","md",null,{},{"title":258},{"title":631,"description":1547},"Pdpf9zGiSYScg5pqUkSABVeUX3IqZ8ulfeMtaBEx43A",[1555,1557],{"title":254,"path":255,"stem":256,"description":1556,"children":-1},"Toolbar UI for switching the editor locale. Core locale files live in packages\u002Feditor\u002Fsrc\u002Fi18n\u002Flocales. Large plugins add their own packs under plugins\u002F\u002Fi18n\u002Flocales and merge them on setLocale.",{"title":262,"path":263,"stem":264,"description":1558,"children":-1},"The AI Assistant Plugin provides AI-powered content generation capabilities for the on-CodeMerge editor, supporting multiple AI providers and models for automated content creation.",1794129106187]