{"skill":{"slug":"bookforge-data-source-pattern-selector","displayName":"Data Source Pattern Selector","summary":"Choose the right data access pattern — Table Data Gateway, Row Data Gateway, Active Record, or Data Mapper — for a persistence layer. Use when asked \"should...","tags":{"active-record":"1.0.0","bookforge":"1.0.0","data-access":"1.0.0","data-mapper":"1.0.0","database":"1.0.0","design-patterns":"1.0.0","enterprise-patterns":"1.0.0","fowler-peaa":"1.0.0","latest":"1.0.0","object-relational-mapping":"1.0.0","orm":"1.0.0","persistence":"1.0.0","row-data-gateway":"1.0.0","software-architecture":"1.0.0","table-data-gateway":"1.0.0"},"stats":{"comments":0,"downloads":91,"installsAllTime":0,"installsCurrent":0,"stars":0,"versions":1},"createdAt":1776754580558,"updatedAt":1776754609983},"latestVersion":{"version":"1.0.0","createdAt":1776754580558,"changelog":"Initial skill release: Data Source Pattern Selector\n\n- Selects the most suitable data access pattern (Table Data Gateway, Row Data Gateway, Active Record, Data Mapper) for your persistence layer based on domain-logic pattern, schema shape, business logic weight, language/framework, and team context.\n- Maps recommended pattern to modern ORMs: e.g., Rails ActiveRecord → AR; Hibernate/Spring Data JPA/EF Core → DM; Django ORM → AR-leaning; SQLAlchemy (Core/ORM) and Laravel Eloquent.\n- Detects and warns against common anti-patterns, such as business logic in gateway classes or AR/DM mismatches.\n- Produces a pattern decision record with rationale, framework notes, and suggested migration paths.\n- Advises to select or clarify domain-logic approach first, invoking domain-logic-pattern-selector if unknown.","license":"MIT-0"},"metadata":{"os":null,"systems":null},"owner":{"handle":"quochungto","userId":"s176b6gfk8djgcz320d83ta4e184bx1v","displayName":"Hung Quoc To","image":"https://avatars.githubusercontent.com/u/88069966?v=4"},"moderation":null}