[{"data":1,"prerenderedAt":358},["ShallowReactive",2],{"docs-navigation-en-developer":3,"docs-sections-en":70,"docs-/en/developer/plugins/examples":82},[4,9,13,37,55],{"title":5,"path":6,"stem":7,"icon":8,"children":-1},"Overview","/docs/developer","en/3.developer/0.index","tabler:layout",{"title":10,"path":11,"stem":12,"children":-1},"Handlebars","/docs/developer/handlebars","en/3.developer/1.handlebars",{"title":14,"toc":15,"icon":16,"path":17,"stem":18,"children":19,"page":36},"Plugins",true,"tabler:packages","/docs/developer/plugins","en/3.developer/3.plugins",[20,24,28,32],{"title":21,"path":22,"stem":23,"children":-1},"First Steps","/docs/developer/plugins/first-steps","en/3.developer/3.plugins/0.first-steps",{"title":25,"path":26,"stem":27,"children":-1},"Plugin-CLI","/docs/developer/plugins/plugin-cli","en/3.developer/3.plugins/1.plugin-cli",{"title":29,"path":30,"stem":31,"children":-1},"Setting Up Your Development Environment","/docs/developer/plugins/setup","en/3.developer/3.plugins/2.setup",{"title":33,"path":34,"stem":35,"children":-1},"Example plugins & templates","/docs/developer/plugins/examples","en/3.developer/3.plugins/3.examples",false,{"title":38,"icon":39,"path":40,"stem":41,"children":42,"page":36},"API","tabler:code","/docs/developer/api","en/3.developer/4.api",[43,47,51],{"title":44,"path":45,"stem":46,"children":-1},"API Endpoints","/docs/developer/api/api-endpoints","en/3.developer/4.api/api-endpoints",{"title":48,"path":49,"stem":50,"children":-1},"Property-Types","/docs/developer/api/components","en/3.developer/4.api/components",{"title":52,"path":53,"stem":54,"children":-1},"Image-scaling","/docs/developer/api/image-scaling","en/3.developer/4.api/image-scaling",{"title":56,"path":57,"stem":58,"children":59,"icon":69},"MCP","/docs/developer/mcp","en/3.developer/5.mcp/index",[60,61,65],{"title":56,"path":57,"stem":58,"children":-1},{"title":62,"path":63,"stem":64,"children":-1},"Tools Reference","/docs/developer/mcp/tools","en/3.developer/5.mcp/tools",{"title":66,"path":67,"stem":68,"children":-1},"Troubleshooting","/docs/developer/mcp/troubleshooting","en/3.developer/5.mcp/troubleshooting","tabler:robot",[71,74,77,80],{"label":72,"to":73,"active":36},"Get Started","/docs/get-started",{"label":75,"to":76,"active":36},"Guides","/docs/guides",{"label":78,"to":79,"active":36},"Resources","/docs/resources",{"label":81,"to":6,"active":15},"Developers",{"id":83,"title":33,"body":84,"description":351,"extension":352,"icon":353,"meta":354,"navigation":15,"next":353,"order":353,"path":355,"seo":356,"soon":36,"stem":35,"__hash__":357},"docs/en/3.developer/3.plugins/3.examples.md",{"type":85,"value":86,"toc":345},"minimark",[87,99,104,116,175,179,195,311,326],[88,89,90,91,98],"p",{},"The fastest way to learn the plugin system is to read plugins that already work.\nNeleto's own plugins are open source, and there are starter templates that give\nyou a working project in seconds. They all live in the\n",[92,93,97],"a",{"href":94,"rel":95},"https://github.com/Triple-A-Software",[96],"nofollow","Triple-A-Software GitHub organization",".",[100,101,103],"h2",{"id":102},"start-from-a-template","Start from a template",[88,105,106,107,110,111,115],{},"The ",[92,108,109],{"href":26},"Plugin CLI","'s ",[112,113,114],"code",{},"create"," command clones\nthe official template for you, but you can also browse these directly:",[117,118,119,132],"table",{},[120,121,122],"thead",{},[123,124,125,129],"tr",{},[126,127,128],"th",{},"Repository",[126,130,131],{},"What it is",[133,134,135,151,163],"tbody",{},[123,136,137,145],{},[138,139,140],"td",{},[92,141,144],{"href":142,"rel":143},"https://github.com/Triple-A-Software/plugin-template",[96],"plugin-template",[138,146,147,148,98],{},"The official starting point, cloned by ",[112,149,150],{},"plugin-cli create",[123,152,153,160],{},[138,154,155],{},[92,156,159],{"href":157,"rel":158},"https://github.com/Triple-A-Software/frontend-template",[96],"frontend-template",[138,161,162],{},"An SPA frontend (Nuxt + Nuxt UI) for building a plugin's admin UI.",[123,164,165,172],{},[138,166,167],{},[92,168,171],{"href":169,"rel":170},"https://github.com/Triple-A-Software/rust-backend-template",[96],"rust-backend-template",[138,173,174],{},"An example Rust backend that pairs with the frontend template.",[100,176,178],{"id":177},"learn-from-real-plugins","Learn from real plugins",[88,180,181,182,186,187,190,191,194],{},"These are the plugins Neleto publishes to the ",[92,183,185],{"href":184},"/docs/guides/plugins#through-the-plugin-store","Plugin Store"," —\neach is a small webserver using the exact same ",[92,188,189],{"href":30},"manifest","\nand ",[92,192,193],{"href":22},"endpoints"," you'd use. They're a good\nreference for components, template helpers, visitor-facing pages, dashboard cards\nand a plugin's own database.",[117,196,197,207],{},[120,198,199],{},[123,200,201,204],{},[126,202,203],{},"Plugin",[126,205,206],{},"Shows how to…",[133,208,209,225,245,257,269,284,296],{},[123,210,211,218],{},[138,212,213],{},[92,214,217],{"href":215,"rel":216},"https://github.com/Triple-A-Software/sitesearch-plugin",[96],"sitesearch-plugin",[138,219,220,221,224],{},"Full-text search: a ",[112,222,223],{},"rewriter"," to index pages, a component, a results page, and dashboard cards.",[123,226,227,234],{},[138,228,229],{},[92,230,233],{"href":231,"rel":232},"https://github.com/Triple-A-Software/blogcomment-plugin",[96],"blogcomment-plugin",[138,235,236,237,240,241,244],{},"A template ",[112,238,239],{},"helper",", public form pages, role-gated ",[112,242,243],{},"api"," routes, dashboard cards, and its own database.",[123,246,247,254],{},[138,248,249],{},[92,250,253],{"href":251,"rel":252},"https://github.com/Triple-A-Software/google-reviews-plugin",[96],"google-reviews-plugin",[138,255,256],{},"Fetch and cache data from a third-party API server-side and render it in your site's style.",[123,258,259,266],{},[138,260,261],{},[92,262,265],{"href":263,"rel":264},"https://github.com/Triple-A-Software/sitehealth-plugin",[96],"sitehealth-plugin",[138,267,268],{},"A larger admin UI, page-by-page analysis, and generating structured data (JSON-LD).",[123,270,271,278],{},[138,272,273],{},[92,274,277],{"href":275,"rel":276},"https://github.com/Triple-A-Software/mediagallery-plugin",[96],"mediagallery-plugin",[138,279,280,281,98],{},"Ship a pack of ready-to-use components built on Neleto's ",[92,282,283],{"href":53},"image scaling",[123,285,286,293],{},[138,287,288],{},[92,289,292],{"href":290,"rel":291},"https://github.com/Triple-A-Software/form-plugin",[96],"form-plugin",[138,294,295],{},"Build and store form submissions.",[123,297,298,305],{},[138,299,300],{},[92,301,304],{"href":302,"rel":303},"https://github.com/Triple-A-Software/cookiebanner-plugin",[96],"cookiebanner-plugin",[138,306,307,308,310],{},"A ",[112,309,223],{}," that injects markup into every rendered page.",[312,313,314],"note",{},[88,315,316,317,322,323,98],{},"Related: ",[92,318,321],{"href":319,"rel":320},"https://github.com/Triple-A-Software/neleto-mcp",[96],"neleto-mcp"," is the\nModel Context Protocol server behind the ",[92,324,325],{"href":57},"MCP docs",[327,328,329],"warning",{},[88,330,331,332,336,337,340,341,344],{},"Treat these as working references, not as spec. The authoritative contract is the\n",[92,333,335],{"href":334},"/docs/developer/plugins/setup#schema--editor-validation","published JSON Schema"," —\nan older example may still use a field name that has since changed (for example\nAPI access is gated with ",[112,338,339],{},"allowed_permissions",", not an older ",[112,342,343],{},"allowed_roles",").",{"title":346,"searchDepth":347,"depth":347,"links":348},"",2,[349,350],{"id":102,"depth":347,"text":103},{"id":177,"depth":347,"text":178},"Real, open-source Neleto plugins and starter templates to learn from.","md",null,{},"/en/developer/plugins/examples",{"title":33,"description":351},"60b52dNy6ucdPim1YB4t2TsfENtctSNCjVmsXMNKqOE",1792657572254]