25 个仓库
Frameworks and templates for structuring applications using clean, reactive, or modular patterns.
Explore 25 awesome GitHub repositories matching part of an awesome list · Architecture Patterns. Refine with filters or upvote what's useful.
This repository serves as a technical reference and educational resource for implementing software design patterns within the Swift programming language. It provides a collection of common architectural patterns designed to help developers structure codebases for improved maintainability, scalability, and system organization. The project focuses on applying fundamental object-oriented and protocol-oriented principles to manage relationships between classes and objects. It demonstrates how to use language-level interfaces to define shared behaviors and how to organize components into cohesive
Educational collection of common software design patterns.
This is a Swift state management framework and application logic library designed for building applications with a single source of truth and unidirectional data flow. It provides a Redux-inspired architecture that separates business logic from side effects and user interfaces to ensure predictable application behavior across multiple screens. The framework focuses on modularity by allowing complex features to be decomposed into smaller, isolated components. This enables the development of UI-independent business logic that can be extracted into separate modules to improve compilation speed a
Comprehensive library for building consistent, testable applications.
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
Demonstrates production-ready SwiftUI with clean architecture.
This project is a reference implementation of Domain-Driven Design, Clean Architecture, and Command Query Responsibility Segregation (CQRS) patterns using the Go programming language. It serves as a sample application to demonstrate how to decouple core domain rules from infrastructure and delivery mechanisms. The system is built as a gRPC microservices architecture, utilizing type-safe communication and service contracts. It implements an event-driven architecture to manage eventual consistency and asynchronous processing, specifically employing the Outbox pattern to ensure reliable messagin
Example project demonstrating DDD and CQRS.
Stateless 是一个 .NET 状态机库,用于通过 C# 代码管理复杂的对象行为和轻量级工作流。它充当异步工作流引擎,使用异步任务执行状态转换、守卫和进入/退出操作。 该库实现了分层状态机,允许子状态从父超状态继承转换和属性。它包含一个状态持久化框架,通过将当前状态读写到外部属性或数据库中,将状态跟踪与机器逻辑解耦。此外,它还具有图形可视化导出器,可生成 DOT 或 Mermaid 格式,将工作流配置渲染为视觉图表。 该系统涵盖了转换映射,支持重入和内部转换、基于谓词的守卫子句以及参数化触发器调度。它还提供了机器配置自省、状态更改通知以及在状态进入和退出期间执行同步或异步逻辑的能力。
State machine implementation for managing application logic.
该项目是一个实现整洁架构(Clean Architecture)模式的 Swift iOS 架构模板。它将软件组织成不同的层,以将业务规则与外部框架、用户界面和基础设施解耦,从而提高可测试性和可维护性。 该模板结合了领域驱动设计(DDD)来隔离核心业务逻辑,并利用模块化应用结构将功能划分为独立模块。它采用协调器(Coordinator)模式将路由逻辑从视图控制器中移除,并使用依赖注入框架来确保组件保持独立且可替换。 该架构进一步利用响应式状态管理将逻辑与视图层解耦,并利用基于接口的基础设施,允许在不修改业务规则的情况下切换数据提供程序。
Implements clean architecture using reactive extensions.
该项目是一个使用 SwiftUI 和整洁架构(Clean Architecture)的模块化 iOS 应用参考实现和模板。它提供了一个组织成独立层的结构,以将用户界面和外部框架与核心业务逻辑解耦。 该架构结合了领域驱动设计(DDD),通过基于业务领域将代码组织成独立模块来管理复杂性。这种方法强制执行严格的依赖边界并缩短了构建时间。 该项目实现了一个基于插件的数据层,将 API 和数据库实现隐藏在网关之后,从而允许在不修改业务规则的情况下切换数据源。它还具有一个集中的路由协调器来抽象导航层级,使各个功能模块独立于整体应用流程。
Example project demonstrating clean architecture with reactive streams.
Freedom是一个基于六边形架构的框架,可以支撑充血的领域模型范式。
Framework based on hexagonal architecture.
Reference implementation for modern application design patterns.
A collection of iOS architectures - MVC, MVVM, MVVM+RxSwift, VIPER, RIBs and many others
Provides a collection of common architectural patterns.
Clean Architecture sample
Reference implementation of clean architecture.
go-cleanarch was created to keep Clean Architecture rules, like a The Dependency Rule and interaction between modules in your Go projects. More about Clean Architecture you can read in our article.
Tool for validating clean architecture rules.
This repository contains a detailed sample app that implements VIPER architecture in iOS using libraries and frameworks like Alamofire, AlamofireImage, PKHUD, CoreData etc.
Offers a sample implementation of the VIPER pattern.
Viper Framework for iOS using Swift
Framework for implementing the VIPER architectural pattern.
Reactant is a reactive architecture for iOS
Reactive architecture framework for building modular interfaces.
⚛️ Atomic approach state management and dependency injection for SwiftUI
Library for reactive data binding and dependency injection.
Stateful view controller containment for iOS and tvOS
Compositional approach to managing view controller states.
Spin aims to provide a versatile Feedback Loop implementation working with the three main reactive frameworks available in the Swift community (RxSwift, ReactiveSwift and Combine)
Feedback loop implementation for reactive state management.
Swift Interaction with VIPER Architecture
Simplifies the implementation of VIPER architecture.
A Library of simple architecture that decouples state changes from SwiftUI's View
Architecture for decoupling state logic from view definitions.