Skip to content

core/src

Defined in: core/src/types.ts:36

Enum for specialized ESLint extensions and strict rule sets

A11y: "a11y"

Defined in: core/src/types.ts:41

Accessibility (a11y) rules for JSX and Vue

AstroDoctor: "astro-doctor"

Defined in: core/src/types.ts:46

Astro Doctor performance, accessibility, security, and best-practice rules

BestPractices: "best-practices"

Defined in: core/src/types.ts:52

Built-in best-practice rules: no-console, no-alert, cyclomatic complexity, max nesting depth. No extra dependencies required.

Biome: "biome"

Defined in: core/src/types.ts:57

Disables formatting rules that conflict with Biome

Boundaries: "boundaries"

Defined in: core/src/types.ts:62

Import boundary rules for common app, workspace, and generated-code edges.

Compat: "compat"

Defined in: core/src/types.ts:67

Browser compatibility checks against the project browserslist

DeMorgan: "de-morgan"

Defined in: core/src/types.ts:72

Simplifies negated logical expressions (De Morgan’s laws)

Depend: "depend"

Defined in: core/src/types.ts:77

Suggests lighter or native alternatives to heavy dependencies

Node: "node"

Defined in: core/src/types.ts:82

Node.js rules from eslint-plugin-n for server-side codebases

NoOnlyTests: "no-only-tests"

Defined in: core/src/types.ts:87

Prevents test.only / describe.only from being committed

Oxlint: "oxlint"

Defined in: core/src/types.ts:92

Disables rules already covered by Oxlint for hybrid linting setups

Perfectionist: "perfectionist"

Defined in: core/src/types.ts:93

Regexp: "regexp"

Defined in: core/src/types.ts:94

Security: "security"

Defined in: core/src/types.ts:95

Sonarjs: "sonarjs"

Defined in: core/src/types.ts:96

Unicorn: "unicorn"

Defined in: core/src/types.ts:98


Defined in: core/src/types.ts:104

Enum for linting non-JS/TS file formats

Css: "css"

Defined in: core/src/types.ts:105

Graphql: "graphql"

Defined in: core/src/types.ts:106

Html: "html"

Defined in: core/src/types.ts:107

Jsonc: "jsonc"

Defined in: core/src/types.ts:108

Markdown: "markdown"

Defined in: core/src/types.ts:109

Mdx: "mdx"

Defined in: core/src/types.ts:110

PackageJson: "package-json"

Defined in: core/src/types.ts:111

Toml: "toml"

Defined in: core/src/types.ts:112

Yaml: "yaml"

Defined in: core/src/types.ts:113


Defined in: core/src/types.ts:119

Enum for application-level runtime dependencies and styling

AiSdk: "ai-sdk"

Defined in: core/src/types.ts:120

Autogen: "autogen"

Defined in: core/src/types.ts:121

Drizzle: "drizzle"

Defined in: core/src/types.ts:122

GoogleGenAi: "google-genai"

Defined in: core/src/types.ts:123

I18next: "i18next"

Defined in: core/src/types.ts:124

Langchain: "langchain"

Defined in: core/src/types.ts:125

LlamaIndex: "llamaindex"

Defined in: core/src/types.ts:126

Mastra: "mastra"

Defined in: core/src/types.ts:127

Mcp: "mcp"

Defined in: core/src/types.ts:128

MikroOrm: "mikro-orm"

Defined in: core/src/types.ts:129

OpenAiAgents: "openai-agents"

Defined in: core/src/types.ts:130

Prisma: "prisma"

Defined in: core/src/types.ts:131

Sequelize: "sequelize"

Defined in: core/src/types.ts:132

Stencil: "stencil"

Defined in: core/src/types.ts:133

Storybook: "storybook"

Defined in: core/src/types.ts:134

Tailwind: "tailwind"

Defined in: core/src/types.ts:135

TanstackQuery: "tanstack-query"

Defined in: core/src/types.ts:136

TanstackRouter: "tanstack-router"

Defined in: core/src/types.ts:137

Turbo: "turbo"

Defined in: core/src/types.ts:138

Typeorm: "typeorm"

Defined in: core/src/types.ts:139

Zod: "zod"

Defined in: core/src/types.ts:140


Defined in: core/src/types.ts:146

Enum for Next.js mode options

AppRouter: "app-router"

Defined in: core/src/types.ts:147

Pages: "pages"

Defined in: core/src/types.ts:148


Defined in: core/src/types.ts:154

Enum for named presets

All: "all"

Defined in: core/src/types.ts:157

All configs + all optionals

App: "app"

Defined in: core/src/types.ts:160

Browser application defaults with TypeScript and Prettier

Basic: "basic"

Defined in: core/src/types.ts:163

Core JS config only

Browser: "browser"

Defined in: core/src/types.ts:166

Core + TS + Browser runtime

CI: "ci"

Defined in: core/src/types.ts:169

CI-oriented defaults with strict severities

Library: "library"

Defined in: core/src/types.ts:172

TypeScript package/library defaults for published packages

Monorepo: "monorepo"

Defined in: core/src/types.ts:175

Monorepo-friendly defaults for mixed workspaces

Node: "node"

Defined in: core/src/types.ts:178

Core + TS + Node runtime

Worker: "worker"

Defined in: core/src/types.ts:181

Core + TS + Worker runtime


Defined in: core/src/types.ts:187

Enum for runtime environment presets

Browser: "browser"

Defined in: core/src/types.ts:190

Only Browser globals (window, document, etc.)

Bun: "bun"

Defined in: core/src/types.ts:193

Bun runtime globals

Cloudflare: "cloudflare"

Defined in: core/src/types.ts:196

Cloudflare Workers globals

Deno: "deno"

Defined in: core/src/types.ts:199

Deno runtime globals

Node: "node"

Defined in: core/src/types.ts:202

Only Node.js globals (process, __dirname, etc.)

Universal: "universal"

Defined in: core/src/types.ts:205

Both Node.js and Browser globals (default)

Worker: "worker"

Defined in: core/src/types.ts:208

Service Worker and Fetch API globals for edge runtimes


Defined in: core/src/types.ts:214

Enum for settings options in ESLint

NoDefaultIgnores: "no-default-ignores"

Defined in: core/src/types.ts:217

Disable the built-in default ignore globs (dist, build, coverage, etc.).

NoGeneratedCodeIgnores: "no-generated-code-ignores"

Defined in: core/src/types.ts:220

Disable generated-code ignore globs.

NoGitignore: "no-gitignore"

Defined in: core/src/types.ts:223

Disable automatic .gitignore-based ignores.


Defined in: core/src/types.ts:229

Enum for testing frameworks and environments

Cypress: "cypress"

Defined in: core/src/types.ts:230

Jest: "jest"

Defined in: core/src/types.ts:231

JestDom: "jest-dom"

Defined in: core/src/types.ts:232

Playwright: "playwright"

Defined in: core/src/types.ts:233

TestingLibrary: "testing-library"

Defined in: core/src/types.ts:234

Vitest: "vitest"

Defined in: core/src/types.ts:235


Defined in: core/src/types.ts:241

Enum for integrating external standalone utilities

Command: "command"

Defined in: core/src/types.ts:242

Cspell: "cspell"

Defined in: core/src/types.ts:243

Docker: "docker"

Defined in: core/src/types.ts:244

GithubActions: "github-actions"

Defined in: core/src/types.ts:245

Jsdoc: "jsdoc"

Defined in: core/src/types.ts:246

Nx: "nx"

Defined in: core/src/types.ts:247

Pnpm: "pnpm"

Defined in: core/src/types.ts:248

Prettier: "prettier"

Defined in: core/src/types.ts:249

Swagger: "swagger"

Defined in: core/src/types.ts:250

Defined in: core/src/types.ts:256

Controls automatic project detection by category.

optional extensions?: boolean

Defined in: core/src/types.ts:257

optional formats?: boolean

Defined in: core/src/types.ts:258

optional frameworks?: boolean

Defined in: core/src/types.ts:259

optional libraries?: boolean

Defined in: core/src/types.ts:260

optional nextMode?: boolean

Defined in: core/src/types.ts:261

optional projects?: boolean

Defined in: core/src/types.ts:262

optional runtime?: boolean

Defined in: core/src/types.ts:263

optional testing?: boolean

Defined in: core/src/types.ts:264

optional tools?: boolean

Defined in: core/src/types.ts:265

optional typescript?: boolean

Defined in: core/src/types.ts:266


Defined in: core/src/types.ts:370

ESLint configuration interface

optional autoFrameworks?: boolean

Defined in: core/src/types.ts:376

Enables bundled framework configs detected from dependencies. Disable this when you want manual framework control only.

optional detectedFrameworks?: DetectedFrameworkName[]

Defined in: core/src/types.ts:382

Frameworks detected from package.json by detectProjectOptions(). In v2, eslintConfig() enables these bundled framework configs by default.

optional detection?: boolean | DetectionOptions

Defined in: core/src/types.ts:388

Enables or disables automatic project detection by category. Use false to disable all detection, or an object for granular control.

optional detectRootDir?: string

Defined in: core/src/types.ts:394

Root directory used for automatic project detection. Defaults to process.cwd().

optional extensions?: ExtensionOption[]

Defined in: core/src/types.ts:397

List of specialized ESLint rules and extensions

optional features?: Partial<Record<OptionalConfigName, boolean>>

Defined in: core/src/types.ts:404

Simple optional-config switchboard. Enables or disables entries from extensions, formats, libraries, testing, and tools using their string names. integrations is an alias for the same map.

optional formats?: FormatOption[]

Defined in: core/src/types.ts:407

Additional non-JS/TS file formats to lint

optional frameworks?: object

Defined in: core/src/types.ts:416

Framework and library specific configurations.

Set a framework to true to use the bundled v2 config from @santi020k/eslint-config-basic, or pass a config array/factory when you need to override the bundled config.

optional angular?: ImportedFramework

optional astro?: ImportedFramework

optional expo?: ImportedFramework

optional hono?: ImportedFramework

optional lit?: ImportedFramework

optional nest?: ImportedFramework

optional next?: ImportedFramework

optional nuxt?: ImportedFramework

optional preact?: ImportedFramework

optional qwik?: ImportedFramework

optional react?: ImportedFramework

optional react-router?: ImportedFramework

New name for Remix projects on React Router v7+.

optional remix?: ImportedFramework

Remix merged into React Router v7 — use react-router instead.

optional slidev?: ImportedFramework

optional solid?: ImportedFramework

optional svelte?: ImportedFramework

optional tanstack-start?: ImportedFramework

TanStack Start (React/Solid full-stack framework).

optional vite?: ImportedFramework

optional vue?: ImportedFramework

optional ignores?: string[]

Defined in: core/src/types.ts:450

Extra global ignore globs (flat config ignores only, no files). Patterns are relative to ESLint’s working directory, like a manual ignore block. Not merged from presets or detection. For projects entries, patterns are not auto-prefixed with the subproject path; use repo-root-relative globs when needed.

optional integrations?: Partial<Record<OptionalConfigName, boolean>>

Defined in: core/src/types.ts:453

List of application-level dependencies configurations

optional libraries?: LibraryOption[]

Defined in: core/src/types.ts:455

optional nextMode?: NextModeOption

Defined in: core/src/types.ts:458

Next.js specific routing mode

optional optionMergeStrategy?: "merge" | "replace"

Defined in: core/src/types.ts:465

Controls how explicit arrays/frameworks combine with auto-detected and preset values.

  • merge (default): union detected + preset + explicit values
  • replace: explicit values fully replace detected/preset values

optional preset?: PresetOption

Defined in: core/src/types.ts:468

High-level configuration preset

optional projectDefaults?: ProjectConfigOptions

Defined in: core/src/types.ts:475

Defaults inherited by every entry in projects. Project-level values override scalar defaults while arrays and option maps merge unless that project uses optionMergeStrategy: 'replace'.

