LlamaIndexTS is a free, open source ai interaction & interfaces project written in TypeScript and released under MIT. It has 3,078 GitHub stars, 524 forks and 149 open issues, and was last pushed 6 months ago. On this registry it ranks #78 of 135 tracked projects in AI Interaction & Interfaces, with 5 head-to-head comparisons available.

What is LlamaIndexTS?

LlamaIndexTS is a deprecated, MIT-licensed TypeScript data framework published on npm as llamaindex, built to connect large language models to your own data inside server-side JavaScript runtimes such as Node.js, Deno, Bun, Nitro, Vercel Edge Runtime, and Cloudflare Workers.

What it is

LlamaIndexTS is a lightweight set of libraries for TypeScript and JavaScript developers who want an LLM to reason over private data rather than generic pre-training. It lives in the npm ecosystem and ships as the llamaindex package, with separate provider packages such as @llamaindex/openai supplying model access, file readers for ingestion, and storage adapters for vector databases. The project targets server-side execution first: the README runs from Node.js 20 and upward and also lists Deno, Bun, Nitro, Vercel Edge Runtime, and Cloudflare Workers as supported environments, while noting that browser support stays limited because browser runtimes lack AsyncLocalStorage-like APIs.

The concrete problem it solves is the glue code that otherwise sits between an application and a model provider. Without a framework of this kind, a team hand-writes document loading, chunking, embedding, retrieval, and prompt assembly for every provider and re-does that work whenever the model changes. LlamaIndexTS replaces that bespoke plumbing with one abstraction layer over OpenAI, Anthropic, Groq, MistralAI, Fireworks, DeepSeek, ReplicateAI, TogetherAI, HuggingFace, DeepInfra, Gemini, and the Llama 2, Llama 3, and Llama 3.1 family, so the surrounding application code stays stable when the model behind it does not. It is the TypeScript counterpart to the LlamaIndex work the same organisation maintains in Python, and LlamaCloud and LlamaParse users are now routed to the Python cloud documentation.

Key capabilities

  • Runs across Node.js >= 20, Deno, Bun, Nitro, Vercel Edge Runtime, and Cloudflare Workers, with the two edge targets carrying documented limitations.
  • Swaps LLM backends through provider packages rather than rewrites, using packages such as @llamaindex/openai alongside Anthropic, Groq, MistralAI, Fireworks, DeepSeek, ReplicateAI, TogetherAI, HuggingFace, DeepInfra, and Gemini providers.
  • Handles embeddings and vector-database storage so ingested documents can be retrieved at query time.
  • Covers agent and chatbot patterns, as reflected in the repository topics.
  • Provides a React integration path for applications that surface LLM output in a front end.
  • Connects to create-llama scaffolding for starting new projects.
  • Includes a Next.js playground at https://llama-playground.vercel.app/, with source in the run-llama/ts-playground repository.

Who uses it and how

  • Server-side TypeScript teams running Node.js 20 or later that need LLM features without leaving the npm toolchain.
  • Edge-first deployments on Vercel Edge Runtime or Cloudflare Workers, accepting the limitations the README attaches to both targets.
  • Deno and Bun users, both listed as first-class environments rather than as afterthoughts.
  • Prototypers who start from the hosted Next.js playground or from the create-llama scaffolding to reach a working retrieval application quickly.
  • Existing adopters who must now plan a migration away from the package, since LlamaCloud and LlamaParse traffic is directed to the Python cloud documentation.

Getting started

Install the core package with npm install llamaindex, or the pnpm and yarn equivalents, then add a provider package such as @llamaindex/openai for the model you intend to call. Setup instructions for each runtime are at https://ts.llamaindex.ai/docs/llamaindex/getting_started.

How it compares

No competing commercial products are named in the material for this entry, and no other framework is named either, so LlamaIndexTS stands alone in this registry with nothing to contrast it against directly. Its only stated relationship is to the wider LlamaIndex organisation and the Python-side LlamaCloud and LlamaParse documentation.

When to use it — and when not to

This project is deprecated and no longer maintained, so it should not be chosen for new work; the honest use case is maintaining or migrating an existing TypeScript application that already depends on it. A self-hoster still operates the whole stack: a Node.js 20 or later runtime, provider credentials for whichever model vendor is selected, and a vector store for ingested documents. The recent activity, 149 open issues, and the browser limitation caused by missing AsyncLocalStorage-like APIs all point to a codebase that will not absorb fixes, so teams needing ongoing support should look at the maintained Python-side offerings instead.

project readme (upstream, from github) — read inline

[!CAUTION]

Deprecation Notice

This project is deprecated and no longer maintained.

For LlamaCloud/LlamaParse usage, check out our docs: https://developers.llamaindex.ai/python/cloud/

Thank you to everyone who contributed to and used LlamaIndex.TS.

LlamaIndex logo

LlamaIndex.TS (Deprecated)

Data framework for your LLM application.

NPM Version NPM License NPM Downloads Discord Twitter

Use your own data with large language models (LLMs, OpenAI ChatGPT and others) in JS runtime environments with TypeScript support.

Documentation: https://ts.llamaindex.ai/

Try examples online:

Open in Stackblitz

What is LlamaIndex.TS?

LlamaIndex.TS aims to be a lightweight, easy to use set of libraries to help you integrate large language models into your applications with your own data.

Compatibility

Multiple JS Environment Support

LlamaIndex.TS supports multiple JS environments, including:

  • Node.js >= 20 ✅
  • Deno ✅
  • Bun ✅
  • Nitro ✅
  • Vercel Edge Runtime ✅ (with some limitations)
  • Cloudflare Workers ✅ (with some limitations)

For now, browser support is limited due to the lack of support for AsyncLocalStorage-like APIs

Supported LLMs:

  • OpenAI LLms
  • Anthropic LLms
  • Groq LLMs
  • Llama2, Llama3, Llama3.1 LLMs
  • MistralAI LLMs
  • Fireworks LLMs
  • DeepSeek LLMs
  • ReplicateAI LLMs
  • TogetherAI LLMs
  • HuggingFace LLms
  • DeepInfra LLMs
  • Gemini LLMs

Getting started

npm install llamaindex
pnpm install llamaindex
yarn add llamaindex

Setup in Node.js, Deno, Bun, TypeScript...?

See our official document: https://ts.llamaindex.ai/docs/llamaindex/getting_started

Adding provider packages

In most cases, you'll also need to install provider packages to use LlamaIndexTS. These are for adding AI models, file readers for ingestion or storing documents, e.g. in vector databases.

For example, to use the OpenAI LLM, you would install the following package:

npm install @llamaindex/openai
pnpm install @llamaindex/openai
yarn add @llamaindex/openai

Playground

Check out our NextJS playground at https://llama-playground.vercel.app/. The source is available at https://github.com/run-llama/ts-playground

Core concepts for getting started:

See our documentation: https://ts.llamaindex.ai/docs/llamaindex/getting_started/concepts

Contributing:

Please see our contributing guide for more information. You are highly encouraged to contribute to LlamaIndex.TS!

Community

Please join our Discord! https://discord.com/invite/eN6D2HQ4aX

Frequently asked questions

Is LlamaIndexTS free to use?

LlamaIndexTS is open source under the MIT licence. There is no licence fee and no seat count — you can self-host it or, where the project offers one, pay a vendor for a managed version instead.

What does LlamaIndexTS do?

Data framework for your LLM applications. Focus on server side solution

What is LlamaIndexTS written in?

LlamaIndexTS is primarily written in TypeScript. Its source is publicly available at https://github.com/run-llama/LlamaIndexTS, and it has 3,078 GitHub stars.