Organize configuration settings logically and avoid redundancy in project configuration files. Group related options into appropriate sections, eliminate duplicated settings (especially those already provided by extended configurations), and document non-obvious choices with explanatory comments.
TypeScript configurations should:
// In tsconfig.json
{
"extends": "@tsconfig/ember",
"compilerOptions": {
/* Bundler mode */
"moduleResolution": "bundler",
"allowImportingTsExtensions": true,
- "isolatedModules": true,
+ "verbatimModuleSyntax": true, // In "Linting" section below
/* Linting */
"strict": true,
+ "verbatimModuleSyntax": true, // Moved from "Bundler mode"
- "strictBuiltinIteratorReturn": true, // Redundant with "strict: true"
}
}
For new plugins or packages, prefer modern module configurations:
{
"name": "@vitejs/plugin-example",
"type": "module", // Prefer ESM for new packages
"files": ["dist"]
}
This approach improves maintainability and helps onboard new developers by making configuration intent clearer while reducing conflicting settings.
Enter the URL of a public GitHub repository