# Narrator > Turn TypeScript and JavaScript into plain English, deterministically. No LLM, runs in the browser. - [Narrator](https://narrator.ami.rip/index.md): Read TypeScript and JavaScript as plain English sentences, generated deterministically without an LLM. - [Getting started](https://narrator.ami.rip/getting-started.md): Install Narrator, narrate files and diffs from the terminal, then do the same from code. - [How it works](https://narrator.ami.rip/concepts/how-it-works.md): The path from a source file to English sentences, and the parts you can swap out. - [Markup](https://narrator.ami.rip/concepts/markup.md): How narrated lines remember which words are names, functions, types and literals. - [Units and diffs](https://narrator.ami.rip/concepts/units-and-diffs.md): How Narrator lines up two versions of a file and shows what changed in meaning. - [Dependency detection](https://narrator.ami.rip/concepts/dependency-detection.md): How Narrator learns which libraries a file's package uses, so plugins switch on and pick the right version. - [Determinism](https://narrator.ami.rip/concepts/determinism.md): Why Narrator uses rules instead of a language model, and what that buys you. - [Browser extension](https://narrator.ami.rip/guides/browser-extension.md): Read GitHub pull requests and commits in plain English, inline in GitHub's own diff view. - [Privacy policy](https://narrator.ami.rip/privacy.md): What the Narrator for GitHub browser extension does with your data: it collects nothing and only talks to GitHub. - [Embedding in your app](https://narrator.ami.rip/guides/embedding.md): Run Narrator on a server with the native parser, or in a browser, a worker or an edge runtime with the WASM parser. - [Writing a plugin](https://narrator.ami.rip/guides/writing-a-plugin.md): Teach Narrator what a library or your own helpers mean, step by step. - [Translating Narrator](https://narrator.ami.rip/guides/translating.md): Write an output locale, translate plugin phrasebooks, and find what's missing. - [Adding a source language](https://narrator.ami.rip/guides/source-languages.md): The contract a new programming language implements to plug into Narrator. - [Plugin versioning](https://narrator.ami.rip/guides/plugin-versioning.md): Declare which library versions a plugin reads, and handle breaking majors. - [Plugins](https://narrator.ami.rip/plugins/overview.md): Library plugins teach Narrator what popular APIs mean. - [zod](https://narrator.ami.rip/plugins/zod.md): Read zod schemas as the shapes and rules they describe. - [Valibot](https://narrator.ami.rip/plugins/valibot.md): Read Valibot schemas as the shapes they describe, and validation calls as checks. - [ArkType](https://narrator.ami.rip/plugins/arktype.md): Read ArkType definitions, including the string syntax, as the shapes they describe. - [Drizzle ORM](https://narrator.ami.rip/plugins/drizzle.md): Read Drizzle queries, operators, relational queries, transactions and schemas. - [Prisma](https://narrator.ami.rip/plugins/prisma.md): Read Prisma Client queries, writes and transactions as what they fetch and change. - [Kysely](https://narrator.ami.rip/plugins/kysely.md): Read Kysely query builder chains as the rows they fetch, insert, update or delete. - [SQL](https://narrator.ami.rip/plugins/sql.md): Read SQL embedded in TypeScript, clause by clause, with interpolations as their JavaScript values. - [decimal.js](https://narrator.ami.rip/plugins/decimal.md): Read decimal.js arithmetic and comparisons as math. - [Hono](https://narrator.ami.rip/plugins/hono.md): Read Hono apps as an API description: routes, requests, replies and middleware. - [Express](https://narrator.ami.rip/plugins/express.md): Read Express apps as routes, middleware and replies. - [Fastify](https://narrator.ami.rip/plugins/fastify.md): Read Fastify servers as routes with their schemas, hooks, plugins and replies. - [Elysia](https://narrator.ami.rip/plugins/elysia.md): Read Elysia servers as routes with their schemas, hooks and replies. - [tRPC](https://narrator.ami.rip/plugins/trpc.md): Read tRPC routers as the procedures they expose, and clients as the calls they make. - [React](https://narrator.ami.rip/plugins/react.md): Read React components as the UI they show, the state they keep and the effects they run. - [Next.js](https://narrator.ami.rip/plugins/nextjs.md): Read Next.js apps by route: pages, layouts, route handlers, the proxy, server actions and caching. - [TanStack Query](https://narrator.ami.rip/plugins/tanstack-query.md): Read queries and mutations as what is fetched, how long it stays fresh, and what happens around it. - [Stripe](https://narrator.ami.rip/plugins/stripe.md): Read Stripe Node SDK calls as billing actions, with amounts, intervals and webhook events explained. - [Autumn](https://narrator.ami.rip/plugins/autumn-js.md): Read Autumn's JavaScript SDK as the billing it does: checking and tracking feature usage, attaching plans, customers and entities, backend handlers and React hooks. - [Better Auth](https://narrator.ami.rip/plugins/better-auth.md): Read Better Auth configuration as a description of how sign-in works. - [AI SDK](https://narrator.ami.rip/plugins/ai-sdk.md): Read Vercel AI SDK code as what is sent to the model and what comes back. - [BullMQ](https://narrator.ami.rip/plugins/bullmq.md): Read BullMQ queues, jobs, schedulers and workers as what runs, when, and how often. - [Inngest](https://narrator.ami.rip/plugins/inngest.md): Read Inngest functions as what triggers them, the limits on their runs, and their durable steps. - [Trigger.dev](https://narrator.ami.rip/plugins/trigger-dev.md): Read Trigger.dev tasks as what they run, how they retry, and how other code starts them. - [Temporal](https://narrator.ami.rip/plugins/temporal.md): Read Temporal workflows, activities, workers and clients as durable steps and the messages between them. - [Effect](https://narrator.ami.rip/plugins/effect.md): Read Effect programs as the steps they run, for Effect 3 and Effect 4. - [Testing](https://narrator.ami.rip/plugins/testing.md): Read test files as the behaviour they check. - [@usenarrator/core](https://narrator.ami.rip/reference/core.md): createNarrator, dependency manifests, lines, markup, diffs and the contracts every language and locale implements. - [Engine](https://narrator.ami.rip/reference/engine.md): The TypeScript source language and the engine API that rules call. - [TsPlugin](https://narrator.ami.rip/reference/ts-plugin.md): The type every TypeScript and JavaScript plugin implements. - [Locale](https://narrator.ami.rip/reference/locale.md): The type an output language implements. - [@usenarrator/node](https://narrator.ami.rip/reference/node.md): A ready-made narrator for Node and Bun, and the helpers that read a repository's manifests. - [@usenarrator/testkit](https://narrator.ami.rip/reference/testkit.md): Helpers for testing plugins and locales. - [@usenarrator/cli](https://narrator.ami.rip/reference/cli.md): The narrator command: narrate files, directories, globs and git diffs from the terminal. This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.