optional projects?: Record<string, ProjectConfigOptions>

Defined in: core/src/types.ts:481

Package-aware subproject configuration for monorepos. Each key is a workspace-relative folder and each value is scoped to that folder.

optional runtime?: RuntimeOption

Defined in: core/src/types.ts:484

Runtime environment preset (Node, Browser, Universal)

optional settings?: SettingOption[]

Defined in: core/src/types.ts:487

List of global settings and behavioral flags

optional strict?: StrictMode

Defined in: core/src/types.ts:495

Severity profile.

  • false / recommended: keep recommended severities
  • true / ci: promote warnings to errors
  • pedantic: promote warnings and enable built-in best-practice rules

optional tailwind?: false | TailwindOptions

Defined in: core/src/types.ts:501

Tailwind CSS plugin options. Providing an object enables the Tailwind integration, while false disables auto-detected Tailwind support.

optional testing?: TestingOption[]

Defined in: core/src/types.ts:504

List of testing frameworks and testing environments

optional testingFiles?: Partial<Record<"cypress" | "jest" | "jest-dom" | "playwright" | "testing-library" | "vitest", string[]>>

Defined in: core/src/types.ts:512

File globs for test integrations when the defaults do not match your project.

For example, set testingFiles.playwright to the folder that contains your Playwright specs when it differs from the built-in defaults.

optional tools?: ToolOption[]

Defined in: core/src/types.ts:515

List of integrations for external standalone tools

optional tsconfigRootDir?: string

Defined in: core/src/types.ts:521

Root directory of the project. Required if multiple candidate TSConfigRootDirs are present.

optional typescript?: boolean | TypeScriptMode | TypeScriptOptions

Defined in: core/src/types.ts:524

Enable TypeScript support with optional settings

optional workspacePrefixes?: string[]

Defined in: core/src/types.ts:537

Monorepo / workspace package scope prefixes that should sort in their own import group, before external npm packages.

Passed to createImportGroups and applied to simple-import-sort/imports automatically — no manual rule override needed.

// Imports from @acme/* sort between internal app code and external npm packages
defineConfig({ workspacePrefixes: ['@acme'] })

Defined in: core/src/rules.ts:35

Options for createImportGroups.

optional workspacePrefixes?: string[]

Defined in: core/src/rules.ts:46

Workspace / monorepo package prefixes that should sort with internal code rather than external npm packages.

They are placed in their own group before the external npm packages group.

// Treat @acme/ui, @acme/shared, etc. as internal
createImportGroups({ workspacePrefixes: ['@acme'] })

Defined in: core/src/types.ts:300

optional cwd?: string

Defined in: core/src/types.ts:305

Working directory used to resolve Tailwind and its entry point. Defaults to detectRootDir, which keeps package-scoped monorepo configs stable.

optional detectComponentClasses?: boolean

Defined in: core/src/types.ts:306

optional entryPoint?: string

Defined in: core/src/types.ts:307

optional ignore?: string[]

Defined in: core/src/types.ts:308

optional noUnknownClasses?: false | "error" | "off" | "warn"

Defined in: core/src/types.ts:309


Defined in: core/src/types.ts:322

optional mode?: TypeScriptMode

Defined in: core/src/types.ts:323

optional project?: string | boolean | string[]

Defined in: core/src/types.ts:324

optional projectService?: boolean

Defined in: core/src/types.ts:325

optional tsconfigRootDir?: string

Defined in: core/src/types.ts:326

ConfigInput = false | null | TSESLint.FlatConfig.Config | TSESLint.FlatConfig.ConfigArray | undefined

Defined in: core/src/config-helpers.ts:91


DetectedFrameworkName = "angular" | "astro" | "expo" | "hono" | "lit" | "nest" | "next" | "nuxt" | "preact" | "qwik" | "react" | "react-router" | "remix" | "slidev" | "solid" | "svelte" | "tanstack-start" | "vite" | "vue"

Defined in: core/src/types.ts:346

