GAM Documentation#
Welcome to the GAM (Generic Application Model) documentation. This documentation provides detailed information about the components and structure of the GAM architecture.
Introduction#
GAM (Generic Application Model) is a comprehensive architecture that consists of five key components working together to create robust and maintainable applications:
Models - Contain data representing the application’s working space and domain entities - Store data and states - Focus purely on data representation without behavior
Repositories - Provide a generic interface for accessing Model data - Implement OData pattern for:
Filtering
Expanding with sub-filters
Limiting results
Sorting (read operations)
Include extended syntax for data mutations (inspired by GraphQL)
Controllers - Contain business logic - Pull data from repositories - Set data to models and states - Methods must receive parameters as objects
Views - Render into Pages, Sections, and Components - Use declarative style - Implement two-way data binding pattern implicitly
Events - Define trigger rules (when to trigger) - Specify handlers (controller methods) - Configure handler parameters
Components#
Contents: