awesome-repositories.com
Blog
awesome-repositories.com

Découvrez les meilleurs dépôts open-source grâce à notre recherche par IA.

ExplorerRecherches sélectionnéesAlternatives open sourceLogiciels auto-hébergésBlogPlan du site
ProjetÀ proposNotre méthodologiePresseServeur MCP
Mentions légalesConfidentialitéConditions d'utilisation
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
·

10 dépôts

Awesome GitHub RepositoriesRepository Patterns

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.

Awesome Repository Patterns GitHub Repositories

Trouvez les meilleurs dépôts grâce à l'IA.Nous recherchons les dépôts les plus pertinents grâce à l'IA.
  • typeorm/typeormAvatar de typeorm

    typeorm/typeorm

    36,540Voir sur GitHub↗

    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.

    TypeScriptactive-recordcockroachdbdata-mapper
    Voir sur GitHub↗36,540
  • google/ioschedAvatar de google

    google/iosched

    21,662Voir sur GitHub↗

    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.

    Kotlin
    Voir sur GitHub↗21,662
  • krayin/laravel-crmAvatar de krayin

    krayin/laravel-crm

    21,404Voir sur GitHub↗

    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.

    PHPcrmcrm-multi-tenant-saascrm-platform
    Voir sur GitHub↗21,404
  • sairyss/domain-driven-hexagonAvatar de Sairyss

    Sairyss/domain-driven-hexagon

    14,395Voir sur GitHub↗

    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.

    TypeScriptarchitectural-patternsarchitecturebackend
    Voir sur GitHub↗14,395
  • guozhigq/pilipalaAvatar de guozhigq

    guozhigq/pilipala

    13,465Voir sur GitHub↗

    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.

    Dartbilibilidartflutter
    Voir sur GitHub↗13,465
  • evrone/go-clean-templateAvatar de evrone

    evrone/go-clean-template

    7,601Voir sur GitHub↗

    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.

    Goclean-architecturedependency-injectionexample
    Voir sur GitHub↗7,601
  • nalexn/clean-architecture-swiftuiAvatar de nalexn

    nalexn/clean-architecture-swiftui

    6,571Voir sur GitHub↗

    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.

    Swiftarchitectureclean-architecturecleanarchitecture
    Voir sur GitHub↗6,571
  • elixir-ecto/ectoAvatar de elixir-ecto

    elixir-ecto/ecto

    6,471Voir sur GitHub↗

    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.

    Elixir
    Voir sur GitHub↗6,471
  • spring-projects/spring-data-examplesAvatar de spring-projects

    spring-projects/spring-data-examples

    5,421Voir sur GitHub↗

    Ce projet est une implémentation de référence fournissant une collection d'exemples pratiques pour les patterns d'accès aux données et les abstractions de dépôt au sein de l'écosystème Spring Data. Il sert de vitrine complète pour implémenter des couches de données cohérentes à travers diverses bases de données relationnelles et non relationnelles. Le dépôt démontre spécifiquement la persistance multi-store en intégrant des bases de données relationnelles, documentaires et vectorielles au sein d'une seule application. Il inclut des implémentations pour la recherche vectorielle afin de gérer des plongements de haute dimension et des recherches de similarité à travers différentes technologies de base de données. Les capacités supplémentaires couvertes incluent l'accès aux données réactif pour les opérations non bloquantes et les flux de données asynchrones. Le projet fournit également des conseils sur l'optimisation des images natives pour améliorer les performances de démarrage et l'utilisation de la mémoire via la compilation ahead-of-time. Les exemples illustrent en outre l'isolation des données multi-tenant, la conception d'API de dépôt de données et l'intégration de la recherche géospatiale et plein texte.

    Converts database repositories into RESTful HTTP endpoints with support for pagination and data projections.

    Java
    Voir sur GitHub↗5,421
  • matthewrenze/clean-architecture-demoAvatar de matthewrenze

    matthewrenze/clean-architecture-demo

    1,217Voir sur GitHub↗

    Ce projet sert d'implémentation de référence pour appliquer les principes de l'architecture propre (Clean Architecture) dans un environnement C#. Il démontre comment structurer des applications d'entreprise en organisant le code en couches concentriques et indépendantes qui isolent la logique métier principale de l'infrastructure externe, des frameworks et des préoccupations liées aux bases de données. La base de code illustre l'application du Domain-Driven Design pour centrer la logique logicielle autour des entités et règles métier. Elle utilise le découplage basé sur les interfaces et l'inversion de dépendance pour garantir que les politiques de haut niveau restent ignorantes des détails d'implémentation de bas niveau, facilitant la maintenabilité et la testabilité à long terme. Pour gérer l'accès aux données, le projet emploie le pattern Repository pour abstraire les technologies de stockage. Cette approche découple la couche domaine des mécanismes de persistance spécifiques, permettant le remplacement des fournisseurs de données sans nécessiter de modifications de la logique applicative principale. L'injection de dépendances est utilisée partout pour gérer les cycles de vie des objets et le câblage des composants.

    Abstracts database interactions behind repository interfaces to allow storage technology swaps without logic changes.

    C#
    Voir sur GitHub↗1,217
  1. Home
  2. Data & Databases
  3. Repository Patterns

Explorer les sous-tags

  • Repository Pattern with Swap Support1 sous-tagAbstracts all data access behind repository interfaces so that swapping PostgreSQL for MongoDB or in-memory storage requires zero changes to business logic. **Distinct from Repository Patterns:** Distinct from Repository Patterns: emphasizes the ability to swap data sources without changing business logic, not just the pattern itself.