Minimize backend coding and testing

Minimize backend coding and testing

Given a Model, Livebase takes care of generating and deploying a complete and ready-to-use backend component (named "Cloudlet"), including the database to persist data and the GraphQL API to connect clients and other backend components.

Cloudlets are based on a very reliable and high-performance ORM (Object Relational Mapping) framework which is extended with Java code generated on-the-fly according to the Model. Once deployed, every Cloudlet features:

  • a dedicated relational database with a neat and very comprehensible normalized schema, properly configured with indexes, referential integrity constraints and other DDL constraints;

  • data-management functions (CRUD operations with support for nested and long-term transaction, persistent and in-memory data merging, queries and math expressions, data quality and consistency rules, etc.);

  • infrastructural functions (centralized/distributed authentication, logging and auditing, profile-based access control, optimistic and pessimistic concurrency control, etc.);

  • declarative business logic (application views, data partitioning rules, navigation and association rules, warning and error conditions, data versioning, non-persisted data structures, etc.);

  • a powerful GraphQL API allowing clients or external systems to interact with the service component (extracting structured data, modifying data, invoking services, etc.) in a much more flexible fashion with respect to a traditional REST API.