10 repositorios
Architectural patterns for encapsulating data access logic.
Distinguishing note: None available; minting under Data & Databases.
Explore 10 awesome GitHub repositories matching data & databases · Repository Patterns. Refine with filters or upvote what's useful.
TypeORM is an object-relational mapper for TypeScript and JavaScript that bridges the gap between object-oriented application code and relational database tables. It provides a comprehensive data persistence layer that allows developers to define database entities using class decorators or configuration objects, enabling seamless interaction with data through object-oriented patterns. The project distinguishes itself through a flexible architecture that supports both the data mapper and repository patterns, alongside a fluent query builder that translates high-level method calls into platform
Encapsulates complex query logic within custom repository methods for application-wide reuse.
iosched is an Android event scheduling application designed for browsing conference sessions, reserving seats, and managing personal event schedules. It serves as a cloud-synced event manager that keeps user preferences and reservations synchronized across devices. The project provides specialized tools for conference navigation, including integrated maps and informational pages to guide attendees through physical venue spaces. It also functions as a real-time notification client that delivers live updates regarding schedule changes and session availability. The application covers broad capa
Implements the repository pattern to provide a single interface for fetching data from local caches and remote servers.
This project is a modular, open-source customer relationship management platform built on the Laravel framework. It serves as a comprehensive business application framework designed for tracking sales pipelines, managing business entities, and automating marketing workflows. By providing a self-hosted solution, it enables organizations to maintain full control over their contact data, sales leads, and communication history. The platform distinguishes itself through a highly extensible architecture that allows developers to modify core behavior without altering the underlying source code. It u
Encapsulates database logic within dedicated repository classes to decouple business operations from underlying storage models.
This project is a TypeScript-based architectural framework designed to implement domain-driven design and hexagonal architecture in enterprise applications. It provides a structured boilerplate that isolates core business logic from infrastructure concerns, ensuring that domain entities, use cases, and external technology adapters remain decoupled and maintainable. The framework distinguishes itself by enforcing strict architectural boundaries and dependency inversion, preventing unauthorized access to core logic from external layers. It utilizes a command-query responsibility segregation pat
Centralizes data access logic and decouples the domain model from specific database implementations using repository patterns.
Pilipala is a mobile video streaming client designed to provide a third-party interface for the Bilibili media platform. It enables users to browse, search, and consume streaming media content through a unified mobile application. The application distinguishes itself by offering extensive playback customization, allowing users to adjust playback speed, subtitle synchronization, and screen orientation to suit their preferences. It also integrates social interaction features, enabling users to engage with creators and other viewers by liking videos, sharing content, and participating in public
Mediates between the domain and data mapping layers by providing a clean API for accessing remote network resources and local storage.
Clean Architecture template for Golang services
Abstracts all data access behind repository interfaces so that swapping PostgreSQL for MongoDB or in-memory storage requires zero changes to business logic.
This is a demonstration and template project that applies Clean Architecture principles to SwiftUI application development. It implements a layered architecture that separates presentation, business logic, and data access into independent layers, with unidirectional data flow managed through a single immutable app store that serves as the sole source of truth for all screens. The project distinguishes itself through its implementation of interactor-driven business logic, where all domain rules and workflows live in stateless objects that receive requests and update the central store. Dependen
Hides data origin behind protocols so the business layer can swap real and mocked data sources without changing code.
Ecto is an Elixir database toolkit that maps database rows to Elixir structs and validates data changes through changesets before persistence. It provides a language-integrated query syntax for composing database queries, building them incrementally and securely with compile-time expansion into safe SQL. The toolkit connects to multiple database backends including PostgreSQL, MySQL, MSSQL, SQLite3, ClickHouse, and ETS through a pluggable adapter interface. It supports eager and lazy preloading of associated records to eliminate N+1 query problems, and can store nested data structures as embed
Encapsulates database operations behind repository modules that return structured success or error tuples.
Este proyecto es una implementación de referencia que proporciona una colección de ejemplos prácticos para patrones de acceso a datos y abstracciones de repositorios dentro del ecosistema Spring Data. Sirve como un escaparate integral para implementar capas de datos consistentes a través de varias bases de datos relacionales y no relacionales. El repositorio demuestra específicamente la persistencia multi-almacén integrando bases de datos relacionales, de documentos y vectoriales dentro de una única aplicación. Incluye implementaciones para búsqueda vectorial para gestionar embeddings de alta dimensión y búsquedas de similitud a través de diferentes tecnologías de bases de datos. Las capacidades adicionales cubiertas incluyen acceso a datos reactivo para operaciones no bloqueantes y flujos de datos asíncronos. El proyecto también proporciona orientación sobre la optimización de imágenes nativas para mejorar el rendimiento de inicio y el uso de memoria a través de la compilación anticipada (AOT). Los ejemplos ilustran además el aislamiento de datos multi-inquilino, el diseño de APIs de repositorios de datos y la integración de búsqueda geoespacial y de texto completo.
Converts database repositories into RESTful HTTP endpoints with support for pagination and data projections.
Este proyecto sirve como implementación de referencia para aplicar principios de arquitectura limpia (clean architecture) dentro de un entorno C#. Demuestra cómo estructurar aplicaciones empresariales organizando el código en capas concéntricas e independientes que aíslan la lógica de negocio central de la infraestructura externa, los frameworks y las preocupaciones de la base de datos. El código ilustra la aplicación del diseño guiado por el dominio (DDD) para centrar la lógica del software en torno a las entidades y reglas de negocio. Utiliza el desacoplamiento basado en interfaces y la inversión de dependencias para asegurar que las políticas de alto nivel permanezcan ajenas a los detalles de implementación de bajo nivel, facilitando la mantenibilidad y la capacidad de prueba a largo plazo. Para gestionar el acceso a los datos, el proyecto emplea el patrón repositorio para abstraer las tecnologías de almacenamiento. Este enfoque desacopla la capa de dominio de mecanismos de persistencia específicos, permitiendo el reemplazo de proveedores de datos sin requerir modificaciones en la lógica central de la aplicación. La inyección de dependencias se utiliza en todo el proyecto para gestionar los ciclos de vida de los objetos y el cableado de los componentes.
Abstracts database interactions behind repository interfaces to allow storage technology swaps without logic changes.