Framework names that can be auto-detected by detectProjectOptions. These are informational only — you still need to import and pass the actual framework config via frameworks.<name> in eslintConfig().


ExtensionName = `${Extension}`

Defined in: core/src/types.ts:268


ExtensionOption = Extension | ExtensionName

Defined in: core/src/types.ts:269


FlatConfigArray = TSESLint.FlatConfig.ConfigArray

Defined in: core/src/types.ts:543

Type alias for ESLint flat config array


FormatName = `${Format}`

Defined in: core/src/types.ts:270


FormatOption = Format | FormatName

Defined in: core/src/types.ts:271


ImportedFramework = ((options?) => FlatConfigArray | Promise<FlatConfigArray>) | FlatConfigArray | true | { default: ((options?) => FlatConfigArray | Promise<FlatConfigArray>) | FlatConfigArray; }

Defined in: core/src/types.ts:552

Type for framework option values: true enables the bundled v2 config, or pass a config array, a factory function (sync or async, like the lazy framework factories exported from @santi020k/eslint-config-basic), or an imported module with a default export. Any other value throws a descriptive TypeError (see resolveFramework in @santi020k/eslint-config-basic).


LibraryName = `${Library}`

Defined in: core/src/types.ts:272


LibraryOption = Library | LibraryName

Defined in: core/src/types.ts:273


NextModeName = `${NextMode}`

Defined in: core/src/types.ts:274


NextModeOption = NextMode | NextModeName

Defined in: core/src/types.ts:275


NormalizedStrictMode = "ci" | "pedantic" | "recommended"

Defined in: core/src/compose.ts:5


OptionalBucket = "extensions" | "formats" | "libraries" | "testing" | "tools"

Defined in: core/src/config-helpers.ts:81


OptionalConfigMap = Partial<Record<OptionalConfigName, boolean>>

Defined in: core/src/types.ts:282

Simple opt-in/opt-out map for optional configs. Keys match the public enum string values, so both features: { zod: true } and libraries: [Library.Zod] resolve to the same underlying config.


OptionalConfigName = ExtensionName | FormatName | LibraryName | TestingName | ToolName

Defined in: core/src/types.ts:283


PresetName = `${Preset}`

Defined in: core/src/types.ts:289


PresetOption = Preset | PresetName

Defined in: core/src/types.ts:290


ProjectConfigOptions = Omit<EslintConfigOptions, "projectDefaults" | "projects">

Defined in: core/src/types.ts:558


RuntimeName = `${Runtime}`

Defined in: core/src/types.ts:291


RuntimeOption = Runtime | RuntimeName

Defined in: core/src/types.ts:292


SettingName = `${Setting}`

Defined in: core/src/types.ts:293


SettingOption = Setting | SettingName

Defined in: core/src/types.ts:294


StrictMode = "ci" | "pedantic" | "recommended" | boolean

Defined in: core/src/types.ts:298

Severity profiles for teams adopting the config progressively.


TestingName = `${Testing}`

Defined in: core/src/types.ts:312


TestingOption = Testing | TestingName

Defined in: core/src/types.ts:314


ToolName = `${Tool}`

Defined in: core/src/types.ts:316


ToolOption = Tool | ToolName

Defined in: core/src/types.ts:318


TypeScriptMode = "off" | "strict" | "syntax" | "type-aware"

Defined in: core/src/types.ts:320

const __detectionInternals: object

Defined in: core/src/utils/detection.ts:474

Internal detection helpers exposed for focused unit tests. Do not use these in application code.

clearDetectionCache: () => void

void

collectAllDependencies: (pkg) => DependencyMap

PackageJson

DependencyMap

createDefaultOptions: () => EslintConfigOptions

EslintConfigOptions

createRuntimeSetter: (options) => (runtime) => void

EslintConfigOptions

(runtime) => void

dedupe: <T>(values) => T[]

T

T[] = \[\]

T[]

detectExtensions: (allDeps) => Extension[]

DependencyMap

Extension[]

detectFormats: (allDeps, detectRootDir) => Format[]

DependencyMap

string

Format[]

