Friends, the new generation of the Zero framework officially starts being built today. We are very excited to announce that the new framework is named the HelloShop project. This framework will demonstrate a development architecture built on the new generation of the .NET technology stack. The name HelloShop was chosen because a simple shop application can demonstrate all the technologies of a system. Of course, this shop system could just as well be any other system — as long as you understand the design philosophy of this framework, you can quickly build a system of your own. The following document was generated by AI and may contain some grammatical errors, which we will correct later.
Business Scenario
This shop application is intended to demonstrate all the technologies of a system, helping developers build a system with minimal dependencies and code, placing different technologies within a microservice architecture. Developers can quickly reuse code and assemble a system according to their own business needs, instead of spending a lot of time on a general-purpose framework.
Our goal is to provide a fine-grained microservice architecture and best practices, so that you can combine various technologies yourself: a unified authentication and authorization system, service discovery, load balancing, fault tolerance, distributed tracing, distributed caching, distributed transactions, distributed messaging, distributed logging, distributed configuration, distributed scheduled tasks, and more.
In addition, we also provide UIs, including a Blazor-based web app and a MAUI-based hybrid app, which can run on different platforms, including desktop applications, Android apps, and iOS apps.
{class=“img-responsive w-100”}
Included Technologies
Visual Studio 2022, .NET 8, C# 12.0, Aspire, ASP.NET Core, EF Core, WebApi, gRPC, Blazor, MAUI, PostgreSQL, MongoDB, Redis, SignalR, Identity, Orleans, logging, secret management, background scheduled tasks, service discovery, publish/subscribe, distributed tracing, health checks, performance metric probing, configuration management, containerization, unit testing and integration testing, and Roslyn-based source generators and incremental generators.
Repository Structure
For the repository structure, we follow the style Microsoft commonly uses. The directory structure is as follows:
assets Static resources, including images, icons, videos, audio, etc.
build Build scripts, including compile scripts, packaging scripts, publishing scripts, etc.
docs Related documentation, including design documents, architecture documents, development documents, deployment documents, etc.`
samples Demo examples, including code samples, configuration samples, data samples, documentation samples, etc.
src Source code, including source code, configuration files, resource files, script files, etc.
tests Test code, including unit tests, integration tests, end-to-end tests, etc.
tools Some tools used by the project.
Code Repository
International repository: https://github.com/bit365/hello-shop{target="_blank"}
Domestic (China) repository: https://gitee.com/bit365/hello-shop{target="_blank"}
Follow-up Plans
We have also just registered the two domains helloshopnet.com and helloshopnet.cn for later deployment of the framework — you could say we are giving HelloShop a home. They are currently going through the ICP filing process.
Technical Discussion
There will be a series of companion videos for this framework published on www.xcode.me. If you want to get the latest videos, you can follow our WeChat subscription account zerostack, where we will post the latest updates. If you find this framework helpful, you can give us a Star — that is the greatest encouragement for us.
Finally, we hope this framework helps you. If you have any questions, you can raise them on GitHub and we will reply as soon as possible. Insisting on elegant coding is what we have always pursued, and we hope you can take part in that elegance too.