> ## Documentation Index
> Fetch the complete documentation index at: https://docs.fallow.tools/llms.txt
> Use this file to discover all available pages before exploring further.

# Built-in plugins

> Built-in plugins for Next.js, Vite, Jest, Tailwind, ESLint, and more. Auto-detected framework conventions for accurate analysis.

Fallow ships with built-in plugins for popular TypeScript and JavaScript tools. Each plugin teaches fallow about framework-specific conventions: entry points, config files, used exports, and tooling dependencies. Analysis is accurate out of the box.

<Info>
  Most plugins activate automatically when the relevant package is in your `package.json`. Some plugins (ESLint, Vitest) also activate when a config file is present in the workspace root, even without the package. This covers monorepos where the tool is installed at the root but workspace packages have their own config files.
</Info>

<Tabs>
  <Tab title="Frameworks">
    | Plugin                  | Enabler packages                                                                                                                     |
    | :---------------------- | :----------------------------------------------------------------------------------------------------------------------------------- |
    | **Next.js**             | `next`                                                                                                                               |
    | **Nuxt**                | `nuxt`, `nuxt3`                                                                                                                      |
    | **Remix**               | `@remix-run/dev`                                                                                                                     |
    | **SvelteKit**           | `@sveltejs/kit`                                                                                                                      |
    | **Gatsby**              | `gatsby`                                                                                                                             |
    | **Astro**               | `astro`                                                                                                                              |
    | **Angular**             | `@angular/core`, `ng-packagr`                                                                                                        |
    | **React Router**        | `react-router`, `@react-router/dev`                                                                                                  |
    | **RedwoodSDK**          | `rwsdk` (keeps `src/worker.{ts,tsx,js,jsx,mts,mjs}` reachable in `rwsdk/vite` apps)                                                  |
    | **TanStack Router**     | `@tanstack/react-router`, `@tanstack/start`, `@tanstack/react-start`                                                                 |
    | **React Native**        | `react-native`                                                                                                                       |
    | **Expo**                | `expo`                                                                                                                               |
    | **NestJS**              | `@nestjs/core`                                                                                                                       |
    | **AdonisJS**            | `@adonisjs/core`                                                                                                                     |
    | **Docusaurus**          | `@docusaurus/core`                                                                                                                   |
    | **Nitro**               | `nitropack`                                                                                                                          |
    | **Capacitor**           | `@capacitor/core`, `@capacitor/cli`                                                                                                  |
    | **Sanity**              | `sanity`, `@sanity/`                                                                                                                 |
    | **VitePress**           | `vitepress`                                                                                                                          |
    | **next-intl**           | `next-intl`                                                                                                                          |
    | **Relay**               | `relay-runtime`, `react-relay`, `relay-compiler`                                                                                     |
    | **Electron**            | `electron`, `electron-builder`, `@electron-forge/cli`, `electron-vite`                                                               |
    | **Qwik**                | `@builder.io/qwik`, `@builder.io/qwik-city`, `@qwik.dev/core`, `@qwik.dev/router`                                                    |
    | **i18next**             | `i18next`, `react-i18next`, `vue-i18n`                                                                                               |
    | **Wuchale**             | `wuchale`, `@wuchale/vite-plugin`, or `wuchale.config.js`                                                                            |
    | **Convex**              | `convex`                                                                                                                             |
    | **Lit**                 | `lit`, `lit-element`, `lit-html` (also activates for native Custom Elements without a Lit dependency)                                |
    | **Lexical**             | `lexical`, `@lexical/` (credits custom node lifecycle methods on `DecoratorNode`, `ElementNode`, `TextNode` subclasses)              |
    | **Ember**               | `ember-source`, `ember-cli`, `@embroider/core`, `@glimmer/component`                                                                 |
    | **Expo Router**         | `expo-router`                                                                                                                        |
    | **Supabase**            | `supabase`, or `supabase/config.toml` / `supabase/functions/` present (treats `supabase/functions/*/index.*` as runtime entry roots) |
    | **Content Collections** | `@content-collections/core`, `@content-collections/vite`, `@content-collections/next`                                                |
    | **Contentlayer**        | `contentlayer`, `contentlayer2`, `next-contentlayer`, `next-contentlayer2`, or `contentlayer.config.{ts,js,mts,mjs}` present         |
    | **Fumadocs**            | `fumadocs-mdx`, `fumadocs-core`, `fumadocs-ui`, or `source.config.*` present                                                         |
    | **Mintlify**            | `mint`, `mintlify`, or `docs.json` / `mint.json` present                                                                             |
    | **Velite**              | `velite`, or `velite.config.{ts,mts,cts,js,mjs,cjs}` present                                                                         |
    | **rspress**             | `rspress`, `@rspress/` (credits the `@theme` / `@theme-original` virtual modules)                                                    |
  </Tab>

  <Tab title="Bundlers">
    | Plugin        | Enabler packages     |
    | :------------ | :------------------- |
    | **Vite**      | `vite`               |
    | **Webpack**   | `webpack`            |
    | **Rspack**    | `@rspack/core`       |
    | **Rsbuild**   | `@rsbuild/core`      |
    | **Rollup**    | `rollup`             |
    | **Rolldown**  | `rolldown`           |
    | **Tsup**      | `tsup`               |
    | **Tsdown**    | `tsdown`             |
    | **pkg-utils** | `@sanity/pkg-utils`  |
    | **Parcel**    | `parcel`, `@parcel/` |
  </Tab>

  <Tab title="Testing">
    | Plugin          | Enabler packages                                           |
    | :-------------- | :--------------------------------------------------------- |
    | **Vitest**      | `vitest` or config file present                            |
    | **Jest**        | `jest`                                                     |
    | **Playwright**  | `@playwright/test`                                         |
    | **Cypress**     | `cypress`                                                  |
    | **Mocha**       | `mocha`                                                    |
    | **Ava**         | `ava`                                                      |
    | **tap**         | `tap`                                                      |
    | **tsd**         | `tsd`                                                      |
    | **Storybook**   | `storybook`, `@storybook/react`                            |
    | **Karma**       | `karma`                                                    |
    | **Cucumber**    | `@cucumber/cucumber`                                       |
    | **WebdriverIO** | `webdriverio`, `@wdio/`                                    |
    | **k6**          | `k6`, or `*.k6.{js,ts,mjs,cjs,mts,cts}` files present      |
    | **Stryker**     | `@stryker-mutator/core`, `stryker`, or config file present |
  </Tab>

  <Tab title="Linting & Formatting">
    | Plugin           | Enabler packages                                        |
    | :--------------- | :------------------------------------------------------ |
    | **ESLint**       | `eslint` or config file present                         |
    | **Biome**        | `@biomejs/biome`                                        |
    | **Stylelint**    | `stylelint`                                             |
    | **Prettier**     | `prettier`                                              |
    | **Oxlint**       | `oxlint`                                                |
    | **markdownlint** | `markdownlint`, `markdownlint-cli`, `markdownlint-cli2` |
    | **CSpell**       | `cspell`                                                |
    | **Remark**       | `remark`, `remark-cli`                                  |
  </Tab>

  <Tab title="Transpilation">
    | Plugin         | Enabler packages        |
    | :------------- | :---------------------- |
    | **TypeScript** | `typescript`            |
    | **Babel**      | `@babel/core`           |
    | **SWC**        | `@swc/core`, `@swc/cli` |
  </Tab>

  <Tab title="CSS">
    | Plugin       | Enabler packages      |
    | :----------- | :-------------------- |
    | **Tailwind** | `tailwindcss`         |
    | **PostCSS**  | `postcss`             |
    | **UnoCSS**   | `unocss`, `@unocss/*` |
    | **PandaCSS** | `@pandacss/dev`       |
  </Tab>

  <Tab title="Database">
    | Plugin      | Enabler packages           |
    | :---------- | :------------------------- |
    | **Prisma**  | `prisma`, `@prisma/client` |
    | **Drizzle** | `drizzle-orm`              |
    | **Knex**    | `knex`                     |
    | **TypeORM** | `typeorm`                  |
    | **Kysely**  | `kysely`, `kysely-ctl`     |
  </Tab>

  <Tab title="Monorepo">
    | Plugin         | Enabler packages                                  |
    | :------------- | :------------------------------------------------ |
    | **Turborepo**  | `turbo`                                           |
    | **Nx**         | `nx`                                              |
    | **Changesets** | `@changesets/cli`                                 |
    | **Syncpack**   | `syncpack`                                        |
    | **pnpm**       | `pnpm-workspace.yaml` or `pnpm-lock.yaml` present |
  </Tab>

  <Tab title="CI/CD & Release">
    | Plugin               | Enabler packages   |
    | :------------------- | :----------------- |
    | **semantic-release** | `semantic-release` |
    | **Commitlint**       | `@commitlint/cli`  |
    | **Commitizen**       | `commitizen`       |
    | **Wrangler**         | `wrangler`         |
    | **Sentry**           | `@sentry/cli`      |
    | **Danger**           | `danger`           |
  </Tab>

  <Tab title="Git Hooks">
    | Plugin               | Enabler packages   |
    | :------------------- | :----------------- |
    | **husky**            | `husky`            |
    | **lint-staged**      | `lint-staged`      |
    | **lefthook**         | `lefthook`         |
    | **simple-git-hooks** | `simple-git-hooks` |
  </Tab>

  <Tab title="Other">
    | Plugin                 | Enabler packages                                                                                                             |
    | :--------------------- | :--------------------------------------------------------------------------------------------------------------------------- |
    | **GraphQL Codegen**    | `@graphql-codegen/cli`                                                                                                       |
    | **TypeDoc**            | `typedoc`                                                                                                                    |
    | **openapi-ts**         | `openapi-typescript`                                                                                                         |
    | **Plop**               | `plop`                                                                                                                       |
    | **SVGO**               | `svgo`                                                                                                                       |
    | **SVGR**               | `@svgr/core`, `@svgr/cli`, `@svgr/webpack`                                                                                   |
    | **c8**                 | `c8`                                                                                                                         |
    | **nyc**                | `nyc`                                                                                                                        |
    | **MSW**                | `msw`                                                                                                                        |
    | **nodemon**            | `nodemon`                                                                                                                    |
    | **PM2**                | `pm2`                                                                                                                        |
    | **dependency-cruiser** | `dependency-cruiser`                                                                                                         |
    | **Hardhat**            | `hardhat`                                                                                                                    |
    | **Bun**                | `bun-types`                                                                                                                  |
    | **OpenCode**           | `opencode.json`, `.opencode/`, or `@opencode-ai/` (credits auto-loaded plugin files and `opencode.json` plugin dependencies) |
  </Tab>
