Dotnet9 Website Reconstructed Again: This Time Returning to Minimalism!

Dotnet9 Website Reconstructed Again: This Time Returning to Minimalism!

The website has been restructured, adopting a minimalist front-end style to provide a better user experience.

Last updated 4/30/2023 8:40 AM
沙漠尽头的狼
5 min read
Category
.NET
Tags
.NET C# EF Core Razor Pages ORM

Hello everyone, I'm the Wolf at the End of the Desert.

My website Dotnet9 (https://dotnet9.com) has undergone a new round of reconstruction: the frontend has switched back from Vue 3 to ASP.NET Core Razor Pages, with a minimalist style that focuses on content over flashiness. Netizens say the style resembles the early Blog Park. The site owner actually purchased a static template from Yang Qingqing's personal blog (https://www.yangqq.com/). The backend is built with the MASA Framework at https://www.masastack.com/framework. The backend development is still guided by DDD design, and CQRS has been added this time. The overall development plan is: the backend framework using MASA Framework should remain unchanged, and both frontend and backend now fully embrace .NET 8.

By the way, the open-source address of the site is: https://github.com/dotnet9/dotnet9.

Why reconstruct again?

As technology continues to evolve, website reconstruction has become an inevitable trend. To better meet personal learning needs and improve website performance and user experience, the Dotnet9 website has undergone a new round of reconstruction. This reconstruction mainly involves two aspects: frontend and backend.

Frontend reconstruction

Tech stack: ASP.NET Core 8.0 Razor Pages

On the frontend side, the Dotnet9 website switched back from Vue 3 to Razor Pages. This is because although Vue 3 has many advantages, it still has some issues with performance and SEO. Razor Pages, on the other hand, are more suitable for building frontend websites (server-side rendering), offering better performance and SEO optimization.

At the same time, the Dotnet9 website also made some adjustments in style. The site's style is mainly minimalist, abandoning excessive flashy effects and focusing more on content presentation. This style is similar to the early Blog Park, allowing users to concentrate more on reading and learning.

Backend reconstruction

Tech stack: ASP.NET Core 8.0 Web API (MASA Framework + EF Core 8.0 (PostgreSQL), DDD + CQRS)

On the backend side, the Dotnet9 website adopted MASA Framework as its development framework. MASA Framework is .NET's next-generation microservice development framework, helping developers and enterprises start a new modern application development and delivery experience.

In terms of development design, the Dotnet9 website still follows the idea of DDD (Domain-Driven Design). This design philosophy helps developers better understand business requirements, separating business logic from technical implementation, thereby improving code maintainability and scalability.

Additionally, the Dotnet9 website has incorporated the CQRS (Command Query Responsibility Segregation) design pattern, supported by MASA Framework. CQRS is an architectural pattern related to Domain-Driven Design (DDD) and Event Sourcing. It divides events into Command and Query sides, improving system performance and scalability. On the Dotnet9 website, blog post retrieval uses Query, while article reading statistics (under development) use Command.

Summary

The reconstruction of the Dotnet9 website not only improves site performance and user experience but also adopts the latest technologies and design philosophies, making the site more maintainable and scalable. In future development, the Dotnet9 website will continue to uphold this concept, continuously optimizing and improving, to provide users with better services—primarily for personal learning and ongoing evolution.

Results Showcase

Homepage:

Homepage

Article Collection:

Article Collection

Article Details:

Article Details

Source Code

This time, the historical branches have also been cleaned up, retaining only the develop and main branches.

Repository: https://github.com/dotnet9/dotnet9

The solution structure is as follows:

Solution Structure

Frontend main project: Dotnet9.RazorPages

Dotnet9.RazorPages

Backend main project: Dotnet9.Service

Dotnet9.Service

  1. Dotnet9.Commons: Utility library
  2. Dotnet9.Contracts: Temporarily holds Dto classes
  3. Dotnet9.RazorPages: Frontend main project, gradually improving
  4. Dotnet9.Service: Backend main project, temporarily placing various layered files in one project; split into libraries if needed
  5. Dotnet9.Admin: Backend frontend, to be determined

Once the website development is complete, I plan to write a series of tutorials on the Dotnet9 frontend and backend development—either this year or next year...

That's all for this article. Off to travel...

Technical Exchange

  • WeChat public account: Dotnet9
  • WeChat technical exchange group: Add WeChat (codewf) with note "join group"
  • QQ technical exchange group: 771992300.

Keep Exploring

Related Reading

More Articles
Same category / Same tag 9/15/2022

EF Core 7 RC1 Released

Entity Framework Core 7 (EF7) Release Candidate 1 has been released! The team focused on fixing bugs, minor improvements, and final polish on features.

Continue Reading
Same category / Same tag 10/14/2024

From Failure to Success: How to Delete SQLite Database File in C#

SQLite, as a lightweight embedded database, is popular for its ease of use and deployment. However, when trying to delete an SQLite database file, developers may encounter some challenges. This article will share a case from failure to success, demonstrating how to successfully delete an SQLite database file in C#.

Continue Reading