{"version":1,"pages":[{"id":"-MbUKikgdE4IEh7m4yaZ","title":"README","pathname":"/","siteSpaceId":"sitesp_JzCkI","description":""},{"id":"DWouONoqqdeSRf8McvUr","title":"Foreword","pathname":"/foreword","siteSpaceId":"sitesp_JzCkI","description":""},{"id":"6UUE7K3y8hzPq6QKgRsA","title":"Tutorial","pathname":"/tutorial","siteSpaceId":"sitesp_JzCkI","description":""},{"id":"aGpDDJD4zjgknVMPBP05","title":"Getting Started","pathname":"/tutorial/getting-started","siteSpaceId":"sitesp_JzCkI","description":"","breadcrumbs":[{"label":"Tutorial"}]},{"id":"nKEdyBqrc0qvYRN1oOVo","title":"Minimal Setup","pathname":"/tutorial/minimal-setup","siteSpaceId":"sitesp_JzCkI","description":"","breadcrumbs":[{"label":"Tutorial"}]},{"id":"DN3tPc6DxYx12HoroASV","title":"Command Line Interface","pathname":"/command-line-interface","siteSpaceId":"sitesp_JzCkI","description":""},{"id":"e0HaA270fz0Z46YDmPIO","title":"Setup","pathname":"/command-line-interface/cli-setup","siteSpaceId":"sitesp_JzCkI","description":"","breadcrumbs":[{"label":"Command Line Interface"}]},{"id":"Te4pIBMZrj3BpDqGmOwk","title":"Templates and Views","pathname":"/templates-and-views","siteSpaceId":"sitesp_JzCkI","description":""},{"id":"Ni0Qhq0fTKOqNDm2zqHm","title":"Server Side Rendered Views","pathname":"/templates-and-views/rendering-views","siteSpaceId":"sitesp_JzCkI","description":"","breadcrumbs":[{"label":"Templates and Views"}]},{"id":"P69cfObhsNaixHgYKntj","title":"JAEL3","pathname":"/templates-and-views/jael3","siteSpaceId":"sitesp_JzCkI","description":"","breadcrumbs":[{"label":"Templates and Views"}]},{"id":"vzwvGB4a8W6dnLXluEU6","title":"About","pathname":"/templates-and-views/jael3/about","siteSpaceId":"sitesp_JzCkI","description":"","breadcrumbs":[{"label":"Templates and Views"},{"label":"JAEL3"}]},{"id":"HIXeHqk06MTDZsBsMcse","title":"Basics","pathname":"/templates-and-views/jael3/basics","siteSpaceId":"sitesp_JzCkI","description":"","breadcrumbs":[{"label":"Templates and Views"},{"label":"JAEL3"}]},{"id":"-MbULaL_NMWvbPP-8x7-","title":"Custom Elements","pathname":"/templates-and-views/jael3/custom-elements","siteSpaceId":"sitesp_JzCkI","description":"","breadcrumbs":[{"label":"Templates and Views"},{"label":"JAEL3"}]},{"id":"-MbULaLa_oeocDiv2ia1","title":"Strict Resolution","pathname":"/templates-and-views/jael3/strict-resolution","siteSpaceId":"sitesp_JzCkI","description":"","breadcrumbs":[{"label":"Templates and Views"},{"label":"JAEL3"}]},{"id":"-MbULaLbduXuzQ5XExnL","title":"Directive: declare","pathname":"/templates-and-views/jael3/directive-declare","siteSpaceId":"sitesp_JzCkI","description":"","breadcrumbs":[{"label":"Templates and Views"},{"label":"JAEL3"}]},{"id":"-MbULaLcW-7pb5XtLXuE","title":"Directive: for-each","pathname":"/templates-and-views/jael3/directive-for-each","siteSpaceId":"sitesp_JzCkI","description":"","breadcrumbs":[{"label":"Templates and Views"},{"label":"JAEL3"}]},{"id":"-MbULaLdHrgdnkdHTB12","title":"Directive: extend","pathname":"/templates-and-views/jael3/directive-extend","siteSpaceId":"sitesp_JzCkI","description":"","breadcrumbs":[{"label":"Templates and Views"},{"label":"JAEL3"}]},{"id":"-MbULaLeXiiRUnU-rvtR","title":"Directive: if","pathname":"/templates-and-views/jael3/directive-if","siteSpaceId":"sitesp_JzCkI","description":"","breadcrumbs":[{"label":"Templates and Views"},{"label":"JAEL3"}]},{"id":"-MbULaLf12KMIZAaDhFj","title":"Directive: include","pathname":"/templates-and-views/jael3/directive-include","siteSpaceId":"sitesp_JzCkI","description":"","breadcrumbs":[{"label":"Templates and Views"},{"label":"JAEL3"}]},{"id":"-MbULaLgbe9kxrZSEIIm","title":"Directive: switch","pathname":"/templates-and-views/jael3/directive-switch","siteSpaceId":"sitesp_JzCkI","description":"","breadcrumbs":[{"label":"Templates and Views"},{"label":"JAEL3"}]},{"id":"6pilSiivnHhE7WrwTTo6","title":"Authentication","pathname":"/authentication","siteSpaceId":"sitesp_JzCkI","description":""},{"id":"-MdF2dtJGHI0w0RKMs9r","title":"About","pathname":"/authentication/about","siteSpaceId":"sitesp_JzCkI","description":"","breadcrumbs":[{"label":"Authentication"}]},{"id":"-MdF2dtKhj4s84WM15kx","title":"Strategies","pathname":"/authentication/strategies","siteSpaceId":"sitesp_JzCkI","description":"","breadcrumbs":[{"label":"Authentication"}]},{"id":"-MdF2dtLQGmvFxMfEi9S","title":"Local","pathname":"/authentication/local-auth","siteSpaceId":"sitesp_JzCkI","description":"","breadcrumbs":[{"label":"Authentication"}]},{"id":"LNF4q8mkV1994axt2P7n","title":"Databases","pathname":"/databases","siteSpaceId":"sitesp_JzCkI","description":""},{"id":"P7wiK5NF6EFUlbH9fUOi","title":"Object Relational Mapping (ORM)","pathname":"/databases/object-relational-mapping-orm","siteSpaceId":"sitesp_JzCkI","description":"","breadcrumbs":[{"label":"Databases"}]},{"id":"0eSKSPrg9DIehp5A2xfo","title":"About","pathname":"/databases/object-relational-mapping-orm/about","siteSpaceId":"sitesp_JzCkI","description":"","breadcrumbs":[{"label":"Databases"},{"label":"Object Relational Mapping (ORM)"}]},{"id":"rF2tHt4D9Mw2cXppaf2Q","title":"Basic Functionality","pathname":"/databases/object-relational-mapping-orm/basic-functionality","siteSpaceId":"sitesp_JzCkI","description":"","breadcrumbs":[{"label":"Databases"},{"label":"Object Relational Mapping (ORM)"}]},{"id":"-MbULaKtWH2fb0Cnn13Q","title":"Relations","pathname":"/databases/object-relational-mapping-orm/relations","siteSpaceId":"sitesp_JzCkI","description":"","breadcrumbs":[{"label":"Databases"},{"label":"Object Relational Mapping (ORM)"}]},{"id":"-MbULaKuF6YZ_CYDS6jO","title":"Migrations","pathname":"/databases/object-relational-mapping-orm/migrations","siteSpaceId":"sitesp_JzCkI","description":"","breadcrumbs":[{"label":"Databases"},{"label":"Object Relational Mapping (ORM)"}]},{"id":"-MbULaKw11M_AS7xtGAf","title":"PostgreSQL","pathname":"/databases/object-relational-mapping-orm/postgresql","siteSpaceId":"sitesp_JzCkI","description":"","breadcrumbs":[{"label":"Databases"},{"label":"Object Relational Mapping (ORM)"}]},{"id":"-MbULaKv2kLdYzs7oQeV","title":"NoSQL","pathname":"/databases/nosql","siteSpaceId":"sitesp_JzCkI","description":"","breadcrumbs":[{"label":"Databases"}]},{"id":"PkgmUt7UgnaJHx1Innbp","title":"Extensions and Plugins","pathname":"/extensions-and-plugins","siteSpaceId":"sitesp_JzCkI","description":""},{"id":"-MbULaL9LFw9-NjnJX2y","title":"Using Plug-ins","pathname":"/extensions-and-plugins/using-plug-ins","siteSpaceId":"sitesp_JzCkI","description":"","breadcrumbs":[{"label":"Extensions and Plugins"}]},{"id":"-MbULaLHQntUznhL8EZM","title":"Writing a Plugin","pathname":"/extensions-and-plugins/writing-a-plugin","siteSpaceId":"sitesp_JzCkI","description":"","breadcrumbs":[{"label":"Extensions and Plugins"}]},{"id":"MYtRw1sNNXelH4jDwR4z","title":"Under the hood","pathname":"/under-the-hood","siteSpaceId":"sitesp_JzCkI","description":""},{"id":"-MbULaKzQpTIc7_bQkE-","title":"Basic Routing","pathname":"/under-the-hood/basic-routing","siteSpaceId":"sitesp_JzCkI","description":"","breadcrumbs":[{"label":"Under the hood"}]},{"id":"-MbULaL2PAKZsc8d-mPX","title":"Requests & Responses","pathname":"/under-the-hood/requests-and-responses","siteSpaceId":"sitesp_JzCkI","description":"","breadcrumbs":[{"label":"Under the hood"}]},{"id":"-MbULaL5jAhVYmsR9_RU","title":"Request Lifecycle","pathname":"/under-the-hood/request-lifecycle","siteSpaceId":"sitesp_JzCkI","description":"","breadcrumbs":[{"label":"Under the hood"}]},{"id":"-MbULaL3HDU_JcYMOcXb","title":"Dependency Injection","pathname":"/under-the-hood/dependency-injection","siteSpaceId":"sitesp_JzCkI","description":"","breadcrumbs":[{"label":"Under the hood"}]},{"id":"-MbULaL6Fy6UxiyDQZLm","title":"Middleware","pathname":"/under-the-hood/middleware","siteSpaceId":"sitesp_JzCkI","description":"","breadcrumbs":[{"label":"Under the hood"}]},{"id":"-MbULaL7pLt7eLfzdPOt","title":"Controllers","pathname":"/under-the-hood/controllers","siteSpaceId":"sitesp_JzCkI","description":"","breadcrumbs":[{"label":"Under the hood"}]},{"id":"-MbULaL8Va1M467ikHZc","title":"Parsing Request Bodies","pathname":"/under-the-hood/body-parsing","siteSpaceId":"sitesp_JzCkI","description":"","breadcrumbs":[{"label":"Under the hood"}]},{"id":"-MkQugv-naBeOP2N2wTz","title":"Serialization","pathname":"/under-the-hood/serialization","siteSpaceId":"sitesp_JzCkI","description":"","breadcrumbs":[{"label":"Under the hood"}]},{"id":"-MbULaLBV-2ee0YoDm12","title":"Service Basics","pathname":"/under-the-hood/service-basics","siteSpaceId":"sitesp_JzCkI","description":"","breadcrumbs":[{"label":"Under the hood"}]},{"id":"-MbULaLDXHjI8_64p4PM","title":"Testing","pathname":"/under-the-hood/testing","siteSpaceId":"sitesp_JzCkI","description":"","breadcrumbs":[{"label":"Under the hood"}]},{"id":"-MbULaLEL2FkTuu7Is5g","title":"Error Handling","pathname":"/under-the-hood/error-handling","siteSpaceId":"sitesp_JzCkI","description":"","breadcrumbs":[{"label":"Under the hood"}]},{"id":"-MbULaLFllCU58-TxQGs","title":"Pattern Matching and Parameter","pathname":"/under-the-hood/pattern-matching","siteSpaceId":"sitesp_JzCkI","description":"","breadcrumbs":[{"label":"Under the hood"}]},{"id":"lsHK3MPlCrgLfIgJ7PGe","title":"Angel Framework Migration","pathname":"/angel-framework-migration","siteSpaceId":"sitesp_JzCkI","description":""},{"id":"L54S8X84ivh49z9wP3hx","title":"Angel 2.x.x to Angel3","pathname":"/angel-framework-migration/angel-2.x.x-to-angel3","siteSpaceId":"sitesp_JzCkI","description":"","breadcrumbs":[{"label":"Angel Framework Migration"}]},{"id":"-MbU_D1RfW1f9m-N_aMI","title":"Rationale - Why a new Version?","pathname":"/angel-framework-migration/angel-2.x.x-to-angel3/rationale","siteSpaceId":"sitesp_JzCkI","description":"","breadcrumbs":[{"label":"Angel Framework Migration"},{"label":"Angel 2.x.x to Angel3"}]},{"id":"-MbU_D1TVT622y4extHM","title":"3.0.0 Migration Guide","pathname":"/angel-framework-migration/angel-2.x.x-to-angel3/migration-guide-3","siteSpaceId":"sitesp_JzCkI","description":"","breadcrumbs":[{"label":"Angel Framework Migration"},{"label":"Angel 2.x.x to Angel3"}]},{"id":"qplHvZgJcXaFs5vCnNeZ","title":"Angel 1.x.x to 2.x.x","pathname":"/angel-framework-migration/angel-1.x.x-to-2.x.x","siteSpaceId":"sitesp_JzCkI","description":"","breadcrumbs":[{"label":"Angel Framework Migration"}]},{"id":"-MbULaKndVtzOSy6RMtk","title":"2.0.0 Migration Guide","pathname":"/angel-framework-migration/angel-1.x.x-to-2.x.x/migration-guide","siteSpaceId":"sitesp_JzCkI","description":"","breadcrumbs":[{"label":"Angel Framework Migration"},{"label":"Angel 1.x.x to 2.x.x"}]},{"id":"-MbULaLLltHlUPJQUqn2","title":"Packages","pathname":"/packages","siteSpaceId":"sitesp_JzCkI","description":""},{"id":"2umxkhwXcN8k0akIeTl1","title":"Databases","pathname":"/packages/databases","siteSpaceId":"sitesp_JzCkI","description":"","breadcrumbs":[{"label":"Packages"}]},{"id":"DElxRtjxEnIXvtotWbzp","title":"Templates and Views","pathname":"/packages/templates-and-views","siteSpaceId":"sitesp_JzCkI","description":"","breadcrumbs":[{"label":"Packages"}]},{"id":"-MbVTgHZWGX3zmMPkKFx","title":"Resources","pathname":"/resources","siteSpaceId":"sitesp_JzCkI","description":""}]}