1. use declaretive way to define schema of view data like graphql, easy to maintain and develop<p>2. use main query and loader query to break down complex queries, and better reuse<p>3. provide various of tools to precisely construct view data, no overhead<p>4. changing view data has never been so easy<p>5. with OpenAPI and typescript, developers can use the type definitions at client side