.NET Project Templates

ServiceStack has its strong foundations as a Web and MQ Services framework whose easy and versatile HTML support makes it the ideal services framework to create Backend Systems and Web APIs, Websites, Single Page Apps, Windows Services, Self-Hosting Console Apps and Rich OSX and Winforms Desktop Apps.

x new

All ServiceStack Project Templates can be found and installed using the x new .NET Core tool that can be installed with:

dotnet tool install --global x

Update

Or if you had a previous version installed, update with:

dotnet tool update -g x

Explore available templates

Then run x new to view the list of available project templates:

x new

Where it will display all repositories in .NET Core, .NET Framework and ASP.NET Core Framework GitHub Orgs:

.NET Core C# Templates
angular-spa .NET 8 Angular 15 App with Bootstrap
blazor .NET 8 Blazor Tailwind App Template
blazor-vue .NET 8 Blazor Static Rendered Vue interactivity App with Tailwind
blazor-wasm .NET 8 Blazor WASM App with Bootstrap
empty .NET 8 Empty Single Project App
grpc .NET 8 gRPC Services
mvc .NET 8 MVC Identity Auth App with Tailwind
mvc-bootstrap .NET 8 MVC Identity Auth App with Bootstrap
mvcauth .NET 8 MVC App with ServiceStack Auth and Bootstrap
mvcidentityserver .NET 8 MVC App with ServiceStack and IdentityServer4 Auth
nextjs .NET 8 Jamstack Next.js SSG React App with Tailwind
razor .NET 8 Razor Pages App with Tailwind
razor-bootstrap .NET 8 Razor Pages Identity Auth App with Bootstrap
razor-pages .NET 8 Razor Pages App with ServiceStack Auth and Bootstrap
razor-press .NET 8 Statically Generated, CDN hostable Razor Pages Documentation
razor-ssg .NET 8 Statically Generated, CDN hostable Razor Pages Website
react-spa .NET 8 React Create App with Bootstrap
script .NET 8 #Script Pages App with Bootstrap
selfhost .NET 8 self-hosting Console App
svelte-spa .NET 8 Svelte v3 Rollup App with Bootstrap
vue-desktop .NET 8 Chromium Vue Desktop App
vue-mjs .NET 8 Simple, Modern Vue ServiceStack Auth App with Tailwind
vue-nuxt .NET 8 Nuxt.js SPA App with Bootstrap
vue-spa .NET 8 Vue App with Bootstrap
vue-ssg .NET 8 Jamstack Vue SSG App with Tailwind
vue-vite .NET 8 Jamstack Vue Vite App with Tailwind
web .NET 8 Empty App
web-tailwind .NET 8 Empty App with Tailwind
worker-rabbitmq .NET 8 Rabbit MQ Worker Service
worker-redismq .NET 8 Redis MQ Worker Service
worker-servicebus .NET 8 Azure Service Bus MQ Worker Service
worker-sqs .NET 8 AWS SQS MQ Worker Service

 

ASP.NET Core Framework Templates
web-corefx .NET Framework ASP.NET Core Website
empty-corefx .NET Framework ASP.NET Core Single Project Website
vue-lite-corefx .NET Framework ASP.NET Core lite (npm-free) Vue SPA using TypeScript
react-lite-corefx .NET Framework ASP.NET Core lite (npm-free) React SPA using TypeScript
script-corefx .NET Framework ASP.NET Core #Script Pages Bootstrap Website
razor-corefx .NET Framework ASP.NET Core Website with ServiceStack.Razor
mvc-corefx .NET Framework ASP.NET Core MVC Website
selfhost-corefx .NET Framework ASP.NET Core self-hosting Console App

 

.NET Framework C# Templates
angular-lite-spa-netfx .NET Framework Angular 4 Material Design Lite Webpack App
angular-spa-netfx .NET Framework Angular Bootstrap cli.angular.io App
aurelia-spa-netfx .NET Framework Aurelia Bootstrap Webpack App
mvc-netfx .NET Framework MVC Website
razor-netfx .NET Framework Website with ServiceStack.Razor
react-desktop-apps-netfx .NET Framework React Desktop Apps
react-spa-netfx .NET Framework React Bootstrap Webpack App
selfhost-netfx .NET Framework self-hosting HttpListener Console App
script-netfx .NET Framework #Script Pages Bootstrap WebApp
vue-nuxt-netfx .NET Framework Vue Nuxt.js SPA Web App
vue-spa-netfx .NET Framework Vue Bootstrap Webpack App
vuetify-nuxt-netfx .NET Framework Vuetify Material Nuxt.js SPA Web App
vuetify-spa-netfx .NET Framework Vuetify Material Webpack App
web-netfx .NET Framework Empty Website
winservice-netfx .NET Framework Windows Service

Usage

$ x new `<template>` `<name>`

For example to create a new Vue Single Page App, run:

x new vue-spa ProjectName

Alternatively you can write new project files directly into an empty repository using the Directory Name as the ProjectName:

$ git clone https://github.com/<User>/<ProjectName>.git
$ cd <ProjectName>
$ x new vue-spa

Or download a customized project template from our Getting Started Page:

Available Project Templates

ServiceStack is available in a number of popular starting configurations below:

Jamstack

Jamstack (JavaScript, APIs, and Markup) is a modern architecture pattern to build fast, secure and easy to scale web applications where pre-rendering content, enhancing with JavaScript and leveraging CDN static hosting results in a highly productive, flexible and performant system that takes advantage of CDN edge caches to deliver greater performance & efficiency at lower cost.

Jamstack Benefits

It's quickly becoming the preferred architecture for modern web apps with benefits extending beyond performance to improved:

  • Security from a reduced attack surface from hosting read-only static resources and requiring fewer App Servers
  • Scale with non-essential load removed from App Servers to CDN's architecture capable of incredible scale & load capacity
  • Maintainability resulting from reduced hosting complexity and the clean decoupling of UI and server logic
  • Portability with your static UI assets being easily capable from being deployed and generically hosted from any CDN or web server
  • Developer Experience with major JavaScript Frameworks embracing Jamstack in their dev model, libraries & tooling

Ultimately, it's hosting your App's pre-rendered static UI assets on Content Delivery Network (CDN) edge caches close to users locations that's primarily responsible for its lightning performance.

Download new C# Jamstack Project Template

INFO

An updated list of available Jamstack project templates is also at https://jamstacks.net (built with Razor SSG)

Blazor WebAssembly

The Blazor WebAssembly (WASM) template offers a pure end-to-end integrated C# solution to building a high performance web application with Blazor and ServiceStack. Due to the integrated dev model we've been able to achieve in Blazor it's become our preferred technology to use to develop Line of Business Apps since it's the only C# Razor solution adopting our preferred API First Development model with Web UIs reusing the same well-defined APIs as Mobile and Desktop Apps.

Razor SSG

The razor-ssg ServiceStack template leverages the power of .NET Razor to provide seamless static site generation (SSG) capabilities. It's perfect for building content-rich applications like product websites, blogs, portfolios, and more.

This template streamlines the development process while offering versatility in customizing and extending your project. With GitHub Codespaces integration, you can develop, test, and manage your application all within your browser, eliminating the need for a dedicated development environment and expediting your workflow.

Next.js

For those preferring working with React, there's a clear choice in Nextjs.org - currently the flagship & most popular Jamstack framework backed by the folks over at Vercel, where it enjoys deep engineering talent committed to maintaining and continually improving it, so you can be confident in the longevity of the technology and the React framework maintained by Meta (Facebook).

Vite

Vite is being built for speed in the modern era and takes advantage of modern browser features like native ES modules support to remove bundling entirely during development and adopts performance leading technologies like esbuild to pre-bundle dependencies and transpile TypeScript which is able to do 20-30x faster than TypeScript's own tsc compiler.

Ultimately its architectural choices allows Vite to deliver Lightning Fast Hot Module Reload (HMR) to remain at the developer-experience forefront of modern web development serving a growing ecosystem of frameworks with a rich typed suite of Universal Plugins.

Webpack-powered Single Page App Templates

All ServiceStack Single Page App templates are powered by Webpack which handles the development, testing and production builds of your Web App. See the Webpack Template Docs for an overview for how to utilize the templates features.

Vue SPA Template

YouTube: https://youtu.be/4HphWPrKwb0

AWS Lambda Template

This project lets you create a .NET 6 empty ServiceStack web project ready for deployment as a AWS Lambda Function wired with API GateWay and packaged via a Docker image.

YouTube: https://youtu.be/8mpGNTsSlvE

Website Templates

Website Templates contain popular starting Templates for creating Server HTML Generated Websites and HTTP APIs with ServiceStack.

Empty Starting Templates

Empty Web and Self Hosting Console and Windows Service Templates.

ASP.NET Core Web Apps on .NET Framework

Popular starting templates for creating ASP.NET Core templates on the .NET Framework.

Desktop Templates

Desktop Templates for packaging your ServiceStack Web App into different Native Desktop UIs.

ServiceStackVS VS.NET Extension

ServiceStackVS supports Visual Studio 2019-2022 and can be installed from within VS.NET:

Install ServiceStackVS

Install the ServiceStackVS VS.NET Extension by going to Tools > Extensions and Updates...

Then searching the Visual Studio Gallery for ServiceStack

Optionally it can be downloaded and installed from the VS.NET Gallery

VS.NET Gallery Download

INFO

For older versions, see the install ServiceStackVS page for more options.

Example Projects

The Example projects below contain a working demo including further documentation about each of their templates they were built with:

TypeScript React Template

TypeScript React Template incorporates today's best-in-class technologies for developing rich, complex JavaScript Apps within VS.NET and encapsulated within ServiceStack's new TypeScript React Template providing an instant integrated client and .NET server solution where you'll be immediately productive out-of-the-box whilst enabling an optimal iterative development experience with pre-configured Gulp tasks that takes care of effortlessly packaging, bundling and deploying your next App.

React Desktop Apps

React Desktop Apps take advantage of the adaptability, navigation and deep-linking benefits of a Web-based UI, the productivity and responsiveness of the React framework, the performance, rich features and functionality contained in ServiceStack and the .NET Framework combined with the native experience and OS Integration possible from a Native Desktop App - all within a single VS .NET template!

React App Template

The ReactJS App Template enables an optimal iterative dev experience for creating optimized Single Page React.js Apps. It shares the same approach for developing modern Single Page Apps in VS.NET as the AngularJS App Template by leveraging the node.js ecosystem for managing all aspects of Client App development and using the best-in-class libraries.

AngularJS App Template

The AngularJS App template in ServiceStackVS provides a modern opinionated web technology stack for developing rich Single Page Apps with AngularJS and ServiceStack.

Integrated HTML, CSS and JavaScript Minifiers

For normal server-generated websites that don't leverage Webpack to bundle their outputs you can take advantage of ServiceStack's integrated and non-invasive minification features to effortlessly enable HTML, CSS and JavaScript minification to your existing Website.

Community Resources

Example Single Page App Projects