AI/TLDR

Genkit

One AI app framework across JavaScript, Go, Python and Dart, with a local dev UI

App FrameworksOpen source
Language
TypeScript
License
Apache-2.0
$npm install genkit @genkit-ai/google-genai

Overview

Genkit is an open-source framework for building full-stack AI-powered applications, built and used in production by Google's Firebase. It puts a unified interface over models from providers including Google, OpenAI, Anthropic and Ollama, so the code that generates text, calls a tool or returns structured data stays the same when you change the model behind it.

Its distinguishing trait is cross-language parity: the same concepts and APIs ship as SDKs for JavaScript/TypeScript and Go (both production-ready with full feature support), Python (beta, wide feature support), and Dart (preview, core functionality). That makes it unusual among AI app frameworks, most of which are Python-first with a thinner port elsewhere.

Around the model calls, Genkit provides the pieces an app needs: prompt templating via Dotprompt, type-safe structured output, tool calling and agentic workflows, persisted chat interfaces, retrieval-augmented generation, and flows for multi-step logic. A local CLI and Developer UI let you test prompts and flows against single inputs or datasets, compare model outputs and read execution traces, and a production monitoring dashboard tracks latency, request volume and error rates once deployed. Genkit runs server-side in any environment that supports its language — Cloud Functions for Firebase, Google Cloud Run or third-party platforms, with or without Google services — and offers client SDKs for Next.js, React, Angular, iOS and Android.

What it does

  • Unified interface over models from Google, OpenAI, Anthropic, Ollama and more, so providers can be swapped without rewriting app code
  • SDKs with consistent APIs for JavaScript/TypeScript and Go (production-ready), Python (beta) and Dart (preview)
  • Streamlined APIs for structured output, agentic tool calling, context-aware generation, multimodal input/output and persisted chat
  • Flows for multi-step AI logic, Dotprompt prompt templating and built-in RAG primitives
  • Local CLI and Developer UI to test prompts and flows on inputs or datasets, compare model outputs and inspect execution traces
  • Production monitoring dashboard for model performance, request volume, latency and error rates

Getting started

The quickest path is the JavaScript/TypeScript SDK with the Google GenAI plugin. You supply the provider's API key; Genkit handles the call.

Install Genkit and a model plugin

The core package plus the plugin for whichever provider you want to start with.

bashbash
npm install genkit @genkit-ai/google-genai

Configure the instance and generate

Create a Genkit instance with the plugins you need, then call generate with a model and a prompt.

tsts
import { genkit } from 'genkit';
import { googleAI } from '@genkit-ai/google-genai';

const ai = genkit({ plugins: [googleAI()] });

const { text } = await ai.generate({
    model: googleAI.model('gemini-flash-latest'),
    prompt: 'What is the meaning of life?'
});

Iterate in the Developer UI

The Genkit CLI runs a local Developer UI where you can exercise prompts and flows, compare outputs across models and read detailed traces. See genkit.dev/docs/devtools for the full tooling guide.

Pick another language

The same concepts are available in Go, Python (beta) and Dart (preview). Per-language installation and API docs live at genkit.dev, and runnable sample apps with their source are at examples.genkit.dev.

Commands and code are distilled from the project's own documentation — always check the official repo for the latest.

When to use it

  • Build a chatbot, automation or recommendation feature in TypeScript or Go without committing to a single model vendor
  • Add AI to an existing Firebase or Cloud Run backend, using client SDKs to reach it from Next.js, React, Angular, iOS or Android
  • Prototype a prompt or flow in the local Developer UI, comparing model outputs side by side before shipping it
  • Stand up a RAG feature with tool calling and type-safe structured output, then watch latency and error rates on the monitoring dashboard

How Genkit compares

Genkit alongside other open-source app frameworks tools AI/TLDR tracks, ranked by GitHub stars.

ToolStarsWhat it does
LangChain★ 147kA widely used Python and JavaScript framework for building LLM applications by composing models, prompts, tools, retrievers, and memory into chains.
LlamaIndex★ 52.2kA data framework for connecting language models to your own documents and data sources, with built-in agent and retrieval (RAG) tooling.
Haystack★ 26.5kAn orchestration framework from deepset for building modular LLM pipelines and agents for search, RAG, and question answering.
Jina★ 21.9kJina-serve is a Python framework for building, scaling, and deploying AI services and multi-step pipelines that communicate over gRPC, HTTP, and WebSockets.
LLM★ 12.5kSimon Willison's plugin-extensible CLI and Python library for prompting remote and local models, logging every prompt and response to SQLite, and generating embeddings.
Prompt Flow★ 11.2kMicrosoft's toolkit for building LLM apps as executable flows that link prompts, Python code, and tools, with tracing, batch evaluation, and deployment.
Rig★ 8.7kA Rust library for building LLM-powered applications, giving one unified interface over 20+ model providers and 10+ vector stores plus an agent runtime with streaming, tools, and OpenTelemetry GenAI tracing.
Genkit★ 6.4kOne AI app framework across JavaScript, Go, Python and Dart, with a local dev UI