detectFrameworks: (allDeps, detectRootDir, setRuntime) => DetectedFrameworkName[] | undefined

DependencyMap

string

(runtime) => void

DetectedFrameworkName[] | undefined

detectLibraries: (allDeps) => Library[]

DependencyMap

Library[]

detectNextMode: (allDeps, detectRootDir) => NextMode | undefined

DependencyMap

string

NextMode | undefined

detectProjects: (pkg, detectRootDir) => NonNullable<EslintConfigOptions["projects"]>

PackageJson

string

NonNullable<EslintConfigOptions["projects"]>

detectRuntime: (allDeps, detectRootDir, _detectedFrameworks, setRuntime, frameworkHasSetRuntime) => void

DependencyMap

string

DetectedFrameworkName[] | undefined

(runtime) => void

boolean = false

void

detectTesting: (allDeps) => Testing[]

DependencyMap

Testing[]

detectTools: (allDeps, detectRootDir) => Tool[]

DependencyMap

string

Tool[]

detectTypescript: (detectRootDir) => boolean

string

boolean

parsePnpmWorkspacePatterns: (detectRootDir) => string[]

string

string[]

pathExists: (path) => boolean

string

boolean

resolvePreset: (options) => Preset

EslintConfigOptions

Preset


const coreConfig: TSESLint.FlatConfig.ConfigArray

Defined in: core/src/index.ts:164

Core JavaScript ESLint configuration (Universal runtime by default) This is included by default in all configurations


const DEFAULT_IGNORES: string[]

Defined in: core/src/config-helpers.ts:22


const GENERATED_CODE_IGNORES: string[]

Defined in: core/src/config-helpers.ts:60


const gitignore: TSESLint.FlatConfig.ConfigArray

Defined in: core/src/settings/gitignore.ts:13


const GLOB_ASTRO: string[]

Defined in: core/src/types.ts:13


const GLOB_JS: string[]

Defined in: core/src/types.ts:6

Global file patterns for JavaScript-compatible files


const GLOB_JS_TS: string[]

Defined in: core/src/types.ts:10


const GLOB_JS_TS_ALL: string[]

Defined in: core/src/types.ts:15


const GLOB_SLOT: string[]

Defined in: core/src/types.ts:14


const GLOB_SVELTE: string[]

Defined in: core/src/types.ts:12


const GLOB_TS: string[]

Defined in: core/src/types.ts:8


const GLOB_VIRTUAL_TS: string[]

Defined in: core/src/types.ts:17


const GLOB_VUE: string[]

Defined in: core/src/types.ts:11


const groups: string[][]

Defined in: core/src/rules.ts:144

Default import sort groups used by the core config. Export allows downstream packages and end users to reference or extend them.


const OPTIONAL_BUCKETS: object

Defined in: core/src/config-helpers.ts:83

readonly extensions: Extension[]

readonly formats: Format[]

readonly libraries: Library[]

readonly testing: Testing[]

readonly tools: Tool[]


const ReactConfigKeys: readonly ["react", "next", "expo", "react-router", "remix"]

Defined in: core/src/types.ts:333

Array of configurations that require React Note: These are now used internally for auto-detection and globals


const rules: TSESLint.Linter.RulesRecord

Defined in: core/src/rules.ts:148


const TAILWIND_ENTRYPOINT_CANDIDATES: string[]

Defined in: core/src/config-helpers.ts:72

applyArrayControls(controls, detected): object

Defined in: core/src/config-helpers.ts:284

Required<DetectionOptions>

EslintConfigOptions

object

detectedFrameworks: DetectedFrameworkName[] | undefined

extensions: ExtensionOption[] | undefined

formats: FormatOption[] | undefined

libraries: LibraryOption[] | undefined

testing: TestingOption[] | undefined

tools: ToolOption[] | undefined


applyDetectionControls(detected, detection, defaults?): EslintConfigOptions

Defined in: core/src/config-helpers.ts:301

EslintConfigOptions

boolean | DetectionOptions | undefined

Partial<Required<DetectionOptions>>

EslintConfigOptions


applyFeatureDisables<T>(values, options, bucket): T[]

Defined in: core/src/config-helpers.ts:137

T extends string

T[]

EslintConfigOptions | undefined

OptionalBucket

T[]


applyScalarControls(controls, detected): object

Defined in: core/src/config-helpers.ts:293

Required<DetectionOptions>

EslintConfigOptions

object

nextMode: NextModeOption | undefined

preset: PresetOption | undefined

projects: Record<string, ProjectConfigOptions> | undefined

runtime: RuntimeOption | undefined

typescript: boolean | TypeScriptMode | TypeScriptOptions | undefined


applyStrictMode(configs, strict): ConfigArray

Defined in: core/src/compose.ts:32

Applies strict mode by promoting all ‘warn’ rules to ‘error’.

ConfigArray

boolean | NormalizedStrictMode | undefined

ConfigArray


applyStrictProfileDefaults(extensions, strict): Extension[]

Defined in: core/src/config-helpers.ts:316

Extension[]

StrictMode | undefined

Extension[]


createCoreConfig(runtime?): ConfigArray

Defined in: core/src/index.ts:72

Creates the core config with the specified runtime globals

Runtime = Runtime.Universal

ConfigArray


createImportGroups(options?): string[][]

Defined in: core/src/rules.ts:70

Creates the groups array for simple-import-sort/imports.

Group ordering (each becomes its own import section):

  1. Side effects — polyfills, reflect-metadata, zone.js
  2. Node built-ins — node:fs and legacy fs
  3. Framework virtual modules — Vite virtual:, Astro astro:, SvelteKit $app/$env/$lib, Nuxt #imports
  4. Internal UI / presentation layer — components/, @/pages/, etc.
  5. Internal application / logic layer — store/, @/hooks/, etc.
  6. Style imports — .css, .scss, .sass, @/styles/theme.css, ./Button.module.css
  7. Workspace packages (when workspacePrefixes is set) — @acme/shared
  8. External npm packages — react, @tanstack/query
  9. Remaining internal aliases — @/, ~/, #, custom extras
  10. Parent-relative imports — ../
  11. Same-directory relative imports — ./

Why internal layers and styles come before externals: Bare internal paths like components/Button and bare CSS like theme.css match ^@?\w. Placing these groups first ensures correct classification before falling through to the npm packages group.

ImportGroupOptions = {}

string[][]


createModuleLoader(resolveFn): <T>(specifier) => Promise<T>

Defined in: core/src/lazy.ts:23

(specifier) => string

<T>(specifier) => Promise<T>


detectProjectOptions(detectRootDir?): EslintConfigOptions

Defined in: core/src/utils/detection.ts:500

Automatically detects project settings based on package.json content

string = ...

Root directory used for dependency/file detection (defaults to process.cwd())

EslintConfigOptions

Detected ESLint configuration options


findTailwindEntryPoint(rootDir): string | undefined

Defined in: core/src/config-helpers.ts:361

string

string | undefined


flattenConfigInputs(configs): ConfigArray

Defined in: core/src/config-helpers.ts:93

ConfigInput[]

ConfigArray


getFeatureEntries(options, bucket, enabled): string[]

Defined in: core/src/config-helpers.ts:126

EslintConfigOptions | undefined

OptionalBucket

boolean

string[]


getGlobalsForRuntime(runtime?): GlobalsConfig | undefined

Defined in: core/src/index.ts:22

Returns the appropriate globals for the given runtime option

Runtime = Runtime.Universal

GlobalsConfig | undefined


getStrictMode(explicitStrict, presetStrict): StrictMode | undefined

Defined in: core/src/config-helpers.ts:311

StrictMode | undefined

StrictMode | undefined

StrictMode | undefined


hasReactConfig(options?): boolean

Defined in: core/src/utils/index.ts:9

Checks if the provided EslintConfigOptions includes any React-specific configurations.

EslintConfigOptions

ESLint configuration options.

boolean

True if any React configuration is detected, false otherwise.


hasTsconfig(rootDir): boolean

Defined in: core/src/config-helpers.ts:325

string

boolean


isOptionalBucketValue(bucket, value): boolean

Defined in: core/src/config-helpers.ts:120

OptionalBucket

string

boolean


loadModule<T>(specifier): Promise<T>

Defined in: core/src/lazy.ts:48

T = unknown

string

Promise<T>


mergeArrayOption<T>(detectedValues, presetValues, explicitValues, strategy): T[]

Defined in: core/src/config-helpers.ts:99

T

T[]

T[] | undefined

T[] | undefined

"merge" | "replace"

T[]


mergeFrameworkOption(detectedFrameworks, presetFrameworks, explicitFrameworks, strategy): object

Defined in: core/src/config-helpers.ts:168

Record<string, ImportedFramework>

Record<string, ImportedFramework> | undefined

Record<string, ImportedFramework> | undefined

"merge" | "replace"

optional angular?: ImportedFramework

optional astro?: ImportedFramework

optional expo?: ImportedFramework

optional hono?: ImportedFramework

optional lit?: ImportedFramework

optional nest?: ImportedFramework

optional next?: ImportedFramework

optional nuxt?: ImportedFramework

optional preact?: ImportedFramework

optional qwik?: ImportedFramework

optional react?: ImportedFramework

optional react-router?: ImportedFramework

New name for Remix projects on React Router v7+.

optional remix?: ImportedFramework

Remix merged into React Router v7 — use react-router instead.

optional slidev?: ImportedFramework

optional solid?: ImportedFramework

optional svelte?: ImportedFramework

optional tanstack-start?: ImportedFramework

TanStack Start (React/Solid full-stack framework).

optional vite?: ImportedFramework

optional vue?: ImportedFramework


mergeOptionalBucket<T>(bucket, detectedValues, presetValues, explicitValues, options, strategy): T[]

Defined in: core/src/config-helpers.ts:147

T extends string

OptionalBucket

T[]

T[] | undefined

T[] | undefined

EslintConfigOptions | undefined

"merge" | "replace"

T[]


mergeProjectOptions(defaults, project): ProjectConfigOptions

Defined in: core/src/config-helpers.ts:218

Applies shared monorepo defaults to one project configuration. Scalar values are overridden by the project, while arrays and option maps inherit and merge unless the project selects the replace strategy.

ProjectConfigOptions

ProjectConfigOptions

ProjectConfigOptions


normalizeStrictMode(strict): NormalizedStrictMode

Defined in: core/src/compose.ts:7

boolean | NormalizedStrictMode | undefined

NormalizedStrictMode


patchImportGroups(allConfigs, workspacePrefixes): ConfigArray

Defined in: core/src/config-helpers.ts:429

ConfigArray

string[]

ConfigArray


patchImportGroupsConfig(config, workspacePatterns): Config

Defined in: core/src/config-helpers.ts:401

Config

string[]

Config


resolveDetectionOptions(detection, defaults?): Required<DetectionOptions>

Defined in: core/src/config-helpers.ts:250

boolean | DetectionOptions | undefined

Partial<Required<DetectionOptions>> = {}

Required<DetectionOptions>


resolveTsconfigRootDir(rootDir, typescript, explicitRootDir): string | undefined

Defined in: core/src/config-helpers.ts:351

string

boolean | TypeScriptMode | TypeScriptOptions | undefined

string | undefined

string | undefined


resolveTypescriptOptions(typescript): false | TypeScriptOptions & object

Defined in: core/src/config-helpers.ts:334

boolean | TypeScriptMode | TypeScriptOptions | undefined

false | TypeScriptOptions & object


scopeConfigToProject(config, projectPath): Config

Defined in: core/src/config-helpers.ts:382

Config

string

Config


scopeFilePattern(projectPath, pattern): unknown

Defined in: core/src/config-helpers.ts:366

string

unknown

unknown


toUniqueArray<T>(values): T[]

Defined in: core/src/config-helpers.ts:20

T

T[]

T[]

Renames and re-exports coreConfig

Did this page help?

One click helps us spot documentation that needs another pass. No personal data is sent.