# Hot Chocolate: GraphQL Server for .NET

> Hot Chocolate is the GraphQL server for .NET: build type-safe APIs with C# schema authoring, DataLoader, subscriptions, security, OpenTelemetry, and Fusion.

Canonical source: https://chillicream.com/products/hotchocolate

GraphQL Server for .NET

The fastest way to build production GraphQL APIs in .NET. Type-safe end to end, federation-ready, and battle-tested at scale.

[Build Your First GraphQL API](https://chillicream.com/docs/hotchocolate/get-started-with-graphql-in-net-core) [View on GitHub](https://github.com/ChilliCream/graphql-platform)

## Built for Production

### C# Schema Authoring

Define the schema from your C# implementation or use fluent descriptors when you need precise control. Mix both approaches in the same app.

### DataLoader Batching

Batch and cache related data fetches to reduce backend requests and address N+1 query patterns.

### Realtime Subscriptions

Serve GraphQL over HTTP and deliver real-time results over WebSockets or Server-Sent Events from ASP.NET Core.

### OpenTelemetry Built In

Emit GraphQL request, resolver, and DataLoader spans through the built-in OpenTelemetry integration.

### Cost Analysis and Trusted Documents

Set operation cost budgets for open APIs or limit first-party apps to pre-registered documents.

### Federation-ready

Start with one Hot Chocolate server, then compose services behind Fusion when teams need independent ownership and deployment.

## MIT Licensed, Free to Use

Use, modify, and distribute Hot Chocolate in commercial or private projects under the terms of the MIT license. The source is available in the ChilliCream GraphQL Platform repository.

[Add a Type-Safe .NET Client](https://chillicream.com/products/strawberryshake) [Scale Out with Fusion](https://chillicream.com/docs/fusion)
