fluffyspoon.template

Build status NuGet

FluffySpoon is a set of microservices using .NET Core 3+ and Microsoft Orleans 3+ for demo purposes. This project includes the base template to create a basic service using these technologies.

For more information about dotnet new templates see here.

Installation

Use the NuGet package identifier to install a template package.

dotnet new -i fluffyspoon.template

Once installed, all available templates, including the fluffyspoon ones will be listed:

Templates                                      Short Name               Language          Tags
-----------------------------------------------------------------------------------------------------------
Console Application                            console                  [C#], F#, VB      Common/Console
Class library                                  classlib                 [C#], F#, VB      Common/Library
WPF Application                                wpf                      [C#], VB          Common/WPF
WPF Class library                              wpflib                   [C#], VB          Common/WPF
WPF Custom Control Library                     wpfcustomcontrollib      [C#], VB          Common/WPF
WPF User Control Library                       wpfusercontrollib        [C#], VB          Common/WPF
Windows Forms (WinForms) Application           winforms                 [C#], VB          Common/WinForms
Windows Forms (WinForms) Class library         winformslib              [C#], VB          Common/WinForms
Worker Service                                 worker                   [C#]              Common/Worker/Web
FluffySpoon Orleans Silo                       fs-silo                  [C#]              Solution/Project/Orleans/Silo
Unit Test Project                              mstest                   [C#], F#, VB      Test/MSTest

To apply an update to previously installed templates, use this command:

dotnet new --update-apply

If you need to set back your dotnet new list to "factory defaults", use this command:

dotnet new --debug:reinit

Usage

To create a solution using the template, use this command:

dotnet new fs-silo -n fluffyspoon.email --short-name email

Sample Services

All the below services are based on this microservice template!

To run all the services together:

# Download source code
git clone https://github.com/cdemi/fluffy-spoon.git
git clone https://github.com/cdemi/fluffy-spoon-profile.git
git clone https://github.com/cdemi/fluffy-spoon-userverification.git
git clone https://github.com/cdemi/fluffy-spoon-email.git

# Build docker images
docker-compose -f fluffy-spoon/docker/docker-compose.yml build
docker-compose -f fluffy-spoon-profile/docker/docker-compose.yml build
docker-compose -f fluffy-spoon-userverification/docker/docker-compose.yml build
docker-compose -f fluffy-spoon-email/docker/docker-compose.yml build

# Run Containers
docker-compose -f fluffy-spoon/docker/docker-compose.yml \
 -f fluffy-spoon-profile/docker/docker-compose.yml \
 -f fluffy-spoon-userverification/docker/docker-compose.yml \
 -f fluffy-spoon-email/docker/docker-compose.yml up