How do the frameworks do it?
| framework | generation cmd | files |
|---|---|---|
| nextjs | ||
| vite (vanilla ) | ||
| vite react | ||
| Create React App |
| { | |
| "compilerOptions": { | |
| "target": "es5", | |
| "lib": [ | |
| "dom", | |
| "dom.iterable", | |
| "esnext" | |
| ], | |
| "allowJs": true, | |
| "skipLibCheck": true, | |
| "esModuleInterop": true, | |
| "allowSyntheticDefaultImports": true, | |
| "strict": true, | |
| "forceConsistentCasingInFileNames": true, | |
| "noFallthroughCasesInSwitch": true, | |
| "module": "esnext", | |
| "moduleResolution": "node", | |
| "resolveJsonModule": true, | |
| "isolatedModules": true, | |
| "noEmit": true, | |
| "jsx": "react-jsx" | |
| }, | |
| "include": [ | |
| "src" | |
| ] | |
| } |
| { | |
| "compilerOptions": { | |
| "lib": ["dom", "dom.iterable", "esnext"], | |
| "allowJs": true, | |
| "skipLibCheck": true, | |
| "strict": true, | |
| "noEmit": true, | |
| "esModuleInterop": true, | |
| "module": "esnext", | |
| "moduleResolution": "bundler", | |
| "resolveJsonModule": true, | |
| "isolatedModules": true, | |
| "jsx": "preserve", | |
| "incremental": true, | |
| "plugins": [ | |
| { | |
| "name": "next" | |
| } | |
| ], | |
| "paths": { | |
| "@/*": ["./src/*"] | |
| } | |
| }, | |
| "include": ["next-env.d.ts", "**/*.ts", "**/*.tsx", ".next/types/**/*.ts"], | |
| "exclude": ["node_modules"] | |
| } |
| { | |
| "compilerOptions": { | |
| "target": "ES2020", | |
| "useDefineForClassFields": true, | |
| "module": "ESNext", | |
| "lib": ["ES2020", "DOM", "DOM.Iterable"], | |
| "skipLibCheck": true, | |
| /* Bundler mode */ | |
| "moduleResolution": "bundler", | |
| "allowImportingTsExtensions": true, | |
| "resolveJsonModule": true, | |
| "isolatedModules": true, | |
| "noEmit": true, | |
| /* Linting */ | |
| "strict": true, | |
| "noUnusedLocals": true, | |
| "noUnusedParameters": true, | |
| "noFallthroughCasesInSwitch": true | |
| }, | |
| "include": ["src"] | |
| } |
| { | |
| "compilerOptions": { | |
| "target": "ES2020", | |
| "useDefineForClassFields": true, | |
| "lib": ["ES2020", "DOM", "DOM.Iterable"], | |
| "module": "ESNext", | |
| "skipLibCheck": true, | |
| /* Bundler mode */ | |
| "moduleResolution": "bundler", | |
| "allowImportingTsExtensions": true, | |
| "resolveJsonModule": true, | |
| "isolatedModules": true, | |
| "noEmit": true, | |
| "jsx": "react-jsx", | |
| /* Linting */ | |
| "strict": true, | |
| "noUnusedLocals": true, | |
| "noUnusedParameters": true, | |
| "noFallthroughCasesInSwitch": true | |
| }, | |
| "include": ["src"], | |
| "references": [{ "path": "./tsconfig.node.json" }] | |
| } |
| { | |
| "compilerOptions": { | |
| "composite": true, | |
| "skipLibCheck": true, | |
| "module": "ESNext", | |
| "moduleResolution": "bundler", | |
| "allowSyntheticDefaultImports": true, | |
| "strict": true | |
| }, | |
| "include": ["vite.config.ts"] | |
| } |