Skip to content
Introducing the next era of Duende IdentityServer. Read our CEO’s announcement

Duende IdentityServer Samples

We have a collection of runnable samples that show how to use IdentityServer and configure client applications in a variety of scenarios.

The source code for the samples is in our GitHub repository.

Most of the samples include both their own IdentityServer implementation and the clients and APIs needed to demonstrate the illustrated functionality. The Basics samples use a shared IdentityServer implementation. Some samples use our public demo instance of IdentityServer.

To simplify local development, many samples include an Aspire host project. This eliminates the need to run or debug individual projects manually, and provides a better experience running the samples.

  • Launching the AppHost project makes sure all projects are started in the correct order
  • Relevant projects reference the Aspire.ServiceDefaults project, which automatically configures health endpoints and telemetry for the Aspire dashboard.
  • If a sample includes a database, you can use the database icon directly inside the Aspire dashboard to create the database and run migrations.

These samples use Central Package Management. While individual project files still reference NuGet packages, they do not contain version numbers. Instead, dependency versions are managed in two places:

  • NuGet Packages: Managed via the Directory.Packages.props file located in each IdentityServer and BFF version directory.
  • Aspire SDK: Centrally defined in the global.json file at the repository root.

You can join the Duende developer community if you are looking for a particular sample and can’t find it here.