Important: This documentation covers Yarn 1 (Classic).
For Yarn 2+ docs and migration guide, see yarnpkg.com.

Package detail

@kikiutils/tsconfigs

kikiutils364MIT5.0.4

Preconfigured TypeScript config files for stricter type checking and multi-environment support.

bun, config, module-target, strict-mode, ts, tsconfig, tsconfig-base, tsconfig-extends, tsconfig-variants, typescript, typescript-config, typescript-settings

readme

@kikiutils/tsconfigs

npm version npm downloads License

Preconfigured TypeScript config files for stricter type checking and multi-environment support.

Features

  • ⚙️ Preconfigured tsconfig with strict mode, stricter type checking (isolatedModules, noUncheckedSideEffectImports), and clean ESM support
  • 🧬 Easy inheritance via the extends field in tsconfig
  • 🔀 Multiple tsconfig variants to support different module and target settings
  • 🧪 Shared Jest testing config for consistent test setup
  • 🍞 Includes official Bun settings for seamless integration

Installation

Using pnpm:

pnpm add -D @kikiutils/tsconfigs

You can also use yarn, npm, or bun.

Usage

The base configuration is tsconfig.base.json. You can extend it directly or pick one that matches your desired module and target.

Here's an example of a typical tsconfig.json setup:

{
  "extends": "@kikiutils/tsconfigs/esnext/es2022.json",
  "compilerOptions": {
    "declaration": true,
    "declarationDir": "./dist",
    "declarationMap": true,
    "emitDeclarationOnly": true
  },
  "include": ["./src"]
}

The extends path is structured as:

@kikiutils/tsconfigs/<module>/<target>.json

For example, to use CommonJS as the module and ES2021 as the target, set:

"extends": "@kikiutils/tsconfigs/commonjs/es2021.json"

For unit testing with Jest, you can extend the shared Jest config:

"extends": "@kikiutils/tsconfigs/jest.json"

[!NOTE] All paths and file names are lowercase.

🍞 If you're using the Bun runtime, simply use:

"extends": "@kikiutils/tsconfigs/bun.json"

Available modules

  • AMD
  • CommonJS
  • ES6
  • ES2015
  • ES2020
  • ES2022
  • ESNext
  • Node16
  • Node18
  • NodeNext
  • None
  • Preserve
  • System
  • UMD

Available targets

  • ES3
  • ES5
  • ES6
  • ES2015
  • ES2016
  • ES2017
  • ES2018
  • ES2019
  • ES2020
  • ES2021
  • ES2022
  • ES2023
  • ES2024
  • ESNext

License

MIT License

changelog

Changelog

v5.0.4

compare changes

🏡 Chore

❤️ Contributors

  • kiki-kanri

v5.0.3

compare changes

🏡 Chore

  • Split tsconfig and create build-specific config for production builds (564b6d2)
  • vitest: Configure coverage to collect files only under src/ (e2c7f65)
  • Remove all test and coverage related dependencies and configurations (c980a5d)

❤️ Contributors

  • kiki-kanri

v5.0.2

compare changes

📖 Documentation

  • Update README badges urls (499bc71)
  • Replace %2F with / in badge URLs in README (4aaf916)
  • Update README (9374681)

🏡 Chore

  • Format script (16ca049)
  • Update file permissions after installing or updating dependencies (d141f76)
  • Add --hideAuthorEmail flag to bumplog command (382091b)
  • Add typecheck command to package.json scripts (2a1f7e0)
  • Rename type-check command to typecheck (d5ccc52)
  • Rename jest.config.js to jest.config.mjs (76371a1)
  • Reorder lint, test, and build steps in release command (b63dcb4)
  • Add and update configurations for future test setups (5324488)
  • Disable isolatedDeclarations in tsconfig (ed1636f)
  • Update modify-files-permissions.sh (89f72e3)
  • Upgrade dependencies and format code (088efbc)
  • Add option to upgrade-dependencies.sh to clean node_modules and pnpm-lock.yaml before upgrading (e542b14)
  • Upgrade dependencies (d3ee5a7)
  • Ensure all scripts change to their own directory before execution (9be5fbf)
  • Update ignore files (c81c294)
  • scripts: Ensure all scripts cd to their current directory correctly (5362c3b)
  • Set --max-warnings=0 for lint and lint:fix (bffe476)
  • Set eslint config to enable lib mode (59e03e4)
  • Disable ts/explicit-function-return-type eslint rule (5190f6b)
  • Lint code (f8f0974)
  • test: Migrate from jest to vitest (9a9d869)

✅ Tests

🤖 CI

  • Add test github workflow config file (dd421d1)
  • Update test workflow (1519e46)
  • Update condition for uploading to Codecov in workflow job (39851ac)

❤️ Contributors

  • kiki-kanri

v5.0.1

compare changes

🩹 Fixes

  • Include Jest config in npm pack (48ea38b)

❤️ Contributors

  • kiki-kanri

v5.0.0

compare changes

🚀 Enhancements

  • ⚠️ Update base tsconfig (5149bef)
  • Add shared Jest config (ba5dd3d)

📖 Documentation

🏡 Chore

  • Remove pnpm-workspace.yaml and configure pnpm.onlyBuiltDependencies in package.json (45c738a)
  • Format bun config file (3a522da)

⚠️ Breaking Changes

  • ⚠️ Update base tsconfig (5149bef)

❤️ Contributors

  • kiki-kanri

v4.1.1

compare changes

📖 Documentation

  • Update package description and keywords (73e8b5a)

❤️ Contributors

  • kiki-kanri

v4.1.0

compare changes

🚀 Enhancements

  • Add Node18 module and ES2024 target (1726c00)

💅 Refactors

📖 Documentation

📦 Build

  • Update generate process to run generate.ts directly with Node.js (cb1939d)
  • Update build-related configurations (07941e9)
  • Add type-check script to package.json and run it during release (2b2426f)

🏡 Chore

  • Upgrade dependencies (354b10f)
  • Remove moduleResolution setting from Bun configuration (48cf5fc)

❤️ Contributors

  • kiki-kanri

v4.0.1

compare changes

💅 Refactors

  • Update import style for fs-related functions (42412e7)

🏡 Chore

  • Set allowSyntheticDefaultImports to false (eba4e7d)

❤️ Contributors

  • kiki-kanri

v4.0.0

compare changes

🏡 Chore

  • ⚠️ Change base tsconfig moduleResolution to bundler (e798831)
  • Upgrade dependencies (17f11ed)
  • Format code (396b668)

⚠️ Breaking Changes

  • ⚠️ Change base tsconfig moduleResolution to bundler (e798831)

❤️ Contributors

  • kiki-kanri

v3.0.3

compare changes

🏡 Chore

  • Upgrade dependencies (71e71b6)
  • Replace Prettier with ESLint, add related files, and update VSCode settings (3900498)
  • Modify scripts in package.json (70e8e18)
  • Upgrade dependencies (7759a8e)
  • Upgrade dependencies and set pnpm.onlyBuiltDependencies in package.json (5dbdead)
  • Update repository URL (067bbb3)
  • Add tsconfig.base.json to eslint ignore files (c344075)

🎨 Styles

❤️ Contributors

  • kiki-kanri

v3.0.2

compare changes

📖 Documentation

  • Update README (3c45f59)
  • Update descriptions in package.json and README (a100810)

🏡 Chore

  • Update script (9f2f5af)
  • Upgrade dependencies (f8f67cf)
  • Add release script to package.json and install dependencies (0fe04b8)

🎨 Styles

  • Reorder badge URLs in README (a47a57f)

❤️ Contributors

  • kiki-kanri

v3.0.1

compare changes

🩹 Fixes

  • Set compilerOptions.verbatimModuleSyntax to false in some module config files (9dba762)

💅 Refactors

  • Rewrite code to generate config files (7323d63)

🏡 Chore

  • Remove invalid config files (d78c423)
  • Update tsconfig.base.json (39412a1)
  • Update build and publish process (a666e2b)
  • Update keywords in package.json (ee7872e)
  • Remove .npmignore file (4869b0f)

❤️ Contributors

  • kiki-kanri

v3.0.0

compare changes

🚀 Enhancements

  • Add code to generate config files (1ec1a44)

🏡 Chore

  • Update .gitignore (ccb93c1)
  • Add .npmignore file (78e6829)
  • Remove all config files except bun and base (d3b13f7)
  • Update .gitignore (7871a0d)
  • Update package.json and README (b52c637)

❤️ Contributors

  • kiki-kanri

v2.2.0

compare changes

🚀 Enhancements

📖 Documentation

❤️ Contributors

  • kiki-kanri

v2.1.0

compare changes

🚀 Enhancements

  • Add NodeNext module files (561c0d7)

❤️ Contributors

  • kiki-kanri

v2.0.1

compare changes

🩹 Fixes

  • Remove unsupported files and options (6f251f9)

🏡 Chore

  • Update author field in package.json (5a11a7d)

❤️ Contributors

  • kiki-kanri

v2.0.0

compare changes

🚀 Enhancements

  • ⚠️ Enable verbatimModuleSyntax (27b3e85)

🏡 Chore

  • Standardize package.json format (777d52a)

⚠️ Breaking Changes

  • ⚠️ Enable verbatimModuleSyntax (27b3e85)

❤️ Contributors

  • kiki-kanri

v1.0.0

compare changes

🚀 Enhancements

  • Add json schema setting (3584bfc)
  • Add cjs 2022 and 2023 target (eb6880d)

💅 Refactors

  • Restructure directory for module/target configuration (abd1024)

📖 Documentation

🏡 Chore

  • Change package.json files setting (aebec88)

❤️ Contributors

  • kiki-kanri

v0.2.1

compare changes

🩹 Fixes

  • Fixed incorrect module value of esm2021 (b70d689)

❤️ Contributors

  • kiki-kanri

v0.2.0

compare changes

🚀 Enhancements

🩹 Fixes

  • Disable base config baseUrl and paths fields (b1b180e)

📖 Documentation

❤️ Contributors

  • kiki-kanri

v0.1.1

compare changes

📖 Documentation

  • Edit readme available tsconfig list (3e24eef)

❤️ Contributors

  • kiki-kanri

v0.1.0

compare changes

🚀 Enhancements

  • ⚠️ Edit base and rename other tsconfigs (3d291b9)

⚠️ Breaking Changes

  • ⚠️ Edit base and rename other tsconfigs (3d291b9)

❤️ Contributors

  • kiki-kanri

v0.0.2

compare changes

📖 Documentation

❤️ Contributors

  • kiki-kanri

v0.0.1

compare changes

🚀 Enhancements

📖 Documentation

🏡 Chore

  • Add gitignore and package.json (67c218e)

❤️ Contributors

  • kiki-kanri