@next-friday/create-app 2.1.4 → 2.1.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@next-friday/create-app",
3
- "version": "2.1.4",
3
+ "version": "2.1.5",
4
4
  "description": "Create a Next Friday project from a template.",
5
5
  "keywords": [
6
6
  "create",
@@ -0,0 +1,12 @@
1
+ # Descriptive Naming
2
+
3
+ A path or identifier names what it holds. A reader knows what a file, directory, module, or route contains without opening it.
4
+
5
+ - **Name the responsibility.** Each file and directory name states the feature, domain concept, or role it holds.
6
+ - **No organization names.** Do not put an organization, brand, customer, or tenant name in a path or identifier. User-visible text that names the organization reads it from one configured source, not from a literal.
7
+ - **Distinguishable siblings.** Qualify a generic word such as `settings`, `config`, `utils`, `helpers`, `common`, or `detail` with its domain noun. Files that sit together each name the role they play.
8
+ - **Do not copy a name that breaks this rule.** Sibling style does not override it. Give new code a descriptive name and report the existing name to the user.
9
+
10
+ Folder names and file suffixes that the framework or toolchain requires follow that tool's convention.
11
+
12
+ _Completion criterion_: Every path and identifier the diff adds names its responsibility, contains no organization name, and is distinguishable from its siblings.
@@ -2,6 +2,6 @@
2
2
 
3
3
  Treat each application, package, or component as one author's work. Match representative siblings for layout, naming, exports, helpers, composition, errors, and abstraction. Use the language's standard idiom when no sibling exists. Name the convention when a conflict affects the design.
4
4
 
5
- Keep execution flow collocated. Extract a helper when multiple callers share it. One term per concept; parallel symbols share grammatical shape. Comments follow `code-comments.md`.
5
+ Keep execution flow collocated. Extract a helper when multiple callers share it. One term per concept; parallel symbols share grammatical shape. Comments follow `code-comments.md`. Names follow `descriptive-naming.md`, which matching siblings does not override.
6
6
 
7
7
  Keep edits in the requested component, its call sites, and the workspace metadata it needs. Cross-project convention changes are in scope only when the task names them.
@@ -0,0 +1 @@
1
+ @../../.agents/rules/descriptive-naming.md
@@ -9,6 +9,7 @@ Review pull requests against the project's agent guide and rules:
9
9
  - [Current State](../.agents/rules/current-state-authority.md)
10
10
  - [Demand-Driven Configuration](../.agents/rules/demand-driven-configuration.md)
11
11
  - [Dependencies](../.agents/rules/dependency-security.md)
12
+ - [Descriptive Naming](../.agents/rules/descriptive-naming.md)
12
13
  - [Test Admission](../.agents/rules/deterministic-testing.md)
13
14
  - [Diagnostics](../.agents/rules/diagnostics-and-error-handling.md)
14
15
  - [Git Workflow](../.agents/rules/git-workflow.md)
@@ -0,0 +1,17 @@
1
+ ---
2
+ description: "Descriptive naming: paths and identifiers name what they hold, without organization names"
3
+ alwaysApply: true
4
+ ---
5
+
6
+ # Descriptive Naming
7
+
8
+ A path or identifier names what it holds. A reader knows what a file, directory, module, or route contains without opening it.
9
+
10
+ - **Name the responsibility.** Each file and directory name states the feature, domain concept, or role it holds.
11
+ - **No organization names.** Do not put an organization, brand, customer, or tenant name in a path or identifier. User-visible text that names the organization reads it from one configured source, not from a literal.
12
+ - **Distinguishable siblings.** Qualify a generic word such as `settings`, `config`, `utils`, `helpers`, `common`, or `detail` with its domain noun. Files that sit together each name the role they play.
13
+ - **Do not copy a name that breaks this rule.** Sibling style does not override it. Give new code a descriptive name and report the existing name to the user.
14
+
15
+ Folder names and file suffixes that the framework or toolchain requires follow that tool's convention.
16
+
17
+ _Completion criterion_: Every path and identifier the diff adds names its responsibility, contains no organization name, and is distinguishable from its siblings.
@@ -7,6 +7,6 @@ alwaysApply: true
7
7
 
8
8
  Treat each application, package, or component as one author's work. Match representative siblings for layout, naming, exports, helpers, composition, errors, and abstraction. Use the language's standard idiom when no sibling exists. Name the convention when a conflict affects the design.
9
9
 
10
- Keep execution flow collocated. Extract a helper when multiple callers share it. One term per concept; parallel symbols share grammatical shape. Comments follow `code-comments.md`.
10
+ Keep execution flow collocated. Extract a helper when multiple callers share it. One term per concept; parallel symbols share grammatical shape. Comments follow `code-comments.md`. Names follow `descriptive-naming.md`, which matching siblings does not override.
11
11
 
12
12
  Keep edits in the requested component, its call sites, and the workspace metadata it needs. Cross-project convention changes are in scope only when the task names them.
@@ -18,6 +18,9 @@
18
18
  "description": "Dependencies: add a package only when code or a contract uses it",
19
19
  "globs": ["package.json", "pnpm-lock.yaml", "pnpm-workspace.yaml"]
20
20
  },
