<- Back to Changelog
June 20, 2025SDKs

JavaScript Client V3

We just published a rewrite of our JavaScript/TypeScript client focused on decreasing bundle size and improving DX.

To install, use your package manager to update to the latest 3.* version of chromadb:

  • npm install chromadb@^3
  • pnpm add chromadb@^3
  • bun add chromadb@^3

Some changes to note:

  • The arguments for client initialization now match our Python client.
  • Chroma Cloud users can easily connect using the new CloudClient.
  • Embedding functions are no longer bundled, and must be individually installed. To use the default embedding function, install @chroma-core/default-embed.

Noteworthy improvements:

  • The new library has a much smaller bundle size.
  • It is now Deno compatible.
  • Easier to deploy on serverless providers like Vercel (Recommended to use with hosted embedding providers like OpenAI or Voyage AI instead of default embedding function).
  • The .rows() method on get and query results, returns an array of row-format records for easier iteration.
  • Pass a type argument to get and query operations to define the shape of your metadata and improve type inference.

For a full overview, check out this video:

Learn more on the Chroma Docs.

If you have any questions, problems, or feedback - open an issue on Github or email us at support@trychroma.com.