@iwf-web/tsconfig
v1.1.0
Published
Standard tsconfig for IWF projects
Downloads
134
Readme
IWF TypeScript Config
Standard TypeScript configurations for IWF projects, optimized for React development with Vite.
Configurations
This package provides the following TypeScript configurations:
| Configuration | Description |
| -------------- | ---------------------------------------------------- |
| react-strict | Strict TypeScript settings for React + Vite projects |
Getting Started
Prerequisites
- Node.js 18 or higher
- pnpm, npm, or yarn
Installation
pnpm add -D @iwf-web/tsconfigOr with npm:
npm install -D @iwf-web/tsconfigpnpm Configuration
When using pnpm, you need to hoist the base tsconfig packages so TypeScript can resolve them. Add the following to your pnpm-workspace.yaml:
publicHoistPattern:
- "@tsconfig/*"Or in your .npmrc:
public-hoist-pattern[]=@tsconfig/*Usage
Extend the configuration in your tsconfig.json:
{
"extends": "@iwf-web/tsconfig/react-strict/tsconfig.json",
"compilerOptions": {
"baseUrl": ".",
"paths": {
"@/*": ["./src/*"]
}
},
"include": ["src"]
}Configuration Details
react-strict
This configuration extends three base configurations for comprehensive TypeScript support:
@tsconfig/recommended- Recommended TypeScript settings@tsconfig/vite-react- Optimized settings for Vite + React@tsconfig/strictest- Strictest type checking rules
Customizations
The following settings are relaxed from the strictest defaults for practical development:
| Setting | Value | Reason |
| ------------------------------------ | ------- | ---------------------------------------------------- |
| erasableSyntaxOnly | false | Allows enums, namespaces, and classes |
| noPropertyAccessFromIndexSignature | false | Allows dot notation for index signatures |
| noImplicitAny | false | Permits implicit any types where inference fails |
| exactOptionalPropertyTypes | false | Allows undefined assignment to optional properties |
Contributing
Please read CONTRIBUTING.md for details on our code of conduct and the process for submitting pull requests.
This project uses Conventional Commits for automated releases and changelog generation.
Versioning
We use SemVer for versioning. For available versions, see the tags on this repository.
Authors
Special thanks for all the people who had helped this project so far
- Manuele - D3strukt0r
See also the full list of contributors who participated in this project.
I would like to join this list. How can I help the project?
We're currently looking for contributions for the following:
- [ ] Bug fixes
- [ ] Translations
- [ ] etc...
For more information, please refer to our CONTRIBUTING.md guide.
License
This project is licensed under the MIT License - see the LICENSE.txt file for details.
Acknowledgments
This project currently uses no third-party libraries or copied code.
