Back to Medusa

{metadata.title}

www/apps/resources/app/lint/rules/route-dynamic-folder-syntax/page.mdx

2.17.01.3 KB
Original Source

export const metadata = { title: route-dynamic-folder-syntax - ESLint plugin rules, }

{metadata.title}

This rule requires dynamic route parameters to use [param] folder syntax and disallows them as the first segment of a route.

Severity

error. This rule is enabled in the recommended preset.

What it Targets

This rule targets route folders in your project's src/api directory and dynamic folders in your project's src/admin/routes directory. It reports folders that use invalid bracket syntax, such as [[id]] or [...slug], and routes that start with a dynamic segment.

The following code is reported by the rule, since [[id]] isn't valid syntax:

ts
export const GET = (req, res) => {}

Instead, use single-bracket syntax with an identifier name:

ts
export const GET = (req, res) => {}

Why it's Important

Medusa only recognizes the [param] folder syntax for dynamic parameters, and a route can't start with a dynamic segment. Other patterns aren't matched, so the route isn't registered as you expect.

Learn more in the Route Parameters documentation.

Fixable

This rule isn't auto-fixable.