Hot Chocolate, served hot
A source-generated Hot Chocolate schema with the Nitro IDE built in, and descriptions pulled from the XML comments on your models.
A Lean Mean Clean Apps template for .NET 10
A .NET 10 template that gives you a tested, layered GraphQL API on Hot Chocolate in two commands. Your clients ask for exactly what they need. Revolutionary.
dotnet new install CleanGraphQLApi.Templatedotnet new cleangraphqlapi --name Acme.Movies --authorName "Your Name"cd Acme.Movies && docker compose up -dThree layers, the tests, a Dockerfile and a CI pipeline. Go and tell your team you've been working on it all week.
Hot Chocolate, served hot
A source-generated Hot Chocolate schema with the Nitro IDE built in, and descriptions pulled from the XML comments on your models.
Paging done properly
Relay-style cursor paging and search on movies, authors and reviews, with a DataLoader so a page of 50 movies takes three queries, not 52.
Errors with manners
Validation lives in the Application layer with FluentValidation, and failures come back as GraphQL errors with proper codes in the extensions.
Tested like it matters
xUnit, Shouldly, a schema snapshot test and a 95% coverage gate. Every test gets its own throwaway SQLite database.
cd Acme.Moviesdocker compose up -dThen open Nitro, the GraphQL IDE, at http://localhost:8080/graphql and start querying. The logs go to Seq at http://localhost:5341, because Console.WriteLine is not an observability strategy.
Want it locked down? Pass --authority and --audience when you create the solution and the movie, author and review queries and the review mutations need a JWT bearer token. Leave them off and it runs wide open, which is lovely on a laptop and less lovely in production.
Clean GraphQL API is one of five Lean Mean Clean Apps templates. They share the same Application and Infrastructure layers, the same tests and the same pipeline. Only Presentation changes. Like a family, really. Same genes, different haircuts.
Each template gets the same ring logo in its own colour. The rings follow the Clean Architecture diagram, from the entities in the core out to the frameworks and drivers on the edge. GraphQL drew pink, which is only fitting for the one that lets clients pick and choose. The logos, colours and everything else live in the brand kit.