Skip to main content

Packages and namespaces

Each library uses the same name for its NuGet package, assembly, project, and root namespace. For example, install Respire.Search, reference Respire.Search.dll, and import Respire.Search. All libraries use the Respire product prefix, including APIs for Redis features.

Choose a package​

Package, assembly, and root namespacePurpose
RespireCore RESP client, commands, connections, serialization, and built-in compression abstractions
Respire.JsonRedis JSON documents
Respire.SearchRedis Search, indexing, aggregation, and vector queries
Respire.TimeSeriesRedis time series
Respire.ProbabilisticBloom, Cuckoo, Count-Min Sketch, Top-K, and t-digest
Respire.AwsAWS IAM credentials for ElastiCache and MemoryDB
Respire.AzureMicrosoft Entra credentials for Azure Managed Redis
Respire.CachingIDistributedCache and IBufferDistributedCache integration
Respire.Caching.HybridRedis-backed L2 storage for HybridCache
Respire.FusionCacheFusionCache backplane sharing an existing Respire client
Respire.CoordinationDistributed coordination primitives
Respire.DependencyInjection.NET dependency injection registration
Respire.Compression.Lz4Optional LZ4 value codec
Respire.Compression.ZstdOptional Zstandard value codec
Respire.TestingIn-memory RESP test server
Respire.Testing.ContainersRedis and Valkey container fixtures

Respire.Analyzers also has matching assembly and namespace names. It ships inside the core Respire package rather than as a separate NuGet package. Tests, samples, benchmarks, and pipeline projects are not published libraries.

Core APIs may use subnamespaces such as Respire.Serialization and Respire.Compression; a subnamespace does not imply a separate package. Import Respire.Compression.Lz4 or Respire.Compression.Zstd for the optional codecs, and Respire.Compression for their shared options and abstractions.

Redis features and custom modules​

Redis Open Source 8 includes JSON, Search, time series, and probabilistic data types. Their client APIs remain optional packages so applications only take the dependencies they use. Earlier Redis deployments need the corresponding modules or Redis Stack. Other RESP-compatible servers may implement only some of these commands.

Reserve Respire.Extensions.<ModuleName> for client support for custom, separately installed Redis modules. None of the current packages belongs to this category. .NET integrations, cloud credentials, and client utilities use their feature names directly. C# extension methods alone do not make a package a Redis extension.

Installing a NuGet package does not install or enable a server feature. Check the target server's command support. Custom commands can use the raw command API or command generator.

Updating existing references​

This naming cleanup changes public namespaces and assembly identities. Rebuild consuming applications and libraries together.

  • Replace Respire.Extensions. with Respire. in package references, project paths, and using directives for the existing packages listed above.
  • JSON, Search, TimeSeries, and Probabilistic already use the short NuGet IDs; their package references stay the same.
  • Replace using Redis.Search; with using Respire.Search;.
  • Import Respire.Compression.Lz4 for Lz4ValueCodec and Respire.Compression.Zstd for ZstdValueCodec.
  • Update assembly-qualified type names, reflection configuration, and explicit DLL references. Do not mix old and renamed packages in one dependency graph.

The naming follows .NET assembly naming guidance: use the product name and the common namespace prefix for the assembly.