{"version":1,"pages":[{"id":"-LAYGZ4Kw7Dh4T48JTe2","title":"Blueprint Developer Guide","pathname":"/","siteSpaceId":"sitesp_gsiob","description":"Learn to develop using the Blueprint framework"},{"id":"-LAYIzyqQPfAb2bB5YG1","title":"Quick Start","pathname":"/quick-start","siteSpaceId":"sitesp_gsiob","description":"Learn how to get started with Blueprint"},{"id":"-LAYHtsIBuhbRqMmOhXL","title":"Getting Started","pathname":"/quick-start/getting-started","siteSpaceId":"sitesp_gsiob","description":"Instructions to get you up and running in seconds","breadcrumbs":[{"label":"Quick Start"}]},{"id":"-LAYIfPbkHYo_Kie8TIZ","title":"My First Application","pathname":"/quick-start/my-first-application","siteSpaceId":"sitesp_gsiob","description":"Simple tutorial for creating your first Blueprint application","breadcrumbs":[{"label":"Quick Start"}]},{"id":"-LEUwphlTxOqnTSb2xYk","title":"Creating Your Application","pathname":"/quick-start/my-first-application/create-your-application","siteSpaceId":"sitesp_gsiob","description":"","breadcrumbs":[{"label":"Quick Start"},{"label":"My First Application"}]},{"id":"-LEUxDLqCF-S-NzPqQez","title":"Controllers","pathname":"/quick-start/my-first-application/controllers","siteSpaceId":"sitesp_gsiob","description":"","breadcrumbs":[{"label":"Quick Start"},{"label":"My First Application"}]},{"id":"-LEUxNGuauzdq-iQuRo2","title":"Routers & Routes","pathname":"/quick-start/my-first-application/routers-and-routes","siteSpaceId":"sitesp_gsiob","description":"","breadcrumbs":[{"label":"Quick Start"},{"label":"My First Application"}]},{"id":"-LEVow8Z3qsqEv4xYCmn","title":"Services","pathname":"/quick-start/my-first-application/services","siteSpaceId":"sitesp_gsiob","description":"","breadcrumbs":[{"label":"Quick Start"},{"label":"My First Application"}]},{"id":"-LEWYpzhVm3Abj_w7Kpb","title":"Resources & Resource Controllers","pathname":"/quick-start/my-first-application/resources-and-resource-controllers","siteSpaceId":"sitesp_gsiob","description":"","breadcrumbs":[{"label":"Quick Start"},{"label":"My First Application"}]},{"id":"-LEXrq7icDc47QhG3KGK","title":"Validating & Sanitizing Input","pathname":"/quick-start/my-first-application/validating-and-sanitizing-input","siteSpaceId":"sitesp_gsiob","description":"","breadcrumbs":[{"label":"Quick Start"},{"label":"My First Application"}]},{"id":"4TUNFPps8F7EYsP9qSn2","title":"Unit Testing Your Application","pathname":"/quick-start/my-first-application/unit-testing-your-application","siteSpaceId":"sitesp_gsiob","description":"","breadcrumbs":[{"label":"Quick Start"},{"label":"My First Application"}]},{"id":"NgnqDCA76hOIi7fYId3R","title":"Policies","pathname":"/quick-start/my-first-application/policies","siteSpaceId":"sitesp_gsiob","description":"","breadcrumbs":[{"label":"Quick Start"},{"label":"My First Application"}]},{"id":"-LAYJE8W9kePsJ7BXAfV","title":"Developer Guide","pathname":"/developer-guide","siteSpaceId":"sitesp_gsiob","description":"Reference guide for developers"},{"id":"-LAYGxc8K5HT-VmvokQ0","title":"The Object Model","pathname":"/developer-guide/the-object-model","siteSpaceId":"sitesp_gsiob","description":"The foundation for all objects in Blueprint","breadcrumbs":[{"label":"Developer Guide"}]},{"id":"-LBxH7cWLdC-QuWrvuGA","title":"Introduction","pathname":"/developer-guide/the-object-model/introduction","siteSpaceId":"sitesp_gsiob","description":"Introduction to the object model","breadcrumbs":[{"label":"Developer Guide"},{"label":"The Object Model"}]},{"id":"-LBxLiTojACJItTnM-u1","title":"Classes and Instances","pathname":"/developer-guide/the-object-model/classes-and-instances","siteSpaceId":"sitesp_gsiob","description":"General overview of defining classes and creating instances","breadcrumbs":[{"label":"Developer Guide"},{"label":"The Object Model"}]},{"id":"-LBxLzJc49yX09NI5Hnn","title":"Computed Properties","pathname":"/developer-guide/the-object-model/computed-properties","siteSpaceId":"sitesp_gsiob","description":"How to use computed properties in the object model","breadcrumbs":[{"label":"Developer Guide"},{"label":"The Object Model"}]},{"id":"-LBxLpNQ7FNnVLvwUqlE","title":"Aggregated Properties","pathname":"/developer-guide/the-object-model/aggregated-properties","siteSpaceId":"sitesp_gsiob","description":"Discusses the purpose and use of aggregated properties","breadcrumbs":[{"label":"Developer Guide"},{"label":"The Object Model"}]},{"id":"-LBxLlg-ZxKCNGKHjJJS","title":"Mixins","pathname":"/developer-guide/the-object-model/mixins","siteSpaceId":"sitesp_gsiob","description":"Learn how to create and apply mixins","breadcrumbs":[{"label":"Developer Guide"},{"label":"The Object Model"}]},{"id":"-LC2ZSVAxJN-iwA9phtS","title":"Routers and Controllers","pathname":"/developer-guide/routers-and-controllers","siteSpaceId":"sitesp_gsiob","description":"Public facing interfaces and backend logic","breadcrumbs":[{"label":"Developer Guide"}]},{"id":"-LC59fUeJzUwkim466K0","title":"Introduction","pathname":"/developer-guide/routers-and-controllers/introduction","siteSpaceId":"sitesp_gsiob","description":"Brief discussion about the role of routers and controllers","breadcrumbs":[{"label":"Developer Guide"},{"label":"Routers and Controllers"}]},{"id":"-LC5V5G9C-SHYTFlO2_J","title":"Routers","pathname":"/developer-guide/routers-and-controllers/routers","siteSpaceId":"sitesp_gsiob","description":"Learn about routers and how to implement them","breadcrumbs":[{"label":"Developer Guide"},{"label":"Routers and Controllers"}]},{"id":"-LC5VA-KBuCtIQtMHSES","title":"Controllers","pathname":"/developer-guide/routers-and-controllers/controllers","siteSpaceId":"sitesp_gsiob","description":"Learn about controllers, actions, and predefined actions like uploads","breadcrumbs":[{"label":"Developer Guide"},{"label":"Routers and Controllers"}]},{"id":"-LC7Vb4TjRFmgcLzBv4j","title":"Resources","pathname":"/developer-guide/routers-and-controllers/resources","siteSpaceId":"sitesp_gsiob","description":"Well-defined artifacts that are accessible","breadcrumbs":[{"label":"Developer Guide"},{"label":"Routers and Controllers"}]},{"id":"-LCJs4PKMXs0dhkYYxy9","title":"Models","pathname":"/developer-guide/models","siteSpaceId":"sitesp_gsiob","description":"Understand the purpose of application models","breadcrumbs":[{"label":"Developer Guide"}]},{"id":"-LC9rF_jALJLbQwY1mMG","title":"The Server","pathname":"/developer-guide/the-server","siteSpaceId":"sitesp_gsiob","description":"Learn how to configure the server","breadcrumbs":[{"label":"Developer Guide"}]},{"id":"-LC5wlR0UKx614icpMvc","title":"Policy Framework","pathname":"/developer-guide/policies","siteSpaceId":"sitesp_gsiob","description":"Learn how to authorize access to routes","breadcrumbs":[{"label":"Developer Guide"}]},{"id":"-LC2ZZB82E2vMJOT8_Mw","title":"Services","pathname":"/developer-guide/services","siteSpaceId":"sitesp_gsiob","description":"An overview of services and how to use them","breadcrumbs":[{"label":"Developer Guide"}]},{"id":"-LC2ZcLtizS6_AOignuz","title":"Messaging Framework","pathname":"/developer-guide/untitled","siteSpaceId":"sitesp_gsiob","description":"Publish and subscribe to events","breadcrumbs":[{"label":"Developer Guide"}]},{"id":"-LC2Zkr_RV7p2JB_5tmX","title":"Configuration Management","pathname":"/developer-guide/managing-configurations","siteSpaceId":"sitesp_gsiob","description":"Learn how to define configurations","breadcrumbs":[{"label":"Developer Guide"}]},{"id":"-LC2arIRCDoH8raDrCSG","title":"Application and Resources","pathname":"/developer-guide/application-resources","siteSpaceId":"sitesp_gsiob","description":"Miscellaneous topics about the application","breadcrumbs":[{"label":"Developer Guide"}]},{"id":"-LCMEXFD5-zb2YUiVhDj","title":"Lookup Operation","pathname":"/developer-guide/application-resources/lookup-operation","siteSpaceId":"sitesp_gsiob","description":"","breadcrumbs":[{"label":"Developer Guide"},{"label":"Application and Resources"}]},{"id":"-LC2bS24YB0aG0zEM4Ht","title":"Views","pathname":"/developer-guide/application-resources/static-views","siteSpaceId":"sitesp_gsiob","description":"","breadcrumbs":[{"label":"Developer Guide"},{"label":"Application and Resources"}]},{"id":"-LC2bVTe7UOY56EzhFxG","title":"Assets","pathname":"/developer-guide/application-resources/assets","siteSpaceId":"sitesp_gsiob","description":"","breadcrumbs":[{"label":"Developer Guide"},{"label":"Application and Resources"}]},{"id":"-LC2Zq8Cce2FjyHCKiSs","title":"Blueprint Modules","pathname":"/developer-guide/untitled-1","siteSpaceId":"sitesp_gsiob","description":"Codify design solutions into reusable modules","breadcrumbs":[{"label":"Developer Guide"}]},{"id":"-LC2cbgXWWpDjvvP3wI7","title":"Blueprint Cluster","pathname":"/developer-guide/blueprint-cluster","siteSpaceId":"sitesp_gsiob","description":"Run application in cluster mode","breadcrumbs":[{"label":"Developer Guide"}]},{"id":"-LC55jW55CHq3B5ZwnM_","title":"What is a Blueprint Cluster?","pathname":"/developer-guide/blueprint-cluster/background","siteSpaceId":"sitesp_gsiob","description":"Brief introduction to Blueprint clusters and their importance","breadcrumbs":[{"label":"Developer Guide"},{"label":"Blueprint Cluster"}]},{"id":"-LC55lbUk217LyRWCO8c","title":"Running a Blueprint Cluster","pathname":"/developer-guide/blueprint-cluster/running-a-blueprint-cluster","siteSpaceId":"sitesp_gsiob","description":"How to launch a Blueprint cluster","breadcrumbs":[{"label":"Developer Guide"},{"label":"Blueprint Cluster"}]},{"id":"-LC55psdcyB2ZcHOSAlK","title":"Technical Details","pathname":"/developer-guide/blueprint-cluster/technical-details","siteSpaceId":"sitesp_gsiob","description":"","breadcrumbs":[{"label":"Developer Guide"},{"label":"Blueprint Cluster"}]},{"id":"-LC2cZD1-V6Sx187tlUF","title":"Testing Framework","pathname":"/developer-guide/testing","siteSpaceId":"sitesp_gsiob","description":"Learn to write test cases","breadcrumbs":[{"label":"Developer Guide"}]},{"id":"-LC2_WGeQFlqJwsx1FNg","title":"Command-line Interface (Coming Soon)","pathname":"/developer-guide/untitled-2","siteSpaceId":"sitesp_gsiob","description":"","breadcrumbs":[{"label":"Developer Guide"}]}]}