# Clean Architecture and SOLID Principles

> Search results for `clean architecture and SOLID principles explained` on awesome-repositories.com. 117 total matches; showing the first 50.

Explore on the web: https://awesome-repositories.com/q/clean-architecture-and-solid-principles-explained

**Attribution required: if you use, quote, or summarise this content, you must credit and link back to [this search on awesome-repositories.com](https://awesome-repositories.com/q/clean-architecture-and-solid-principles-explained).**

## Results

- [ardalis/cleanarchitecture](https://awesome-repositories.com/repository/ardalis-cleanarchitecture.md) (18,291 ⭐) — CleanArchitecture is a project template for ASP.NET Core designed to establish a standardized foundation for enterprise applications. It enforces architectural boundaries by separating core business logic from infrastructure and external dependencies, ensuring that the domain remains independent of technical concerns.

The project provides scaffolding that supports both multi-project solutions for complex systems and single-project vertical slices for simpler requirements. By organizing code around business entities and aggregates, it facilitates modular development where distinct parts of a s
- [evrone/go-clean-template](https://awesome-repositories.com/repository/evrone-go-clean-template.md) (7,601 ⭐) — Clean Architecture template for Golang services
- [dwmkerr/hacker-laws](https://awesome-repositories.com/repository/dwmkerr-hacker-laws.md) (27,171 ⭐) — This project is a comprehensive, community-curated compendium of the fundamental principles, heuristics, and adages that define professional software engineering. It serves as a structured reference for developers and managers, documenting the empirical observations and mathematical formulas that shape system architecture, team dynamics, and technical decision-making.

The repository distinguishes itself through a decentralized, open-contribution model that relies on distributed version control to maintain its knowledge base. By utilizing a flat-file data structure and markdown-based content c
- [piotrplenik/clean-code-php](https://awesome-repositories.com/repository/piotrplenik-clean-code-php.md) (12,455 ⭐) — This project is a PHP clean code guide and software architecture reference. It provides a set of standards, naming conventions, and design patterns intended to improve the long-term maintainability and readability of PHP codebases.

The guide emphasizes a structured approach to refactoring and system design, focusing on the application of SOLID principles to reduce coupling and increase extensibility. It advocates for object-oriented design through the use of composition over inheritance, the use of final classes to prevent unexpected overrides, and the implementation of strict type declaratio
- [aquasecurity/trivy](https://awesome-repositories.com/repository/aquasecurity-trivy.md) (36,462 ⭐) — Trivy is a comprehensive security scanner designed to identify vulnerabilities and misconfigurations across container images, filesystems, and infrastructure as code files. It functions as a software composition analysis tool and an infrastructure security scanner, providing automated checks for CI/CD pipelines and cloud environments to ensure the integrity of the software supply chain.

The tool distinguishes itself through a modular, plugin-based architecture that allows for the independent inspection of diverse targets. It utilizes a declarative policy engine to evaluate configurations agai
- [mohamedbouattour/angular-clean-architecture](https://awesome-repositories.com/repository/mohamedbouattour-angular-clean-architecture.md) (3 ⭐) — A CLI tool to scaffold Angular 20+ applications following Clean Architecture principles and NgRx SignalStore best practices.
- [federico-busato/modern-cpp-programming](https://awesome-repositories.com/repository/federico-busato-modern-cpp-programming.md) (15,808 ⭐) — This project is a comprehensive educational resource and programming course covering C++ language semantics and features from C++03 through C++26. It provides structured tutorials and technical guides focused on modern C++ development.

The material offers specialized instruction on template metaprogramming, including the use of type traits and compile-time computations. It features detailed guides on concurrency and parallelism for multi-core execution, as well as a reference for software design applying SOLID principles and RAII. Additionally, it covers build performance optimization to redu
- [sebastianboldt/gang-of-four-and-solid-principles-in-swift](https://awesome-repositories.com/repository/sebastianboldt-gang-of-four-and-solid-principles-in-swift.md) (138 ⭐) — 👨‍👩‍👧‍👦  - My personal Repo to learn all 23 Gang of Four patterns and all SOLID Principles using Swift and Playgrounds
- [anomalyco/opentui](https://awesome-repositories.com/repository/anomalyco-opentui.md) (12,131 ⭐) — Opentui is a terminal user interface framework for building interactive command line applications. It provides a component-based system featuring a flexbox layout engine, a virtual node component tree, and a low-level 2D cell array renderer.

The project is distinguished by a sophisticated keyboard binding engine that maps complex multi-stroke sequences and chords to named commands using prioritized, reactive layers. It also implements a plugin architecture that allows external modules to inject custom UI components into designated layout slots and extend input logic at runtime.

Its capabilit
- [labs42io/clean-code-typescript](https://awesome-repositories.com/repository/labs42io-clean-code-typescript.md) (9,764 ⭐) — This project is a set of software engineering standards and architectural patterns for writing maintainable and refactorable TypeScript code. It provides a comprehensive guide for implementing clean code principles, focusing on the application of SOLID design and structural patterns to build decoupled systems.

The framework prioritizes composition over inheritance and utilizes dependency inversion to reduce system coupling. It establishes standards for strict static typing and the use of read-only modifiers to ensure type safety and eliminate runtime errors.

The guidance covers a broad range
- [pcah/python-clean-architecture](https://awesome-repositories.com/repository/pcah-python-clean-architecture.md) (533 ⭐) — A Python toolkit for applications driven by The Clean Architecture
- [crowdsecurity/crowdsec](https://awesome-repositories.com/repository/crowdsecurity-crowdsec.md) (12,574 ⭐) — CrowdSec is a collaborative, distributed security engine designed for threat detection and infrastructure protection. It functions as an intrusion detection system that parses logs and network traffic to identify malicious patterns, utilizing a bucket-based threshold detection model to aggregate events and trigger alerts. The platform is built on a modular architecture that includes a centralized local API server for managing security signals and a relational database for persistent storage of remediation decisions.

What distinguishes the project is its decoupled enforcement model, which offl
- [bxcodec/go-clean-arch](https://awesome-repositories.com/repository/bxcodec-go-clean-arch.md) (10,118 ⭐) — This project is a boilerplate and template for Go applications implementing Clean Architecture. It provides a standardized project structure designed to organize code into decoupled layers, ensuring that core business logic remains independent of databases, frameworks, and user interfaces.

The implementation focuses on a domain-driven design that utilizes dependency injection and the repository pattern to abstract data storage. It enforces architectural boundaries through internal package encapsulation and layer-based dependency inversion.

The project includes a development toolchain that au
- [eduardomoroni/react-clean-architecture](https://awesome-repositories.com/repository/eduardomoroni-react-clean-architecture.md) (1,618 ⭐) — A realistic approach to implement clean architecture on react codebases
- [thangchung/clean-code-dotnet](https://awesome-repositories.com/repository/thangchung-clean-code-dotnet.md) (7,615 ⭐) — This project provides a comprehensive collection of best practices, architectural patterns, and coding standards for the .NET ecosystem. It serves as a guide for developers to improve the readability, maintainability, and testability of C# applications by applying established software engineering principles.

The repository focuses on enforcing consistent code style and structure through automated configuration rules. It emphasizes the use of SOLID design principles to create modular, loosely coupled components, alongside structured exception management to ensure diagnostic information is pres
- [atlassian/react-beautiful-dnd](https://awesome-repositories.com/repository/atlassian-react-beautiful-dnd.md) (34,049 ⭐) — This project is a declarative drag-and-drop library designed for building accessible and fluid interface interactions within web applications. It provides a component-based interface for managing complex list reordering and spatial relationships between elements, utilizing a specialized state container to coordinate movement logic.

The library distinguishes itself through a focus on accessibility, maintaining a live connection between visual drag states and the browser accessibility tree to support screen readers and keyboard navigation. It optimizes performance by bypassing standard componen
- [thangchung/clean-architecture-dotnet](https://awesome-repositories.com/repository/thangchung-clean-architecture-dotnet.md) (1,349 ⭐) — 🕸 Yet Another .NET Clean Architecture, but for Microservices project. It uses Minimal Clean Architecture with DDD-lite, CQRS-lite, and just enough Cloud-native patterns apply on the simple eCommerce sample and run on Tye with Dapr extension 🍻
- [ryanmcdermott/clean-code-javascript](https://awesome-repositories.com/repository/ryanmcdermott-clean-code-javascript.md) (94,454 ⭐) — This project is a collection of engineering guidelines and best practices for writing readable and maintainable JavaScript source code. It serves as a clean code guide and refactoring manual to help developers improve the structure of their codebases.

The repository provides a reference for applying SOLID principles to reduce coupling and enable extensions without modifying existing logic. It includes a naming convention standard for using explicit, searchable identifiers and a guide for asynchronous patterns to replace nested callbacks with clearer execution flows.

The guidelines cover soft
- [gyoogle/tech-interview-for-developer](https://awesome-repositories.com/repository/gyoogle-tech-interview-for-developer.md) (17,417 ⭐) — This project is a comprehensive technical interview preparation resource and computer science interview guide. It serves as an educational reference for developers to study core software engineering fundamentals and common coding patterns required for employment screenings.

The repository provides detailed guides and references covering data structures and algorithms, networking and security, operating systems, and web development. It specifically focuses on the implementation and complexity analysis of sorting, searching, and graph algorithms.

The material encompasses a wide breadth of comp
- [ivanpaulovich/clean-architecture-manga](https://awesome-repositories.com/repository/ivanpaulovich-clean-architecture-manga.md) (4,334 ⭐) — :cyclone: Clean Architecture with .NET6, C#10 and React+Redux. Use cases as central organizing structure, completely testable, decoupled from frameworks
- [forem/forem](https://awesome-repositories.com/repository/forem-forem.md) (22,726 ⭐) — Forem is an open-source platform designed for building and managing technical communities. It functions as a social publishing engine that enables members to share long-form content, participate in threaded discussions, and engage through social interactions. The platform provides tools for organizations to maintain branded profiles, host community hackathons, and facilitate collaborative learning through structured educational tracks.

Beyond its social features, Forem integrates advanced capabilities for AI agent workflow orchestration and codebase knowledge graphing. It allows developers to
- [eminetto/clean-architecture-go-v2](https://awesome-repositories.com/repository/eminetto-clean-architecture-go-v2.md) (1,319 ⭐) — Clean Architecture sample
- [felipe-augusto/clean-code-javascript](https://awesome-repositories.com/repository/felipe-augusto-clean-code-javascript.md) (4,891 ⭐) — This project is a comprehensive guide and set of engineering standards for writing readable, maintainable, and scalable JavaScript code. It provides a framework for software architecture, refactoring patterns, and clean coding practices designed to improve codebase health and longevity.

The guide emphasizes the application of SOLID principles and architectural strategies such as dependency inversion and the separation of concerns. It focuses on transforming complex conditional logic through polymorphism and refactoring, while promoting a transition from imperative loops to declarative functio
- [bytebytegohq/system-design-101](https://awesome-repositories.com/repository/bytebytegohq-system-design-101.md) (83,491 ⭐) — This project is a centralized engineering knowledge repository that provides a structured curriculum for mastering system design, architectural patterns, and fundamental software development workflows. It serves as a professional development resource for engineers, offering foundational knowledge and real-world case studies to support the design of scalable, secure, and efficient distributed systems.

The repository distinguishes itself through a visual-first approach to knowledge synthesis, distilling complex technical concepts into high-density graphical diagrams and succinct illustrations.
- [rust-unofficial/patterns](https://awesome-repositories.com/repository/rust-unofficial-patterns.md) (8,843 ⭐) — A catalogue of Rust design patterns, anti-patterns and idioms
- [vincentjouanne/nest-clean-architecture-ddd-example](https://awesome-repositories.com/repository/vincentjouanne-nest-clean-architecture-ddd-example.md) (739 ⭐) — 🏛️   Nest.js clean architecture example following some DDD principles with use-cases written in functionnal programming.
- [jacob-y/django-clean-architecture](https://awesome-repositories.com/repository/jacob-y-django-clean-architecture.md) (134 ⭐) — example of clean architecture with django
- [bufferapp/android-clean-architecture-boilerplate](https://awesome-repositories.com/repository/bufferapp-android-clean-architecture-boilerplate.md) (3,684 ⭐) — An android boilerplate project using clean architecture
- [flutter-team-archive/plugins](https://awesome-repositories.com/repository/flutter-team-archive-plugins.md) (17,710 ⭐) — This project is a collection of official plugin packages and a native integration library designed to provide a consistent interface for accessing hardware and software functionality across different mobile and desktop platforms. It serves as a native platform bridge, enabling cross-platform applications to invoke native code and manage operating system dependencies.

The project utilizes a federated plugin architecture, splitting plugins into common interfaces and separate platform implementations to allow for independent development and extension. It further supports native integration throu
- [zakirullin/cognitive-load](https://awesome-repositories.com/repository/zakirullin-cognitive-load.md) (12,288 ⭐) — This project is a collection of software engineering principles and architectural design patterns designed to minimize the mental effort required to understand and maintain source code. It serves as a guide for implementing clean code methodologies and architectural simplification to reduce the overall cognitive load on developers.

The framework emphasizes aligning module boundaries and ubiquitous language with business stakeholders to prevent architectural ripple effects. It advocates for balancing service granularity to avoid the overhead of distributed monoliths and suggests favoring objec
- [alexeymezenin/laravel-best-practices](https://awesome-repositories.com/repository/alexeymezenin-laravel-best-practices.md) (12,299 ⭐) — This project is a comprehensive guide to architectural standards and coding patterns for developing maintainable applications within the Laravel framework. It focuses on clean code standards, applying the single responsibility and DRY principles to ensure codebase predictability and consistency.

The guide emphasizes decoupling components by moving business logic into service layers and shifting input validation into dedicated request classes to keep controllers lean. It advocates for the use of a service container and dependency injection to reduce class coupling and improve testability.

The
- [nalexn/clean-architecture-swiftui](https://awesome-repositories.com/repository/nalexn-clean-architecture-swiftui.md) (6,571 ⭐) — 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
- [emcie-co/parlant](https://awesome-repositories.com/repository/emcie-co-parlant.md) (18,119 ⭐) — Parlant is an agentic workflow engine and orchestration framework designed for building conversational AI that adheres to strict behavioral guidelines. It provides a platform for managing multi-turn interactions through state-machine-based logic, allowing developers to define complex, hierarchical conversational flows that can adapt, skip, or revisit steps based on real-time user input.

The framework distinguishes itself through its focus on behavioral governance and observability. It enables developers to define precise domain terminology and enforce instruction compliance through prioritize
- [chartscss/charts.css](https://awesome-repositories.com/repository/chartscss-charts-css.md) (6,569 ⭐) — charts.css is a CSS-driven framework designed to transform semantic HTML into accessible data visualizations without relying on JavaScript. It functions as a charting library that uses standard HTML structures, such as tables and lists, to render graphs while maintaining full compatibility with screen readers.

The project distinguishes itself by using CSS variables to map numeric data to visual dimensions and utility classes to control chart types and layouts. It supports a wide range of visual styles, including 3D effects, reflection effects, and customized color palettes integrated via a br
- [iluwatar/java-design-patterns](https://awesome-repositories.com/repository/iluwatar-java-design-patterns.md) (94,123 ⭐) — This repository serves as a comprehensive educational collection of industry-standard software design patterns and architectural principles implemented in Java. It functions as a structured reference for developers to study and apply proven strategies for building maintainable, object-oriented systems.

The project acts as a knowledge base for software engineering, offering a curated set of programming heuristics and best practices. By providing ready-to-use implementations of standard design patterns, it enables developers to address common programming challenges and improve code modularity t
- [mikolaj-jankowski/clean-architecture-and-domain-driven-design-solution-template](https://awesome-repositories.com/repository/mikolaj-jankowski-clean-architecture-and-domain-driven-design-solution-template.md) (285 ⭐) — Clean Architecture and Domain Driven Design Template
- [clauderic/dnd-kit](https://awesome-repositories.com/repository/clauderic-dnd-kit.md) (17,243 ⭐) — This project is a modular toolkit for building accessible, component-based drag-and-drop interfaces in React. It provides a foundational framework for managing complex spatial interactions, state synchronization, and element registration, allowing developers to create interactive web applications that support mouse, touch, and keyboard inputs.

The library distinguishes itself through a highly extensible architecture that separates input handling from interaction logic. It utilizes a sensor-based input abstraction to normalize diverse user interactions and a plugin-driven lifecycle to inject c
- [patrickyin/clean-architecture-android-kotlin](https://awesome-repositories.com/repository/patrickyin-clean-architecture-android-kotlin.md) (327 ⭐) — Using Uncle Bob's clean architecture with Kotlin language and the latest Android technologies(Rx, Dagger2 etc.).
- [vonng/ddia](https://awesome-repositories.com/repository/vonng-ddia.md) (22,648 ⭐) — This project serves as a comprehensive technical reference for the architecture and design of data-intensive applications. It provides a structured analysis of the fundamental principles required to build reliable, scalable, and maintainable software systems, covering the core trade-offs inherent in modern data infrastructure.

The repository explores the mechanics of distributed data management, including strategies for replication, partitioning, and achieving consensus across multiple nodes. It details the design of storage engines, indexing techniques, and transaction management models, whi
- [arialdomartini/back-end-developer-interview-questions](https://awesome-repositories.com/repository/arialdomartini-back-end-developer-interview-questions.md) (16,574 ⭐) — This project is an open-source knowledge repository that serves as a comprehensive technical interview question bank for backend engineering roles. It provides a structured resource for hiring managers and candidates to evaluate proficiency in software design, architectural patterns, and core engineering principles through a curated collection of discussion topics and coding challenges.

The repository functions as a programming paradigm evaluation tool, enabling the assessment of a candidate's understanding of object-oriented, functional, and procedural techniques. It distinguishes itself by
- [flutter/flutter](https://awesome-repositories.com/repository/flutter-flutter.md) (177,056 ⭐) — This project is a multi-platform UI framework designed for building applications that target mobile, web, and desktop environments from a single codebase. It utilizes a declarative paradigm where the user interface is defined as a function of application state, supported by a layered architecture that includes a high-performance rendering engine and a multi-platform compilation model.

The framework provides a comprehensive suite of developer tools, including hot reloading for real-time code injection and diagnostic utilities for monitoring application state and performance. It features a modu
- [panagiop/node.js-clean-architecture](https://awesome-repositories.com/repository/panagiop-node-js-clean-architecture.md) (1,159 ⭐) — A use case of Clean Architecture in Node.js comprising of Express.js, MongoDB and Redis as the main (but replaceable) infrastructure.
- [solid/solid](https://awesome-repositories.com/repository/solid-solid.md) (8,108 ⭐) — Solid is a protocol and ecosystem for decentralized web applications that separates application logic from data storage. It enables users to store and control their personal information in personal online data stores, known as Pods, ensuring that individuals own their data rather than the applications they use.

The project provides a framework for decentralized identity and authentication using WebID and OpenID Connect, decoupling identity from central providers. It implements a resource-level permission system via Web Access Control, allowing users to grant or deny read, write, and append ac
- [argotorg/solidity](https://awesome-repositories.com/repository/argotorg-solidity.md) (25,659 ⭐) — This project is a high-level programming language and compiler toolchain designed for writing and deploying smart contracts on decentralized virtual machines. It provides a framework for creating self-executing code that operates within deterministic execution environments, ensuring that distributed nodes reach identical state transitions through stack-based machine execution.

The language enables the development of complex decentralized logic by supporting state-machine-based contract structures and modular composition. It includes built-in capabilities for cryptographic signature verificati
- [asyncfuncai/deepwiki-open](https://awesome-repositories.com/repository/asyncfuncai-deepwiki-open.md) (14,362 ⭐) — This platform is an automated documentation and codebase analysis system designed to generate structured wikis, technical guides, and interactive diagrams from source code repositories. It functions as a retrieval-augmented generation framework that connects codebases to language models, enabling context-aware answers, deep research, and automated documentation updates through semantic vector search.

The system distinguishes itself through a self-hosted, containerized architecture that supports both cloud-based and local AI model execution. It provides sophisticated model orchestration, allow
- [ochococo/ood-principles-in-swift](https://awesome-repositories.com/repository/ochococo-ood-principles-in-swift.md) (1,893 ⭐) — 💎 The Principles of OOD (SOLID) based on Uncle Bob articles.
- [mouredev/roadmap-retos-programacion](https://awesome-repositories.com/repository/mouredev-roadmap-retos-programacion.md) (7,907 ⭐) — This project is a programming learning roadmap and interactive coding exercise platform. It functions as a markdown-based content site that uses a static site generator to compile instructional guides and technical challenges into a structured interface.

The platform provides a client-side progress tracker that utilizes local browser storage to monitor the completion of challenges without requiring a backend database. It organizes educational content through a sequence of coding exercises and instructional videos designed to guide developers through specific technical domains.

The system cov
- [pvarentsov/typescript-clean-architecture](https://awesome-repositories.com/repository/pvarentsov-typescript-clean-architecture.md) (1,501 ⭐)
- [redux-utilities/redux-actions](https://awesome-repositories.com/repository/redux-utilities-redux-actions.md) (6,460 ⭐) — redux-actions is a toolkit for producing standardized action objects, mapping reducers to handlers, and orchestrating state management logic. It serves as an action creator library and reducer mapping tool designed to ensure consistent action structures across a system.

The project implements the Flux Standard Action specification, generating objects with consistent type, payload, and error properties. It provides utilities to bundle related action creators into organized objects and wraps functions to automatically inject constant action types into the resulting objects.

The library simplif
- [appwrite/appwrite](https://awesome-repositories.com/repository/appwrite-appwrite.md) (56,318 ⭐) — Appwrite is a backend-as-a-service platform that provides a unified development environment for building full-stack applications. It integrates essential infrastructure components—including authentication, databases, storage, and serverless functions—into a single, centralized interface to simplify application development and resource management.

The platform distinguishes itself through a container-based microservices architecture that ensures consistent execution across diverse infrastructure. It features a versatile connectivity layer that links frontend applications with third-party servi
