[{"data":1,"prerenderedAt":298},["ShallowReactive",2],{"docs-navigation":3,"changelog-v0.2.0":150},[4,43,114,122],{"title":5,"icon":6,"path":7,"stem":8,"children":9,"page":-1},"Get Started","i-lucide-rocket","\u002Fdocs\u002Fget-started","docs\u002F1.get-started\u002Findex",[10,13,18,23,28,33,38],{"title":11,"path":7,"stem":8,"icon":12},"Introduction","i-lucide-compass",{"title":14,"path":15,"stem":16,"icon":17},"Key Concepts","\u002Fdocs\u002Fget-started\u002Fconcepts","docs\u002F1.get-started\u002F2.concepts","i-lucide-lightbulb",{"title":19,"path":20,"stem":21,"icon":22},"Browsing the Catalog","\u002Fdocs\u002Fget-started\u002Fbrowsing-the-catalog","docs\u002F1.get-started\u002F3.browsing-the-catalog","i-lucide-search",{"title":24,"path":25,"stem":26,"icon":27},"Managing Apps","\u002Fdocs\u002Fget-started\u002Fmanaging-apps","docs\u002F1.get-started\u002F4.managing-apps","i-lucide-settings-2",{"title":29,"path":30,"stem":31,"icon":32},"Configuration","\u002Fdocs\u002Fget-started\u002Fconfiguration","docs\u002F1.get-started\u002F5.configuration","i-lucide-sliders-horizontal",{"title":34,"path":35,"stem":36,"icon":37},"Accessing Apps","\u002Fdocs\u002Fget-started\u002Faccessing-apps","docs\u002F1.get-started\u002F6.accessing-apps","i-lucide-globe",{"title":39,"path":40,"stem":41,"icon":42},"Experimental Features","\u002Fdocs\u002Fget-started\u002Fexperimental-features","docs\u002F1.get-started\u002F7.experimental-features","i-lucide-flask-conical",{"title":44,"icon":45,"path":46,"stem":47,"children":48,"page":-1},"Templates","i-lucide-puzzle","\u002Fdocs\u002Ftemplates","docs\u002F2.templates\u002Findex",[49,51,56,79,101,105,109],{"title":11,"path":46,"stem":47,"icon":50},"i-lucide-book-open",{"title":52,"path":53,"stem":54,"icon":55},"Directory Structure","\u002Fdocs\u002Ftemplates\u002Fdirectory-structure","docs\u002F2.templates\u002F1.directory-structure","i-lucide-folder-tree",{"title":29,"icon":57,"path":58,"stem":59,"children":60,"page":-1},"i-lucide-settings","\u002Fdocs\u002Ftemplates\u002Fconfiguration","docs\u002F2.templates\u002F2.configuration\u002Findex",[61,64,69,74],{"title":62,"path":58,"stem":59,"icon":63},"Overview","i-lucide-list",{"title":65,"path":66,"stem":67,"icon":68},"Variables","\u002Fdocs\u002Ftemplates\u002Fconfiguration\u002Fvariables","docs\u002F2.templates\u002F2.configuration\u002F1.variables","i-lucide-braces",{"title":70,"path":71,"stem":72,"icon":73},"Localization","\u002Fdocs\u002Ftemplates\u002Fconfiguration\u002Flocalization","docs\u002F2.templates\u002F2.configuration\u002F2.localization","i-lucide-languages",{"title":75,"path":76,"stem":77,"icon":78},"Merging","\u002Fdocs\u002Ftemplates\u002Fconfiguration\u002Fmerging","docs\u002F2.templates\u002F2.configuration\u002F3.merging","i-lucide-git-merge",{"title":80,"icon":81,"path":82,"stem":83,"children":84,"page":-1},"Lawn Compose","i-lucide-file-code","\u002Fdocs\u002Ftemplates\u002Flawn-compose","docs\u002F2.templates\u002F3.lawn-compose\u002Findex",[85,86,91,96],{"title":62,"path":82,"stem":83,"icon":63},{"title":87,"path":88,"stem":89,"icon":90},"Format","\u002Fdocs\u002Ftemplates\u002Flawn-compose\u002Fformat","docs\u002F2.templates\u002F3.lawn-compose\u002F2.format","i-lucide-list-checks",{"title":92,"path":93,"stem":94,"icon":95},"Extensions","\u002Fdocs\u002Ftemplates\u002Flawn-compose\u002Fextensions","docs\u002F2.templates\u002F3.lawn-compose\u002F3.extensions","i-lucide-blocks",{"title":97,"path":98,"stem":99,"icon":100},"Validation","\u002Fdocs\u002Ftemplates\u002Flawn-compose\u002Fvalidation","docs\u002F2.templates\u002F3.lawn-compose\u002F4.validation","i-lucide-check-circle",{"title":102,"path":103,"stem":104,"icon":42},"Testing","\u002Fdocs\u002Ftemplates\u002Ftesting","docs\u002F2.templates\u002F4.testing",{"title":106,"path":107,"stem":108,"icon":81},"Complete Example","\u002Fdocs\u002Ftemplates\u002Fexample","docs\u002F2.templates\u002F5.example",{"title":110,"path":111,"stem":112,"icon":113},"Contributing","\u002Fdocs\u002Ftemplates\u002Fcontributing","docs\u002F2.templates\u002F6.contributing","i-lucide-git-pull-request",{"title":115,"path":116,"stem":117,"children":118,"icon":121},"Models","\u002Fdocs\u002Finference","docs\u002F3.inference\u002Findex",[119],{"title":11,"path":116,"stem":117,"icon":120},"i-lucide-construction","i-lucide-brain",{"title":123,"icon":124,"path":125,"stem":126,"children":127,"page":-1},"CLI","i-lucide-terminal","\u002Fdocs\u002Fcli","docs\u002F4.cli\u002Findex",[128,129,133,138,142,146],{"title":62,"path":125,"stem":126,"icon":63},{"title":130,"path":131,"stem":132,"icon":22},"lawn catalog","\u002Fdocs\u002Fcli\u002Fcatalog","docs\u002F4.cli\u002F2.catalog",{"title":134,"path":135,"stem":136,"icon":137},"lawn app","\u002Fdocs\u002Fcli\u002Fapp","docs\u002F4.cli\u002F3.app","i-lucide-box",{"title":139,"path":140,"stem":141,"icon":57},"lawn system","\u002Fdocs\u002Fcli\u002Fsystem","docs\u002F4.cli\u002F4.system",{"title":143,"path":144,"stem":145,"icon":81},"lawn compose","\u002Fdocs\u002Fcli\u002Fcompose","docs\u002F4.cli\u002F5.compose",{"title":147,"path":148,"stem":149,"icon":45},"lawn template","\u002Fdocs\u002Fcli\u002Ftemplate","docs\u002F4.cli\u002F6.template",{"id":151,"title":152,"body":153,"date":285,"description":286,"extension":287,"head":288,"headline":289,"meta":290,"navigation":291,"ogImage":288,"path":292,"robots":288,"schemaOrg":288,"seo":293,"sitemap":294,"stem":295,"version":296,"__hash__":297},"changelog\u002Fchangelog\u002Fv0.2.0-20.md","v0.2.0",{"type":154,"value":155,"toc":278},"minimark",[156,161,242,246,263,267],[157,158,160],"h2",{"id":159},"new-features","New Features",[162,163,164,185,191,197,203,209,215,221,234],"ul",{},[165,166,167,171,172,176,177,180,181,184],"li",{},[168,169,170],"strong",{},"Local domain names"," - Apps are accessible at ",[173,174,175],"code",{},".local"," hostnames (e.g. ",[173,178,179],{},"myapp.local",") alongside their ",[173,182,183],{},"localhost"," ports. Lawn routes traffic through a built-in reverse proxy.",[165,186,187,190],{},[168,188,189],{},"Launch in background"," - Lawn can start in menu-bar-only mode without opening the main window. Enable \"Launch in the background\" in General preferences.",[165,192,193,196],{},[168,194,195],{},"Installation progress"," - The install sheet shows detailed download and extraction progress while installing apps.",[165,198,199,202],{},[168,200,201],{},"Copy Web URL"," - Every instance menu has a \"Copy Web URL\" action for quick access to an app's address.",[165,204,205,208],{},[168,206,207],{},"Inline configuration editing"," - The instance configuration editor has a full inline edit mode.",[165,210,211,214],{},[168,212,213],{},"First-time setup hints"," - Apps that need you to create credentials (like databases) show setup notices after installation to walk you through initial configuration.",[165,216,217,220],{},[168,218,219],{},"Browse Catalog from menu bar"," - The menu bar menu has a Browse Catalog button.",[165,222,223,233],{},[168,224,225,226,229,230],{},"CLI: ",[173,227,228],{},"lawn rename"," and ",[173,231,232],{},"lawn autostart"," - Rename instances and manage autostart behavior from the terminal.",[165,235,236,241],{},[168,237,225,238],{},[173,239,240],{},"lawn experiments"," - Toggle experimental features from the terminal.",[157,243,245],{"id":244},"improvements","Improvements",[162,247,248,251,254,257,260],{},[165,249,250],{},"App search matches against tags in addition to names and descriptions.",[165,252,253],{},"Notices can show conditionally and include action buttons (for example, toggling a setting directly from a notice).",[165,255,256],{},"The menu bar shows a loading state at startup instead of an empty list.",[165,258,259],{},"Clicking an app in the menu bar opens its detail view in the main window instead of auto-starting it.",[165,261,262],{},"Karakeep's \"Disable Signups\" setting is exposed as a configurable option with a setup notice.",[157,264,266],{"id":265},"bug-fixes","Bug Fixes",[162,268,269,272,275],{},[165,270,271],{},"Failed installations clean up correctly, and retrying an install works in-place without removing the instance first.",[165,273,274],{},"Fixed memory values displaying with incorrect thousand separators.",[165,276,277],{},"Fixed a menu bar navigation race condition that could open the wrong instance on startup.",{"title":279,"searchDepth":280,"depth":280,"links":281},"",2,[282,283,284],{"id":159,"depth":280,"text":160},{"id":244,"depth":280,"text":245},{"id":265,"depth":280,"text":266},"2026-03-24","Apps are reachable at clean `.local` hostnames alongside their `localhost` ports, routed through a built-in reverse proxy. Lawn can launch as a menu-bar-only app, the install sheet shows detailed download progress, and the CLI gains `rename`, `autostart`, and `experiments` commands.","md",null,"Local domains, install progress, and CLI improvements",{},true,"\u002Fchangelog\u002Fv0.2.0-20",{"title":152,"description":286},{"loc":292},"changelog\u002Fv0.2.0-20","v0.2.0-20","dYElq2MKe79WE3N0kTMsBLfKmnmsu0OhEtY_EGr3GRQ",1778074249794]