[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"project-10101":3},{"id":4,"name":5,"fullName":6,"owner":7,"repo":5,"description":8,"homepage":9,"htmlUrl":10,"language":11,"languages":10,"totalLinesOfCode":10,"stars":12,"forks":13,"watchers":14,"openIssues":15,"contributorsCount":16,"subscribersCount":16,"size":16,"stars1d":17,"stars7d":18,"stars30d":19,"stars90d":16,"forks30d":16,"starsTrendScore":20,"compositeScore":21,"rankGlobal":10,"rankLanguage":10,"license":22,"archived":23,"fork":23,"defaultBranch":24,"hasWiki":23,"hasPages":25,"topics":26,"createdAt":10,"pushedAt":10,"updatedAt":36,"readmeContent":37,"aiSummary":38,"trendingCount":16,"starSnapshotCount":16,"syncStatus":39,"lastSyncTime":40,"discoverSource":41},10101,"CleanArchitecture","jasontaylordev\u002FCleanArchitecture","jasontaylordev","Clean Architecture Solution Template for ASP.NET Core","https:\u002F\u002Fcleanarchitecture.jasontaylor.dev",null,"C#",20182,4224,380,9,0,11,38,142,46,45,"MIT License",false,"main",true,[27,28,29,30,31,32,33,34,35],"angular","asp-net","aspire","clean-architecture","dotnet","entity-framework","react","template","web-api","2026-06-12 02:02:17","# Clean Architecture Solution Template\n\n[![Build](https:\u002F\u002Fgithub.com\u002Fjasontaylordev\u002FCleanArchitecture\u002Factions\u002Fworkflows\u002Fbuild.yml\u002Fbadge.svg)](https:\u002F\u002Fgithub.com\u002Fjasontaylordev\u002FCleanArchitecture\u002Factions\u002Fworkflows\u002Fbuild.yml)\n[![CodeQL](https:\u002F\u002Fgithub.com\u002Fjasontaylordev\u002FCleanArchitecture\u002Factions\u002Fworkflows\u002Fcodeql.yml\u002Fbadge.svg)](https:\u002F\u002Fgithub.com\u002Fjasontaylordev\u002FCleanArchitecture\u002Factions\u002Fworkflows\u002Fcodeql.yml)\n[![Nuget](https:\u002F\u002Fimg.shields.io\u002Fnuget\u002Fv\u002FClean.Architecture.Solution.Template?label=NuGet)](https:\u002F\u002Fwww.nuget.org\u002Fpackages\u002FClean.Architecture.Solution.Template)\n[![Nuget](https:\u002F\u002Fimg.shields.io\u002Fnuget\u002Fdt\u002FClean.Architecture.Solution.Template?label=Downloads)](https:\u002F\u002Fwww.nuget.org\u002Fpackages\u002FClean.Architecture.Solution.Template)\n![Twitter Follow](https:\u002F\u002Fimg.shields.io\u002Ftwitter\u002Ffollow\u002Fjasontaylordev?label=Follow&style=social)\n\nThe goal of this template is to provide a straightforward and efficient approach to enterprise application development, leveraging the power of Clean Architecture and ASP.NET Core. Using this template, you can effortlessly create a new app with Angular, React, or Web API only, powered by ASP.NET Core and Aspire. Getting started is easy - simply install the **.NET template** (see below for full details).\n\nFor full documentation, visit **[cleanarchitecture.jasontaylor.dev](https:\u002F\u002Fcleanarchitecture.jasontaylor.dev)**.\n\nIf you find this project useful, please give it a star. Thanks! ⭐\n\n## Getting started\n\n### Prerequisites\n\n- [.NET 10.0 SDK](https:\u002F\u002Fdotnet.microsoft.com\u002Fdownload\u002Fdotnet\u002F10.0) or later\n- [Node.js](https:\u002F\u002Fnodejs.org\u002F) (LTS) — only required if you plan to use the Angular or React frontend\n- [Docker Desktop](https:\u002F\u002Fwww.docker.com\u002Fproducts\u002Fdocker-desktop\u002F) or [Podman](https:\u002F\u002Fpodman.io\u002F) (or any OCI-compliant container runtime) — only required when using SQL Server or PostgreSQL. Not required when using SQLite (the default).\n\n### Install the template\n\n```bash\ndotnet new install Clean.Architecture.Solution.Template\n```\n\n### Create a new solution\n\nCreate a new solution using the template. Specify the client framework using `--client-framework` (`-cf`) and the database provider using `--database` (`-db`):\n\n```bash\ndotnet new ca-sln --client-framework [angular|react|none] --database [postgresql|sqlite|sqlserver] --output YourProjectName\n```\n\n| Option | Values | Default |\n|---|---|---|\n| `--client-framework` | `angular`, `react`, `none` | `angular` |\n| `--database` | `postgresql`, `sqlite`, `sqlserver` | `sqlite` |\n\n**Examples:**\n\n🅰️ Angular SPA with ASP.NET Core Web API and PostgreSQL:\n```bash\ndotnet new ca-sln -cf angular -db postgresql -o YourProjectName\n```\n\n⚛️ React SPA with ASP.NET Core Web API and SQL Server:\n```bash\ndotnet new ca-sln -cf react -db sqlserver -o YourProjectName\n```\n\n🔌 ASP.NET Core Web API only with SQLite:\n```bash\ndotnet new ca-sln -cf none -db sqlite -o YourProjectName\n```\n\n> 💡 **Tip:** Run `dotnet new ca-sln --help` to see all available template options.\n\n### Run the app\n\n```bash\ndotnet run --project .\\src\\AppHost\n```\n\nThe Aspire dashboard will open automatically, showing the application URLs and logs.\n\nTo learn more, see the [Getting started](https:\u002F\u002Fcleanarchitecture.jasontaylor.dev\u002Fdocs\u002Fgetting-started\u002F) guide and [Architecture](https:\u002F\u002Fcleanarchitecture.jasontaylor.dev\u002Fdocs\u002Farchitecture\u002F) overview.\n\n## Technologies\n\n* [ASP.NET Core 10](https:\u002F\u002Fdocs.microsoft.com\u002Fen-us\u002Faspnet\u002Fcore\u002Fintroduction-to-aspnet-core)\n* [Aspire](https:\u002F\u002Faspire.dev)\n* [Entity Framework Core 10](https:\u002F\u002Fdocs.microsoft.com\u002Fen-us\u002Fef\u002Fcore\u002F)\n* [Angular 21](https:\u002F\u002Fangular.dev\u002F) or [React 19](https:\u002F\u002Freact.dev\u002F)\n* [MediatR](https:\u002F\u002Fgithub.com\u002Fjbogard\u002FMediatR)\n* [AutoMapper](https:\u002F\u002Fautomapper.org\u002F)\n* [FluentValidation](https:\u002F\u002Ffluentvalidation.net\u002F)\n* [NUnit](https:\u002F\u002Fnunit.org\u002F), [Shouldly](https:\u002F\u002Fdocs.shouldly.org\u002F), [Moq](https:\u002F\u002Fgithub.com\u002Fdevlooped\u002Fmoq) & [Respawn](https:\u002F\u002Fgithub.com\u002Fjbogard\u002FRespawn)\n* [Scalar](https:\u002F\u002Fscalar.com\u002F)\n\n## Versions\n\nThe `main` branch is on **.NET 10.0**. Previous versions are available:\n\n| Version | Branch |\n|---|---|\n| .NET 9.0 | [`net9.0`](https:\u002F\u002Fgithub.com\u002Fjasontaylordev\u002FCleanArchitecture\u002Ftree\u002Fnet9.0) |\n| .NET 8.0 | [`net8.0`](https:\u002F\u002Fgithub.com\u002Fjasontaylordev\u002FCleanArchitecture\u002Ftree\u002Fnet8.0) |\n| .NET 7.0 | [`net7.0`](https:\u002F\u002Fgithub.com\u002Fjasontaylordev\u002FCleanArchitecture\u002Ftree\u002Fnet7.0) |\n| .NET 6.0 | [`net6.0`](https:\u002F\u002Fgithub.com\u002Fjasontaylordev\u002FCleanArchitecture\u002Ftree\u002Fnet6.0) |\n| .NET 5.0 | [`net5.0`](https:\u002F\u002Fgithub.com\u002Fjasontaylordev\u002FCleanArchitecture\u002Ftree\u002Fnet5.0) |\n| .NET Core 3.1 | [`netcore3.1`](https:\u002F\u002Fgithub.com\u002Fjasontaylordev\u002FCleanArchitecture\u002Ftree\u002Fnetcore3.1) |\n\n## Architectural decisions\n\nKey design decisions are documented as [Architecture Decision Records](docs\u002Fdecisions\u002F).\n\n## Learn more\n\n- 📖 [Clean Architecture Solution Template documentation](https:\u002F\u002Fcleanarchitecture.jasontaylor.dev)\n\n## Support\n\nIf you are having problems, please let me know by [raising a new issue](https:\u002F\u002Fgithub.com\u002Fjasontaylordev\u002FCleanArchitecture\u002Fissues\u002Fnew\u002Fchoose).\n\n## License\n\nThis project is licensed under the [MIT License](LICENSE).\n","CleanArchitecture 是一个基于 ASP.NET Core 的整洁架构解决方案模板，旨在简化企业级应用开发。该项目支持使用 Angular、React 或纯 Web API 创建前端，并提供多种数据库选项（如 SQLite、PostgreSQL 和 SQL Server）。其核心功能包括预设的项目结构、依赖注入配置以及遵循领域驱动设计原则的代码组织方式。此外，它还集成了 Entity Framework 作为 ORM 工具来处理数据访问层。此模板非常适合需要快速搭建具有良好扩展性和维护性的后端服务或全栈应用程序的场景，尤其是那些希望采用现代软件工程实践（如持续集成\u002F持续部署）的团队。",2,"2026-06-11 03:26:35","top_topic"]