</Tabs>

<Accordion title="Plugins with deep config parsing">
  These plugins go beyond simple package detection. They parse your config files with Oxc's AST parser to extract entry points, dependencies, aliases, and other settings automatically:

  | Plugin           | What it extracts                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           |
  | :--------------- | :----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
  | **ESLint**       | Plugin imports, shared configs, custom rule paths, import resolver packages                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                |
  | **Vitest**       | Reporters, coverage provider, typecheck checker, browser provider from `vitest.config.ts`                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  |
  | **Vite**         | Entry points, `resolve.alias` mappings, plugin imports from `vite.config.ts`                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               |
  | **Jest**         | Setup files, transform paths, module mappers from `jest.config.js`                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         |
  | **tsd**          | Declaration test directory from `package.json#tsd.directory`                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               |
  | **Storybook**    | Story globs, addon imports from `.storybook/main.ts`                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
  | **Tailwind**     | Content paths, plugin imports from `tailwind.config.js`                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    |
  | **Webpack**      | Entry points including descriptor/context forms, `resolve.alias` mappings, loader/plugin imports from `webpack.config.js`                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  |
  | **TypeScript**   | Path aliases, project references from `tsconfig.json`                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |
  | **Babel**        | Plugin and preset imports from `babel.config.js`                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           |
  | **Rollup**       | Entry points, plugin imports from `rollup.config.js`                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
  | **Rolldown**     | Entry points, external deps, plugin imports from `rolldown.config.ts`                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |
  | **PostCSS**      | Plugin imports from `postcss.config.js`                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    |
  | **Nuxt**         | Modules, plugins, server routes, `alias`, `imports.dirs`, `components`, `srcDir` from `nuxt.config.ts`                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |
  | **SvelteKit**    | `kit.alias` mappings, param matchers from `svelte.config.js`                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               |
  | **Next.js**      | App Router convention exports (`page`, `layout`, `loading`, `error`, `route`), route segment config, Pages Router exports, middleware, proxy, instrumentation, `mdx-components`, `transpilePackages`                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
  | **Rsbuild**      | Entry points, plugin imports from `rsbuild.config.ts`                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |
  | **Remark**       | Plugin imports from `.remarkrc.js`                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         |
  | **Angular**      | Styles, scripts, main, polyfills from `angular.json` build targets; ng-packagr `ng-package.json` / `ng-package.prod.json` `lib.entryFile` (default `src/public_api.ts`, resolved relative to the config directory) becomes a library public API entry point, with nested secondary-entry-point configs in the package subtree scanned too; `@Component({ templateUrl, styleUrl })` decorator references create graph edges; standalone `.html` templates and inline `template:` literals both contribute synthetic `<template>` complexity findings (`@if`/`@for`/`@switch`/`@defer`, `*ngIf`, bound attributes, interpolations) suppressible via `<!-- fallow-ignore-file complexity -->` (external) or `// fallow-ignore-next-line complexity` above the `@Component` decorator (inline) |
  | **Nx**           | Executor references, main entry points, tsconfig paths from `project.json`                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 |
  | **Hardhat**      | Plugin imports and side-effect requires from `hardhat.config.ts`                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                           |
  | **Contentlayer** | `contentDirPath`, same-file `defineDocumentType` `filePathPattern` entries, and config imports from `contentlayer.config.*`                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                |
  | **Velite**       | `defineCollection` `pattern` globs joined to the top-level `root` (default `content`), generated `.velite` output, a non-default `output.data` dir, and config imports from `velite.config.*`                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              |
  | **UnoCSS**       | Preset and transformer imports from `uno.config.ts`                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        |
  | **Wuchale**      | Adapter imports from `wuchale.config.js`; static custom JavaScript config files referenced from `@wuchale/vite-plugin` in `vite.config.*`                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  |
</Accordion>

<Tip>
  Run `fallow list --plugins` to see which plugins are active in your project.
</Tip>

```bash title="$ fallow list --plugins" theme={null}
Active plugins:
  - nextjs
  - vite
  - vitest
  - playwright
  - storybook
  - eslint
  - typescript
  - tailwind
  - drizzle
```

<Info>
  Don't see your framework? [Custom plugins](/frameworks/custom-plugins) support any internal or third-party tool using declarative JSON or TOML.
</Info>

## See also

<CardGroup cols={2}>
  <Card title="Custom plugins" icon="screwdriver-wrench" href="/frameworks/custom-plugins">
    Add support for internal frameworks with external plugin files.
  </Card>

  <Card title="fallow list" icon="list" href="/cli/list">
    Inspect active plugins, entry points, and project metadata.
  </Card>
</CardGroup>
