Skip to content

bhtz/microscope-boilerplate

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 

Repository files navigation

Microscope Boilerplate

An opiniated started kit for product engineering teams

Documentation

Requirements

  • dotnet 9 SDK
  • nodejs 20+
  • docker engine

Templates

  • mcsp_bff
  • mcsp_service
  • mcsp_desktop
  • mcsp_cli
  • mcsp_doc
  • mcsp_dab

mcsp_service

Vertical slice architecture & modular monolith

documentation

  • ✅ REST
  • ✅ GRPC
  • ✅ GRAPHQL
  • ✅ Vertical slices architecture
  • ✅ IAM
  • ✅ Postgres database
  • ✅ OpenTelemetry
  • ✅ Aspire
  • ✅ Docker
  • ✅ EFcore
  • ✅ MartenDB
  • ✅ Feature management

mcsp_bff

Blazor frontend + BFF pattern

documentation

  • ✅ Material UI | Fluent UI
  • ✅ Custom endpoint (Rest / GraphQL)
  • ✅ Server side rendering (Blazor)
  • ✅ OIDC / Cookie authentication (Keycloak)
  • ✅ Proxying API (Yarp)
  • ✅ GraphQL gateway (HotChocolate)
  • ✅ Auto generated SDK (StrawberryShake)
  • ✅ Light / Dark mode
  • ✅ I18N
  • ✅ Feature management
  • ✅ Docker
  • ✅ Aspire

mcsp_doc

Documentation as code web application

documentation

  • ✅ web app
  • ✅ vitepress
  • ✅ markdown & mermaid
  • ✅ templates (#product, #ADR, #PRD, #guidelines, ...)
  • ✅ opiniated guidelines

mcsp_cli

Console app with CLI & UI

documentation

  • ✅ Cocona CLI
  • ✅ Spectre.Console UI
  • ✅ Commands folder & sample

mcsp_desktop

Cross platform desktop app

documentation

  • ✅ Avalonia
  • ✅ material ui & icons
  • ✅ CommunityToolkit.MVVM

Get source code

git clone https://github.com/bhtz/microscope-boilerplate.git

Templates

Install & uninstall microscope dotnet templates

cd microscope-boilerplate/templates
dotnet pack
dotnet new install ./bin/Release/Microscope.Boilerplate.1.0.0.nupkg
dotnet new uninstall Microscope.Boilerplate

Create new Service solution

dotnet new mcsp_service -n Acme.AwesomeProject

Create new BFF/Frontend solution

dotnet new mcsp_bff -n Acme.AwesomeProject -C

Create new CLI project

dotnet new mcsp_cli -n Acme.CLI

Create new Documentation as code project

dotnet new mcsp_doc -n Acme.Doc

CLI

Install & uninstall microscope CLI (as dotnet tool)

cd microscope-boilerplate/tool
dotnet pack
dotnet tool install --global --add-source ./nupkg Microscope.Boilerplate.Tool.CLI
dotnet tool uninstall --global  Microscope.Boilerplate.Tool.CLI

Install templates

Will install Aspire, Hotchocolate templates & Aspire CLI

microscope install

Use CLI

microscope