Skip to content

About

Aspire integrations for Chroma and Chroma Cloud, built on ChromaDB.Client.

Topics

Resources

Security policy

Stars

3 stars

Watchers

0 watching

Forks

Repository files navigation

ChromaDotNet

ChromaDB.Aspire

Aspire integrations for Chroma:

Package Use
ChromaDotNet.Aspire.Hosting AppHost: AddChroma, WithDataVolume, WithDataBindMount. Image chromadb/chroma:1.5.9, health check on /api/v2/heartbeat.
ChromaDotNet.Aspire.Client Service: AddChromaClient, AddKeyedChromaClient, with ChromaDB.Client, a health check, traces and metrics. Connects to a Chroma server or to Chroma Cloud (Endpoint=https://api.trychroma.com;Token=...;Tenant=...;Database=...).
// AppHost
var chroma = builder.AddChroma("chroma").WithDataVolume();
builder.AddProject<Projects.ApiService>("api").WithReference(chroma).WaitFor(chroma);

// Service
builder.AddChromaClient("chroma");

Website: chromadotnet.org

Why this repository

The code is the Chroma integration accepted in the Aspire Community Toolkit with CommunityToolkit/Aspire#2219, which continues #1132 by ali-Hamza817. This repository publishes it until the toolkit ships CommunityToolkit.Aspire.Hosting.Chroma and CommunityToolkit.Aspire.Chroma. Then this repository will be archived, and the packages deprecated in favor of those. The assemblies, namespaces and API are the same as in the toolkit, so moving changes only the package references.

Every change to the integrations goes first into the toolkit. eng/sync-from-toolkit.sh then copies the Chroma folders (src, tests, examples/chromadb) here. So the README.md in each src folder is the toolkit's, with its package ids, and the READMEs of the ChromaDotNet.Aspire packages are in docs/packages.

The build and test files come from CommunityToolkit/Aspire, adapted to publish the ChromaDotNet.Aspire packages. docs/packages, the CI and eng belong to this repository.

This is a community project. It is not affiliated with or endorsed by Chroma.

Building and testing

dotnet build ChromaDB.Aspire.slnx
dotnet test --project tests/CommunityToolkit.Aspire.Chroma.Tests
dotnet test --project tests/CommunityToolkit.Aspire.Hosting.Chroma.Tests

The hosting tests start Chroma in Docker. The TypeScript AppHost test also needs the Aspire CLI, Node.js and PowerShell.

License

MIT, as CommunityToolkit/Aspire: see LICENSE.

About

Aspire integrations for Chroma and Chroma Cloud, built on ChromaDB.Client.

Topics

Resources

Security policy

Stars

3 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages