> ## Documentation Index
> Fetch the complete documentation index at: https://langchain-5e9cc07a-preview-opensw-1787674483-6bd21af.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# Contributing integrations

**Integrations are a core component of LangChain.**

LangChain provides standard interfaces for several different components (language models, vector stores, etc) that are crucial when building LLM applications. Implementing a new integration helps expand LangChain's ecosystem and makes your service discoverable to millions of developers.

<Warning>
  New integrations are **not accepted as PRs** to any `langchain-ai` repository. All new integrations must be published as independent packages to PyPI (e.g., `langchain-yourprovider`). The only PR you should open to a `langchain-ai` repo is to list your published package in the docs: either a YAML row for the download table, or a hosted guide if you meet the [eligibility criteria](/oss/javascript/contributing/publish-langchain#eligibility-for-hosted-guides).
</Warning>

## Why implement a LangChain integration?

<Card title="Discoverability" icon="search">
  LangChain is the most used framework for building LLM applications, with over 200 million monthly downloads.
</Card>

<Card title="Interoperability" icon="refresh">
  LangChain components expose a standard interface, allowing developers to easily swap them for each other. If you implement a LangChain integration, any developer using a different component will easily be able to swap yours in.
</Card>

<Card title="Best Practices" icon="star">
  Through their standard interface, LangChain components encourage and facilitate best practices (streaming, async, etc.) that improve developer experience and application performance.
</Card>

## Components to integrate

While any component can be integrated into LangChain, there are specific types of integrations we encourage more:

**Integrate these ✅**:

* [**Chat Models**](/oss/javascript/integrations/chat): Most actively used component type
* [**Tools/Toolkits**](/oss/javascript/integrations/tools): Enable agent capabilities
* [**Retrievers**](/oss/javascript/integrations/retrievers): Core to RAG applications
* [**Embedding Models**](/oss/javascript/integrations/embeddings): Foundation for vector operations
* [**Vector Stores**](/oss/javascript/integrations/vectorstores): Essential for semantic search
* [**Middleware**](/oss/javascript/integrations/middleware): Extend agent behavior with hooks
* [**Sandboxes**](/oss/javascript/deepagents/sandboxes): Run code safely with Deep Agents

**Not these ❌**:

* **LLMs (Text-Completion Models)**: Deprecated in favor of [Chat Models](/oss/javascript/integrations/chat)
* [**Document Loaders**](/oss/javascript/integrations/document_loaders): High maintenance burden
* [**Key-Value Stores**](/oss/javascript/integrations/stores): Limited usage
* **Document Transformers**: Niche use cases
* **Model Caches**: Infrastructure concerns
* **Graphs**: Complex abstractions
* **Message Histories**: Storage abstractions
* **Callbacks**: System-level components
* **Chat Loaders**: Limited demand
* **Adapters**: Edge case utilities

## How to contribute an integration

<Steps>
  <Step title="Implement your package">
    <Card title="How to implement a LangChain integration" icon="link" href="/oss/javascript/contributing/implement-langchain" arrow />
  </Step>

  <Step title="Pass standard tests">
    If applicable, implement support for LangChain's [standard test](/oss/javascript/contributing/standard-tests-langchain) suite for your integration and successfully run them.
  </Step>

  <Step title="Publish integration">
    <Card title="How to publish an integration" icon="upload" href="/oss/javascript/contributing/publish-langchain" arrow />
  </Step>

  <Step title="List your integration">
    Open a PR in the LangChain [docs repo](https://github.com/langchain-ai/docs) so users can find your package. Hosted guides are limited; most integrations are listed via YAML.

    <Accordion title="How listing works" icon="book">
      **Default (under 50,000 monthly downloads, not featured):** Add a row to [`scripts/data/integration_external_docs.yaml`](https://github.com/langchain-ai/docs/blob/main/scripts/data/integration_external_docs.yaml). The name column links to your `docs_url` (partner docs preferred, then GitHub, then PyPI or npm). Do not add a new MDX page.

      **Hosted guide (50,000+ monthly downloads, or featured by maintainers):** Create a page under `src/oss/python/integrations/<component_type>/` from a template:

      * [Chat models](https://github.com/langchain-ai/docs/blob/main/src/oss/python/integrations/chat/TEMPLATE.mdx)
      * [Tools and toolkits](https://github.com/langchain-ai/docs/blob/main/src/oss/python/integrations/tools/TEMPLATE.mdx)
      * [Middleware](https://github.com/langchain-ai/docs/blob/main/src/oss/python/integrations/middleware/TEMPLATE.mdx)
      * [Vector stores](https://github.com/langchain-ai/docs/blob/main/src/oss/python/integrations/vectorstores/TEMPLATE.mdx)

      For full steps, eligibility details, and rejection criteria, see [Publish an integration](/oss/javascript/contributing/publish-langchain#make-your-integration-discoverable).
    </Accordion>
  </Step>

  <Step title="Co-marketing" icon="speakerphone">
    (Optional) Engage with the LangChain team for joint [co-marketing](/oss/javascript/contributing/comarketing).
  </Step>
</Steps>

***

<div className="source-links">
  <Callout icon="terminal-2">
    [Connect these docs](/use-these-docs) to Claude, VSCode, and more via MCP for real-time answers.
  </Callout>

  <Callout icon="edit">
    [Edit this page on GitHub](https://github.com/langchain-ai/docs/edit/main/src/oss/contributing/integrations-langchain.mdx) or [file an issue](https://github.com/langchain-ai/docs/issues/new/choose).
  </Callout>
</div>
