Skip to content

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Repository files navigation

platform-examples

Standalone, runnable example applications for the ChilliCream platform products (currently Mocha and Hot Chocolate). Examples live here instead of in the main graphql-platform repository so they can be built, run, and versioned independently of the product source and its release cadence.

Layout

examples/<Product>/<Name>/

Each product gets one top-level folder under examples/, and each example gets its own folder inside it. For example:

examples/Mocha/Demo/
examples/Mocha/PostgresTransport/
examples/Mocha/AotExample/
examples/Mocha/ExceptionPolicies/
examples/HotChocolate/DataLoaderExplained/
examples/HotChocolate/GreenDonutData/
examples/HotChocolate/LayeredDataLoader/
examples/HotChocolate/RelativeCursors/
examples/HotChocolate/ConnectionAggregations/
examples/HotChocolate/EfCoreProjections/
examples/HotChocolate/StatefulDataLoader/
examples/Architecture/Bookshop/

examples/HotChocolate/ contains the source code of the ChilliCream TV episodes. Each example pins the Hot Chocolate version used in its episode through its own Directory.Packages.props, so the code matches the video.

examples/Architecture/ contains cross-product architecture examples. Bookshop demonstrates clean architecture and DDD with HotChocolate, GreenDonut, Mocha.Mediator, and EF Core.

Solution files

Each product has its own solution file at examples/<Product>/<Product>.Examples.slnx (for example examples/Mocha/Mocha.Examples.slnx), rather than a single root solution. Products are independent from a build and dependency standpoint, and a per-product solution keeps IDE load times and build scope proportional to the product you are actually working on as the repository grows to cover more products.

Repo conventions

  • Central package management: package versions are pinned in the root Directory.Packages.props (ManagePackageVersionsCentrally=true). Add new package versions there, not in individual project files.
  • Shared build settings: Directory.Build.props sets LangVersion, Nullable, and ImplicitUsings consistently with the graphql-platform conventions.
  • SDK version: global.json pins the .NET SDK to the same version used by graphql-platform, so examples build against the same toolchain as the products they demonstrate.

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors