[{"data":1,"prerenderedAt":206},["ShallowReactive",2],{"github-stars":3,"featured-packages":5,"planned-packages":182},{"total":4},27,[6,52,77,104,134,159],{"id":7,"title":8,"adoptionSource":9,"adoptionValue":9,"body":10,"description":32,"documentation":23,"ecosystem":33,"extension":36,"featured":37,"icon":38,"installCommand":39,"meta":40,"name":41,"navigation":37,"order":42,"packageManager":43,"path":44,"repository":45,"seo":46,"slug":47,"status":48,"stem":49,"version":50,"__hash__":51},"packages\u002Fpackages\u002Fformforge.md","Formforge",null,{"type":11,"value":12,"toc":28},"minimark",[13,17],[14,15,16],"p",{},"FormForge gives Laravel applications one source of truth for form schemas, immutable revisions, validation, secure HTTP APIs, staged uploads and submission workflows.",[14,18,19,20,27],{},"It pairs with ",[21,22,26],"a",{"href":23,"rel":24},"https:\u002F\u002Fformforge.schleret.ch",[25],"nofollow","FormForge Client"," when forms need to be rendered and managed in Nuxt 4.",{"title":29,"searchDepth":30,"depth":30,"links":31},"",2,[],"Deterministic forms for Laravel, from schema and validation to secure submissions.",[34,35],"Laravel","PHP","md",true,"i-lucide-panels-top-left","composer require evanschleret\u002Fformforge",{},"FormForge",1,"composer","\u002Fpackages\u002Fformforge","https:\u002F\u002Fgithub.com\u002FEvanSchleret\u002FFormForge",{"description":32},"formforge","stable","packages\u002Fformforge","v2.1.0","An4XBRkrUsOiMqCb3it-LAzakPkckvyO1EmBTBCgtMo",{"id":53,"title":54,"adoptionSource":9,"adoptionValue":9,"body":55,"description":62,"documentation":23,"ecosystem":63,"extension":36,"featured":37,"icon":66,"installCommand":67,"meta":68,"name":26,"navigation":37,"order":30,"packageManager":69,"path":70,"repository":71,"seo":72,"slug":73,"status":48,"stem":74,"version":75,"__hash__":76},"packages\u002Fpackages\u002Fformforge-client.md","Formforge Client",{"type":11,"value":56,"toc":60},[57],[14,58,59],{},"FormForge Client connects Nuxt applications to the FormForge backend with renderer and builder components, controlled mode, scoped routes, uploads, drafts and submission composables.",{"title":29,"searchDepth":30,"depth":30,"links":61},[],"Nuxt components and composables for rendering, building and submitting FormForge forms.",[64,65],"Nuxt","TypeScript","i-lucide-monitor-smartphone","bun add @evanschleret\u002Fformforgeclient",{},"bun","\u002Fpackages\u002Fformforge-client","https:\u002F\u002Fgithub.com\u002FEvanSchleret\u002FFormForgeClient",{"description":62},"formforge-client","packages\u002Fformforge-client","v2.3.1","pMvwPFDw1Cbu-xuz41UTOTrTZdJfp8PrORvct9_Zews",{"id":78,"title":79,"adoptionSource":9,"adoptionValue":9,"body":80,"description":90,"documentation":9,"ecosystem":91,"extension":36,"featured":37,"icon":92,"installCommand":93,"meta":94,"name":95,"navigation":37,"order":96,"packageManager":43,"path":97,"repository":98,"seo":99,"slug":100,"status":48,"stem":101,"version":102,"__hash__":103},"packages\u002Fpackages\u002Ftypebridge.md","Typebridge",{"type":11,"value":81,"toc":88},[82,85],[14,83,84],{},"TypeBridge keeps backend resources and frontend types aligned by generating predictable TypeScript files from annotated Laravel resources.",[14,86,87],{},"Use it when the API contract should be generated from the server instead of maintained by hand.",{"title":29,"searchDepth":30,"depth":30,"links":89},[],"Deterministic TypeScript generation from Laravel resources.",[34,35,65],"i-lucide-braces","composer require --dev evanschleret\u002Flaravel-typebridge",{},"Laravel TypeBridge",3,"\u002Fpackages\u002Ftypebridge","https:\u002F\u002Fgithub.com\u002FEvanSchleret\u002Flaravel-typebridge",{"description":90},"typebridge","packages\u002Ftypebridge","v1.1.0","-QuMPgbmett335kHGY6E8VkB48hIL2vhhjyTv88d_JU",{"id":105,"title":106,"adoptionSource":107,"adoptionValue":108,"body":109,"description":119,"documentation":9,"ecosystem":120,"extension":36,"featured":37,"icon":122,"installCommand":123,"meta":124,"name":125,"navigation":37,"order":126,"packageManager":43,"path":127,"repository":128,"seo":129,"slug":130,"status":48,"stem":131,"version":132,"__hash__":133},"packages\u002Fpackages\u002Flara-mjml.md","Lara Mjml","https:\u002F\u002Fpackagist.org\u002Fpackages\u002Fevanschleret\u002Flara-mjml","59k+",{"type":11,"value":110,"toc":117},[111,114],[14,112,113],{},"LaraMJML adds a focused MJML view engine to Laravel while keeping Blade as the template layer for responsive email layouts.",[14,115,116],{},"It supports predictable rendering for Mailables and Notifications, with configurable MJML runtime options.",{"title":29,"searchDepth":30,"depth":30,"links":118},[],"MJML rendering for Laravel Blade emails, Mailables and Notifications.",[34,35,121],"MJML","i-lucide-mail","composer require evanschleret\u002Flara-mjml",{},"LaraMJML",4,"\u002Fpackages\u002Flara-mjml","https:\u002F\u002Fgithub.com\u002FEvanSchleret\u002Flara-mjml",{"description":119},"lara-mjml","packages\u002Flara-mjml","v1.0.0","xOsErthgyQiJyr-rD0coRR8DrUHp9vDFEclHbmKKuz0",{"id":135,"title":136,"adoptionSource":9,"adoptionValue":9,"body":137,"description":144,"documentation":145,"ecosystem":146,"extension":36,"featured":37,"icon":147,"installCommand":148,"meta":149,"name":150,"navigation":37,"order":151,"packageManager":69,"path":152,"repository":153,"seo":154,"slug":155,"status":156,"stem":157,"version":9,"__hash__":158},"packages\u002Fpackages\u002Fnotificationcompass.md","Notificationcompass",{"type":11,"value":138,"toc":142},[139],[14,140,141],{},"NotificationCompass provides global and context-specific notification preferences, defaults, opt-in notifications and mandatory notifications.",{"title":29,"searchDepth":30,"depth":30,"links":143},[],"Notification preferences above Laravel’s native notification system.","https:\u002F\u002Fnotificationcompass.evanschleret.ch",[34,35],"i-lucide-bell-ring","bun add @evanschleret\u002Fnotificationcompass",{},"NotificationCompass",5,"\u002Fpackages\u002Fnotificationcompass","https:\u002F\u002Fgithub.com\u002FEvanSchleret\u002Fnotificationcompass.evanschleret.ch",{"description":144},"notificationcompass","early-development","packages\u002Fnotificationcompass","Zg5xh5yWxUBz-yivlp6vBLBNGxIEgiLGgS1AUQuX-uc",{"id":160,"title":161,"adoptionSource":9,"adoptionValue":9,"body":162,"description":169,"documentation":170,"ecosystem":171,"extension":36,"featured":37,"icon":172,"installCommand":173,"meta":174,"name":161,"navigation":37,"order":175,"packageManager":69,"path":176,"repository":177,"seo":178,"slug":179,"status":156,"stem":180,"version":9,"__hash__":181},"packages\u002Fpackages\u002Fnuxt-typewriter.md","Nuxt Typewriter",{"type":11,"value":163,"toc":167},[164],[14,165,166],{},"Nuxt Typewriter provides an animated Typewriter component for typed text, with character-by-character or word-by-word styles, configurable speeds and looping.",{"title":29,"searchDepth":30,"depth":30,"links":168},[],"An animated typewriter component for Nuxt applications.","https:\u002F\u002Fgithub.com\u002FEvanSchleret\u002Fnuxt-typewriter#readme",[64,65],"i-lucide-type","bun add @evanschleret\u002Fnuxt-typewriter",{},7,"\u002Fpackages\u002Fnuxt-typewriter","https:\u002F\u002Fgithub.com\u002FEvanSchleret\u002Fnuxt-typewriter",{"description":169},"nuxt-typewriter","packages\u002Fnuxt-typewriter","8IJXy3rZJf_8ia0Jpyp85WD2IvdbabDwbZYWQx2T74U",[183],{"id":184,"title":185,"adoptionSource":9,"adoptionValue":9,"body":186,"description":193,"documentation":9,"ecosystem":194,"extension":36,"featured":195,"icon":196,"installCommand":9,"meta":197,"name":198,"navigation":37,"order":199,"packageManager":43,"path":200,"repository":9,"seo":201,"slug":202,"status":203,"stem":204,"version":9,"__hash__":205},"packages\u002Fpackages\u002Fflowforge.md","Flowforge",{"type":11,"value":187,"toc":191},[188],[14,189,190],{},"FlowForge is planned as a Laravel workflow engine for explicit states, guarded transitions, lifecycle hooks and auditable history.",{"title":29,"searchDepth":30,"depth":30,"links":192},[],"Deterministic workflows for Laravel.",[34,35],false,"i-lucide-git-branch",{},"FlowForge",6,"\u002Fpackages\u002Fflowforge",{"description":193},"flowforge","planned","packages\u002Fflowforge","amPFo0cobaCR2InpV7ieSD39fbDQ7_bMyu5F89bUi4w",1785184364657]