{"id":21022666,"url":"https://github.com/ubos-tech/node-red-contrib-chromadb","last_synced_at":"2026-03-08T04:32:45.366Z","repository":{"id":206392060,"uuid":"715465017","full_name":"UBOS-tech/node-red-contrib-chromadb","owner":"UBOS-tech","description":"Chroma is the open-source embedding database","archived":false,"fork":false,"pushed_at":"2023-11-09T11:00:03.000Z","size":28,"stargazers_count":4,"open_issues_count":1,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-09-26T12:55:48.557Z","etag":null,"topics":["chromadb","database","embedding","embedding-vectors","llms","node-red","node-red-contrib","node-red-flow","ubos-tech","vector","vectordb"],"latest_commit_sha":null,"homepage":"","language":"HTML","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/UBOS-tech.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null}},"created_at":"2023-11-07T07:42:53.000Z","updated_at":"2024-03-11T11:00:53.000Z","dependencies_parsed_at":"2023-11-09T12:54:22.517Z","dependency_job_id":null,"html_url":"https://github.com/UBOS-tech/node-red-contrib-chromadb","commit_stats":null,"previous_names":["ubos-tech/node-red-contrib-chromadb"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/UBOS-tech/node-red-contrib-chromadb","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/UBOS-tech%2Fnode-red-contrib-chromadb","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/UBOS-tech%2Fnode-red-contrib-chromadb/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/UBOS-tech%2Fnode-red-contrib-chromadb/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/UBOS-tech%2Fnode-red-contrib-chromadb/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/UBOS-tech","download_url":"https://codeload.github.com/UBOS-tech/node-red-contrib-chromadb/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/UBOS-tech%2Fnode-red-contrib-chromadb/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":30245247,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-03-08T00:58:18.660Z","status":"online","status_checked_at":"2026-03-08T02:00:06.215Z","response_time":56,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["chromadb","database","embedding","embedding-vectors","llms","node-red","node-red-contrib","node-red-flow","ubos-tech","vector","vectordb"],"created_at":"2024-11-19T11:13:19.497Z","updated_at":"2026-03-08T04:32:45.285Z","avatar_url":"https://github.com/UBOS-tech.png","language":"HTML","funding_links":[],"categories":[],"sub_categories":[],"readme":"# node-red-contrib-chromadb\n\n**Chroma is the open-source embedding database.** Chroma makes it easy to build LLM apps by making knowledge, facts, and skills pluggable for LLMs.\n\n\u003cp align=\"center\"\u003e\n  \u003cimg width=\"50%\" align=\"center\" alt=\"Ubos - End-to-End Software Development Platform\" src=\"https://ubos.tech/wp-content/uploads/2023/03/cropped-Group-21015-1.png\"\u003e\n\u003c/p\u003e\n\n\u003ch3 align=\"center\"\u003e\n  \u003cb\u003e\u003ca href=\"https://ubos.tech/\"\u003eUBOS\u003c/a\u003e\u003c/b\u003e\n  •\n  \u003ca href=\"https://community.ubos.tech/\"\u003eCommunity\u003c/a\u003e\n  •\n  \u003ca href=\"https://www.youtube.com/@ubos_tech\"\u003eYoutube\u003c/a\u003e\n  •\n  \u003ca href=\"https://discord.com/invite/dt59QaptH2\"\u003eDiscord\u003c/a\u003e\n  •\n  \u003ca href=\"https://github.com/UBOS-tech\"\u003eGitHub\u003c/a\u003e\n\u003c/h3\u003e\n\n\u003cdiv align=\"center\"\u003e\n \n[![flow](https://img.shields.io/badge/platform-Node--RED-red)](https://flows.nodered.org/node/node-red-contrib-chromadb)\n[![npm](https://img.shields.io/npm/v/node-red-contrib-chromadb)](https://www.npmjs.com/package/node-red-contrib-chromadb)\n \n\u003c/div\u003e\n\n\u003chr\u003e\n\n## Install\n\n```\ncd ~/.node-red\nnpm install node-red-contrib-chromadb\n```\n\nRestart your Node-RED instance.\n\n\u003chr\u003e\n\n## Methods Client\n\n### createCollection ([more details](https://docs.trychroma.com/js_reference/Client#createcollection))\n\n▸ **createCollection**(`params`): `Promise`\u003c`Collection`\\\u003e\n\nCreates a new collection with the specified properties.\n\n**`Throws`**\n\nIf there is an issue creating the collection.\n\n**`Example`**\n\n```js\nmsg.collection = \"my_collection\";\nmsg.payload = {\n    metadata: {\n        description: \"My first collection\"\n    }\n};\n\nreturn msg;\n```\n\n#### Parameters\n\n| Name | Type | Description |\n| :------ | :------ | :------ |\n| `params` | `Object` | The parameters for creating a new collection. |\n| `params.embeddingFunction?` | `IEmbeddingFunction` | Optional custom embedding function for the collection. |\n| `params.metadata?` | `CollectionMetadata` | Optional metadata associated with the collection. |\n| `params.name` | `string` | The name of the collection. |\n\n#### Returns\n\n`Promise`\u003c`Collection`\\\u003e\n\nA promise that resolves to the created collection.\n\n___\n\n### deleteCollection ([more details](https://docs.trychroma.com/js_reference/Client#deletecollection))\n\n▸ **deleteCollection**(`params`): `Promise`\u003c`void`\\\u003e\n\nDeletes a collection with the specified name.\n\n**`Throws`**\n\nIf there is an issue deleting the collection.\n\n**`Example`**\n\n```js\nmsg.collection = \"my_collection\";\nmsg.payload = {};\n\nreturn msg;\n```\n\n#### Parameters\n\n| Name | Type | Description |\n| :------ | :------ | :------ |\n| `params` | `Object` | The parameters for deleting a collection. |\n| `params.name` | `string` | The name of the collection. |\n\n#### Returns\n\n`Promise`\u003c`void`\\\u003e\n\nA promise that resolves when the collection is deleted.\n\n___\n\n### getCollection ([more details](https://docs.trychroma.com/js_reference/Client#getcollection))\n\n▸ **getCollection**(`params`): `Promise`\u003c`Collection`\\\u003e\n\nGets a collection with the specified name.\n\n**`Throws`**\n\nIf there is an issue getting the collection.\n\n**`Example`**\n\n```js\nmsg.collection = \"my_collection\";\nmsg.payload = {};\n\nreturn msg;\n```\n\n#### Parameters\n\n| Name | Type | Description |\n| :------ | :------ | :------ |\n| `params` | `Object` | The parameters for getting a collection. |\n| `params.embeddingFunction?` | `IEmbeddingFunction` | Optional custom embedding function for the collection. |\n| `params.name` | `string` | The name of the collection. |\n\n#### Returns\n\n`Promise`\u003c`Collection`\\\u003e\n\nA promise that resolves to the collection.\n\n___\n\n### getOrCreateCollection ([more details](https://docs.trychroma.com/js_reference/Client#getorcreatecollection))\n\n▸ **getOrCreateCollection**(`params`): `Promise`\u003c`Collection`\\\u003e\n\nGets or creates a collection with the specified properties.\n\n**`Throws`**\n\nIf there is an issue getting or creating the collection.\n\n**`Example`**\n\n```js\nmsg.collection = \"my_collection\";\nmsg.payload = {\n    metadata: {\n        description: \"My first collection\"\n    }\n};\n\nreturn msg;\n```\n\n#### Parameters\n\n| Name | Type | Description |\n| :------ | :------ | :------ |\n| `params` | `Object` | The parameters for creating a new collection. |\n| `params.embeddingFunction?` | `IEmbeddingFunction` | Optional custom embedding function for the collection. |\n| `params.metadata?` | `CollectionMetadata` | Optional metadata associated with the collection. |\n| `params.name` | `string` | The name of the collection. |\n\n#### Returns\n\n`Promise`\u003c`Collection`\\\u003e\n\nA promise that resolves to the got or created collection.\n\n___\n\n### heartbeat ([more details](https://docs.trychroma.com/js_reference/Client#heartbeat))\n\n▸ **heartbeat**(): `Promise`\u003c`number`\\\u003e\n\nReturns a heartbeat from the Chroma API.\n\n#### Returns\n\n`Promise`\u003c`number`\\\u003e\n\nA promise that resolves to the heartbeat from the Chroma API.\n\n___\n\n### listCollections ([more details](https://docs.trychroma.com/js_reference/Client#listCollections))\n\n▸ **listCollections**(): `Promise`\u003c`CollectionType`[]\\\u003e\n\nLists all collections.\n\n**`Throws`**\n\nIf there is an issue listing the collections.\n\n#### Returns\n\n`Promise`\u003c`CollectionType`[]\\\u003e\n\nA promise that resolves to a list of collection names.\n\n___\n\n### reset ([more details](https://docs.trychroma.com/js_reference/Client#reset))\n\n▸ **reset**(): `Promise`\u003c`Reset200Response`\\\u003e\n\nResets the state of the object by making an API call to the reset endpoint.\n\n**`Throws`**\n\nIf there is an issue resetting the state.\n\n#### Returns\n\n`Promise`\u003c`Reset200Response`\\\u003e\n\nA promise that resolves when the reset operation is complete.\n\n___\n\n### version ([more details](https://docs.trychroma.com/js_reference/Client#version))\n\n▸ **version**(): `Promise`\u003c`string`\\\u003e\n\nReturns the version of the Chroma API.\n\n#### Returns\n\n`Promise`\u003c`string`\\\u003e\n\nA promise that resolves to the version of the Chroma API.\n\n## Methods Collection\n\n### add ([more details](https://docs.trychroma.com/js_reference/Collection#add))\n\n▸ **add**(`params`): `Promise`\u003c`AddResponse`\\\u003e\n\nAdd items to the collection\n\n**`Example`**\n\n```js\nmsg.collection = \"my_collection\";\nmsg.payload = {\n    ids: [\"id1\", \"id2\"],\n    embeddings: [\n        [1, 2, 3],\n        [4, 5, 6],\n    ],\n    metadatas: [{ key: \"value\" }, { key: \"value\" }],\n    documents: [\"document1\", \"document2\"],\n};\n\nreturn msg;\n```\n\n#### Parameters\n\n| Name                 | Type                        | Description                              |\n| :------------------- | :-------------------------- | :--------------------------------------- |\n| `params`             | `Object`                    | The parameters for the query.            |\n| `params.documents?`  | `string` \\| `Documents`     | Optional documents of the items to add.  |\n| `params.embeddings?` | `Embedding` \\| `Embeddings` | Optional embeddings of the items to add. |\n| `params.ids`         | `string` \\| `IDs`           | IDs of the items to add.                 |\n| `params.metadatas?`  | `Metadata` \\| `Metadatas`   | Optional metadata of the items to add.   |\n\n#### Returns\n\n`Promise`\u003c`AddResponse`\\\u003e\n\n- The response from the API. True if successful.\n\n---\n\n### count ([more details](https://docs.trychroma.com/js_reference/Collection#count))\n\n▸ **count**(): `Promise`\u003c`number`\\\u003e\n\nCount the number of items in the collection\n\n**`Example`**\n\n```js\nmsg.collection = \"my_collection\";\nmsg.payload = {};\n\nreturn msg;\n```\n\n#### Returns\n\n`Promise`\u003c`number`\\\u003e\n\n- The response from the API.\n\n---\n\n### delete ([more details](https://docs.trychroma.com/js_reference/Collection#delete))\n\n▸ **delete**(`params?`): `Promise`\u003c`string`[]\\\u003e\n\nDeletes items from the collection.\n\n**`Throws`**\n\nIf there is an issue deleting items from the collection.\n\n**`Example`**\n\n```js\nmsg.collection = \"my_collection\";\nmsg.payload = {\n    ids: \"some_id\",\n    where: { key: \"value\" },\n    whereDocument: { \"$contains\": \"search_string\" }\n};\n\nreturn msg;\n```\n\n#### Parameters\n\n| Name                    | Type              | Description                                                                   |\n| :---------------------- | :---------------- | :---------------------------------------------------------------------------- |\n| `params`                | `Object`          | The parameters for deleting items from the collection.                        |\n| `params.ids?`           | `string` \\| `IDs` | Optional ID or array of IDs of items to delete.                               |\n| `params.where?`         | `Where`           | Optional query condition to filter items to delete based on metadata values.  |\n| `params.whereDocument?` | `WhereDocument`   | Optional query condition to filter items to delete based on document content. |\n\n#### Returns\n\n`Promise`\u003c`string`[]\\\u003e\n\nA promise that resolves to the IDs of the deleted items.\n\n---\n\n### get ([more details](https://docs.trychroma.com/js_reference/Collection#get))\n\n▸ **get**(`params?`): `Promise`\u003c`GetResponse`\\\u003e\n\nGet items from the collection\n\n**`Example`**\n\n```js\nmsg.collection = \"my_collection\";\nmsg.payload = {\n    ids: [\"id1\", \"id2\"],\n    where: { key: \"value\" },\n    limit: 10,\n    offset: 0,\n    include: [\"embeddings\", \"metadatas\", \"documents\"],\n    whereDocument: { $contains: \"value\" },\n};\n\nreturn msg;\n```\n\n#### Parameters\n\n| Name                    | Type              | Description                                        |\n| :---------------------- | :---------------- | :------------------------------------------------- |\n| `params`                | `Object`          | The parameters for the query.                      |\n| `params.ids?`           | `string` \\| `IDs` | Optional IDs of the items to get.                  |\n| `params.include?`       | `IncludeEnum`[]   | Optional list of items to include in the response. |\n| `params.limit?`         | `number`          | Optional limit on the number of items to get.      |\n| `params.offset?`        | `number`          | Optional offset on the items to get.               |\n| `params.where?`         | `Where`           | Optional where clause to filter items by.          |\n| `params.whereDocument?` | `WhereDocument`   | Optional where clause to filter items by.          |\n\n#### Returns\n\n`Promise`\u003c`GetResponse`\\\u003e\n\n- The response from the server.\n\n---\n\n### modify ([more details](https://docs.trychroma.com/js_reference/Collection#modify))\n\n▸ **modify**(`params?`): `Promise`\u003c`void`\\\u003e\n\nModify the collection name or metadata\n\n**`Example`**\n\n```js\nmsg.collection = \"my_collection\";\nmsg.payload = {\n    name: \"new collection name\",\n    metadata: { key: \"value\" },\n};\n\nreturn msg;\n```\n\n#### Parameters\n\n| Name               | Type                 | Description                               |\n| :----------------- | :------------------- | :---------------------------------------- |\n| `params`           | `Object`             | The parameters for the query.             |\n| `params.metadata?` | `CollectionMetadata` | Optional new metadata for the collection. |\n| `params.name?`     | `string`             | Optional new name for the collection.     |\n\n#### Returns\n\n`Promise`\u003c`void`\\\u003e\n\n- The response from the API.\n\n---\n\n### peek ([more details](https://docs.trychroma.com/js_reference/Collection#peek))\n\n▸ **peek**(`params?`): `Promise`\u003c`GetResponse`\\\u003e\n\nPeek inside the collection\n\n**`Throws`**\n\nIf there is an issue executing the query.\n\n**`Example`**\n\n```js\nmsg.collection = \"my_collection\";\nmsg.payload = {\n    limit: 10,\n};\n\nreturn msg;\n```\n\n#### Parameters\n\n| Name            | Type     | Description                                           |\n| :-------------- | :------- | :---------------------------------------------------- |\n| `params`        | `Object` | The parameters for the query.                         |\n| `params.limit?` | `number` | Optional number of results to return (default is 10). |\n\n#### Returns\n\n`Promise`\u003c`GetResponse`\\\u003e\n\nA promise that resolves to the query results.\n\n---\n\n### query ([more details](https://docs.trychroma.com/js_reference/Collection#query))\n\n▸ **query**(`params`): `Promise`\u003c`QueryResponse`\\\u003e\n\nPerforms a query on the collection using the specified parameters.\n\n**`Throws`**\n\nIf there is an issue executing the query.\n\n**`Example`**\n\n```js\n// Query the collection using embeddings\nmsg.collection = \"my_collection\";\nmsg.payload = {\n    queryEmbeddings: [0.1, 0.2],\n    nResults: 10,\n    where: { key: \"value\" },\n    include: [\"metadata\", \"document\"]\n};\n\nreturn msg;\n```\n\n**`Example`**\n\n```js\n// Query the collection using query text\nmsg.collection = \"my_collection\";\nmsg.payload = {\n    queryTexts: \"some text\",\n    nResults: 10,\n    where: { key: \"value\" },\n    include: [\"metadata\", \"document\"]\n};\n\nreturn msg;\n```\n\n#### Parameters\n\n| Name                      | Type                        | Description                                                                           |\n| :------------------------ | :-------------------------- | :------------------------------------------------------------------------------------ |\n| `params`                  | `Object`                    | The parameters for the query.                                                         |\n| `params.include?`         | `IncludeEnum`[]             | Optional array of fields to include in the result, such as \"metadata\" and \"document\". |\n| `params.nResults?`        | `number`                    | Optional number of results to return (default is 10).                                 |\n| `params.queryEmbeddings?` | `Embedding` \\| `Embeddings` | Optional query embeddings to use for the search.                                      |\n| `params.queryTexts?`      | `string` \\| `string`[]      | Optional query text(s) to search for in the collection.                               |\n| `params.where?`           | `Where`                     | Optional query condition to filter results based on metadata values.                  |\n| `params.whereDocument?`   | `WhereDocument`             | Optional query condition to filter results based on document content.                 |\n\n#### Returns\n\n`Promise`\u003c`QueryResponse`\\\u003e\n\nA promise that resolves to the query results.\n\n---\n\n### update ([more details](https://docs.trychroma.com/js_reference/Collection#update))\n\n▸ **update**(`params`): `Promise`\u003c`boolean`\\\u003e\n\nUpdate the embeddings, documents, and/or metadatas of existing items\n\n**`Example`**\n\n```js\nmsg.collection = \"my_collection\";\nmsg.payload = {\n    ids: [\"id1\", \"id2\"],\n    embeddings: [\n        [1, 2, 3],\n        [4, 5, 6],\n    ],\n    metadatas: [{ key: \"value\" }, { key: \"value\" }],\n    documents: [\"new document 1\", \"new document 2\"],\n};\n\nreturn msg;\n```\n\n#### Parameters\n\n| Name                 | Type                        | Description                     |\n| :------------------- | :-------------------------- | :------------------------------ |\n| `params`             | `Object`                    | The parameters for the query.   |\n| `params.documents?`  | `string` \\| `Documents`     | Optional documents to update.   |\n| `params.embeddings?` | `Embedding` \\| `Embeddings` | Optional embeddings to update.  |\n| `params.ids`         | `string` \\| `IDs`           | The IDs of the items to update. |\n| `params.metadatas?`  | `Metadata` \\| `Metadatas`   | Optional metadatas to update.   |\n\n#### Returns\n\n`Promise`\u003c`boolean`\\\u003e\n\n- The API Response. True if successful. Else, error.\n\n---\n\n### upsert ([more details](https://docs.trychroma.com/js_reference/Collection#upsert))\n\n▸ **upsert**(`params`): `Promise`\u003c`boolean`\\\u003e\n\nUpsert items to the collection\n\n**`Example`**\n\n```js\nmsg.collection = \"my_collection\";\nmsg.payload = {\n    ids: [\"id1\", \"id2\"],\n    embeddings: [\n        [1, 2, 3],\n        [4, 5, 6],\n    ],\n    metadatas: [{ key: \"value\" }, { key: \"value\" }],\n    documents: [\"document1\", \"document2\"],\n};\n\nreturn msg;\n```\n\n#### Parameters\n\n| Name                 | Type                        | Description                              |\n| :------------------- | :-------------------------- | :--------------------------------------- |\n| `params`             | `Object`                    | The parameters for the query.            |\n| `params.documents?`  | `string` \\| `Documents`     | Optional documents of the items to add.  |\n| `params.embeddings?` | `Embedding` \\| `Embeddings` | Optional embeddings of the items to add. |\n| `params.ids`         | `string` \\| `IDs`           | IDs of the items to add.                 |\n| `params.metadatas?`  | `Metadata` \\| `Metadatas`   | Optional metadata of the items to add.   |\n\n#### Returns\n\n`Promise`\u003c`boolean`\\\u003e\n\n- The response from the API. True if successful.\n\n### Bugs reports and feature requests\n\nPlease report any issues or feature requests at \u003ca href=\"https://github.com/UBOS-tech/node-red-contrib-chromadb/issues\"\u003eGitHub\u003c/a\u003e.\n\n## License\n\n[MIT License](https://github.com/UBOS-tech/node-red-contrib-chromadb/blob/main/LICENSE)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fubos-tech%2Fnode-red-contrib-chromadb","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fubos-tech%2Fnode-red-contrib-chromadb","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fubos-tech%2Fnode-red-contrib-chromadb/lists"}