GithubHelp home page GithubHelp logo

egvijayanand / winui-templates Goto Github PK

View Code? Open in Web Editor NEW
8.0 2.0 0.0 1.06 MB

WinUI 3 CLI Templates

Home Page: https://egvijayanand.in/

License: MIT License

Batchfile 21.92% C# 33.85% HTML 24.53% CSS 19.71%
cli desktop library template windows winui winui3 client msix windows-app-sdk

winui-templates's Introduction

CLI Project and Item Templates for developing WinUI 3 based Windows Desktop Apps

Join me on Developer Thoughts, an exclusive blog for .NET MAUI and Blazor.

Package Status:

Channel Version
Stable VijayAnand.WinUITemplates - NuGet Package
Item Template Name Type
WinUI 3 App winui Project
WinUI 3 Blazor App winui-blazor Project
WinUI 3 Class Library winuilib Project
WinUI 3 Page winui-page Item
WinUI 3 UserControl winui-usercontrol Item
WinUI 3 Window winui-window Item

All three project templates takes the target framework as an input parameter, can be specified with --framework / -f.

And the supported values are:

  • net6.0
  • net7.0
  • net8.0 (the default value)
  • net9.0

Note: The default value for the framework parameter remains as net8.0 (the latest stable channel), which means to create a project for .NET 9 (the preview channel), an explicit value of net9.0 is to be passed.

All three project templates take the below optional parameter to include the officially supported CommunityToolkit.Mvvm NuGet package.

  • -imt | --include-mvvm-toolkit - Default value is false

Both the App project takes another optional parameter thus allowing it to be created as MVVM supported solution using the same Microsoft MVVM Toolkit.

  • -mvvm | --use-mvvm - Default value is false

Starting with v3.1.0, all three project templates take the below optional parameter support NuGet's Central Package Management (CPM) feature.

  • -cpm | --central-pkg-mgmt - Default value is false

Note: This can also be used in combination with other options.

To install the template NuGet package, use the below .NET CLI command:

Latest stable version:

dotnet new install VijayAnand.WinUITemplates

If you've already installed this package, then it can be updated to the latest version with the below command:

dotnet new update --check-only
dotnet new update

Use the below .NET CLI command to create the projects out these template:

WinUI 3 App:

dotnet new winui -n MyApp

.NET 7:

dotnet new winui -n MyApp -f net7.0

.NET 9 Preview:

dotnet new winui -n MyApp -f net9.0

MVVM based solution:

dotnet new winui -n MyApp -mvvm

Option to include only the MVVM NuGet package:

dotnet new winui -n MyApp -imt

Option to use the CPM feature:

dotnet new winui -n MyApp -cpm

Blazor Hybrid App:

dotnet new winui-blazor -n HybridApp

.NET 7:

dotnet new winui-blazor -n HybridApp -f net7.0

.NET 9 Preview:

dotnet new winui-blazor -n HybridApp -f net9.0

MVVM based solution:

dotnet new winui-blazor -n HybridApp -mvvm

Option to include only the MVVM NuGet package:

dotnet new winui-blazor -n HybridApp -imt

Option to use the CPM feature:

dotnet new winui-blazor -n HybridApp -cpm

Library:

dotnet new winuilib -n MyLib

.NET 7:

dotnet new winuilib -n MyLib -f net7.0

.NET 9 Preview:

dotnet new winuilib -n MyLib -f net9.0

Option to include only the MVVM NuGet package:

dotnet new winuilib -n MyLib -imt

Option to use the CPM feature:

dotnet new winuilib -n MyLib -cpm

Use the below .NET CLI command to create the items out these template:

All these item templates require one mandatory parameter:

  • -n | --name - Name of the item

Auto suffixing of the Type name is supported for the files created with the Page and Window item templates.

Page:

dotnet new winui-page -n Order

UserControl:

dotnet new winui-usercontrol -n CardView

Window:

dotnet new winui-window -n Home

winui-templates's People

Contributors

egvijayanand avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar

winui-templates's Issues

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.