21
+ "descriptive-naming": {
22
+ "description": "Descriptive naming: paths and identifiers name what they hold, without organization names"
23
+ },
21
24
  "deterministic-testing": {
22
25
  "description": "Test admission: add a case only when it catches a defect current tests miss",
23
26
  "globs": ["**/*.test.ts"]
@@ -18,6 +18,9 @@
18
18
  "description": "Dependencies: add a package only when code or a contract uses it",
19
19
  "globs": ["package.json", "pnpm-lock.yaml", "pnpm-workspace.yaml"]
20
20
  },
21
+ "descriptive-naming": {
22
+ "description": "Descriptive naming: paths and identifiers name what they hold, without organization names"
23
+ },
21
24
  "deterministic-testing": {
22
25
  "description": "Test admission: add a case only when it catches a defect current tests miss",
23
26
  "globs": ["**/*.test.ts", "**/*.test.tsx"]
@@ -18,6 +18,9 @@
18
18
  "description": "Dependencies: add a package only when code or a contract uses it",
19
19
  "globs": ["package.json", "pnpm-lock.yaml", "pnpm-workspace.yaml"]
20
20
  },
21
+ "descriptive-naming": {
22
+ "description": "Descriptive naming: paths and identifiers name what they hold, without organization names"
23
+ },
21
24
  "deterministic-testing": {
22
25
  "description": "Test admission: add a case only when it catches a defect current tests miss",
23
26
  "globs": ["**/*.test.ts"]
@@ -18,6 +18,9 @@
18
18
  "description": "Dependencies: add a package only when code or a contract uses it",
19
19
  "globs": ["package.json", "pnpm-lock.yaml", "pnpm-workspace.yaml"]
20
20
  },
21
+ "descriptive-naming": {
22
+ "description": "Descriptive naming: paths and identifiers name what they hold, without organization names"
23
+ },
21
24
  "deterministic-testing": {
22
25
  "description": "Test admission: add a case only when it catches a defect current tests miss",
23
26
  "globs": ["**/*.test.ts", "**/*.test.tsx"]
@@ -18,6 +18,9 @@
18
18
  "description": "Dependencies: add a package only when code or a contract uses it",
19
19
  "globs": ["package.json", "pnpm-lock.yaml", "pnpm-workspace.yaml"]
20
20
  },
21
+ "descriptive-naming": {
22
+ "description": "Descriptive naming: paths and identifiers name what they hold, without organization names"
23
+ },
21
24
  "deterministic-testing": {
22
25
  "description": "Test admission: add a case only when it catches a defect current tests miss",
23
26
  "globs": ["**/*.test.ts", "**/*.test.tsx"]