Project structure


bit project templates provide an initial source code structure for all types of applications.

The Visual Studio Solution
The VS solution prepared by the bit project templates has 6 Projects.
Boilerplate solution
.SolutionItems
To simplify access to files such as .gitignore, we've added them to visual studio solution folder named .SolutionItems.

In src/Directory.Build.props file, there are settings such as enabling or disabling multilingualism, enabling or disabling Pwa, etc. In the subsequent sections of the Documentation, you will become more familiar with this file.

In addition, the DevOps CI/CD files, along with the global.json which specifies which version of the dotnet sdk should be installed on your system, are included in this solution folder.
Server
This project contains server-side codes including Controllers, efcore DbContext, models, asp.net core identity related classes, etc.
Shared
This project is shared with both the server and client(Web & Maui projects) sides.
It contains resx files, Dto classes, shared services contracts and implementations, etc.
Client.Core
This project includes components and pages made with the help of razor, scss and csharp. These pages and components are shared between maui app (for mobile/desktop) and web projects.
Client.Web
This project contains the necessary code to build web version of the app.
Client.Maui
This project contains the necessary code to built mobile/desktop versions of the app.
Note: The Maui project can take a long time to build. To speed up the build process, we recommend unloading the Maui project unless you need to test the mobile or desktop version of the app. Most of the application logic and UI is shared between the Maui project and the Web project. Therefore, we encourage you to develop and test the Web project first, and then test the Maui project. To unload the Maui project, right-click on the Maui project in Solution Explorer, then select Unload Project.
Iac
Infrastructure as Code (IaC) is the managing and provisioning of infrastructure through code instead of through manual processes. This project contains the necessary code to provide this feature. You don't have to use either Pulumi or even Azure, Host your project wherever you want!