This is a mobile app project template using Uno Platform and the latest .NET practices.
- It uses the MVVM pattern.
- Code is organized by application layer.
- It comes with dependency injection.
- There are built-in logs and diagnostics tools.
- There is scaffolding code showing sample features. When you run as-is, you get a Dad Jokes application.
We use dotnet
project templates to easily create new projects. It simplifies the project renaming and supports conditional inclusions.
-
In order to install the template, clone this repository on your machine, open a command prompt at its root and run the following command.
- dotnet 7 and up:
dotnet new install ./
- older dotnet version:
dotnet new -i ./
This will display a list of installed templates, look for this template and copy the command with the absolute path like this.
- dotnet 7 and up:
dotnet new list
- older dotnet version:
dotnet new --list
- dotnet 7 and up:
-
To run the template and create a new project, run the following command in the root folder that will contain the new project.
dotnet new nv-mobile -n MyProjectName
The following options are available when running the command.
- To get help:
dotnet new nv-mobile -h
- To get help:
Read this for more information on custom templates.
-
If you want to uninstall the template, open a command prompt at its root and run the following command.
- dotnet 7 and up:
dotnet new uninstall ./
- older dotnet version:
dotnet new -u ./
- dotnet 7 and up:
This template largely relies on Uno Platform, if you want to make sure you got everything installed correctly on your machine, we encourage you to use uno-check
, the documentation is available here
In addition to that, Visual Studio 2022 is required since C# 10 is used.
This repository provides documentation on different topics under the doc folder.
- Architecture
- Dependency Injection
- Configuration
- HTTP
- Logging
- Diagnostics
- Platform specifics
- Serialization
- Startup
- Testing
- Environments
- Localization
- Validation
- Error handling
- Scheduling
Please consult the CHANGELOG for more information about the version history.
This project is licensed under the Apache 2.0 license. See the LICENSE for details.
Please read CONTRIBUTING for details on the process for contributing to this project.
Be mindful of our Code of Conduct.