{"repo":"GetDutchie/brick","free":true,"listed":false,"github":"https://github.com/GetDutchie/brick","clone":"git clone https://github.com/GetDutchie/brick.git","description":"An intuitive way to work with persistent data in Dart","language":"Dart","stars":518,"topics":["flutter","dart","sqlite","rest","mobile-development","offline","graphql"],"license":null,"category":"mobile-apps","readme_excerpt":"An intuitive way to work with persistent data in Dart. Full documentation - GraphQL - REST - Supabase Why Brick? - Out-of-the-box offline access to data - Handle and hide complex serialization/deserialization logic - Single access point and opinionated DSL - Automatic, intelligently-generated migrations - Legible querying interface What is Brick? Brick is an extensible query interface for Dart applications. It's an all-in-one solution responsible for representing business data in the application, regardless of where your data comes from. Using Brick, developers can focus on implementing the application, without concern for where the data lives. Brick was inspired by the need for applications to work offline first, even if an API represents your source of truth. Quick Start 1. Add the packages: 1. Configure your app directory structure to match Brick's expectations: 1. Add models that contain your app logic. Models must be saved with the .model.dart suffix (i.e. lib/brick/models/person.model.dart ). 1. Run dart run build runner build to generate your models and sometimes migrations. Rerun after every new model change or dart run build runner watch for automatic generations. You'll need to run this again after your first migration. 1. Extend an existing repository or create your own (Supabase has some exceptions): 1. Profit. Usage Create a model as the app's business logic: And generate (de)serializing code to fetch to and from multiple providers: Fetching Data A repository fet","default_branch":null,"files":null,"tree":[],"storefront":"/r/GetDutchie","claimed":false,"request_supported":{"post":"https://gitbuyer.com/r/GetDutchie/brick/request-supported","requests":0},"note":"indexed from public GitHub; nothing is for sale on this page. Clone it from GitHub. Paid listings live at /search."}