{"_id":"@avivox/typescript-config","name":"@avivox/typescript-config","dist-tags":{"latest":"1.0.0"},"versions":{"1.0.0":{"name":"@avivox/typescript-config","version":"1.0.0","license":"MIT","_id":"@avivox/typescript-config@1.0.0","description":"Shared TypeScript configuration presets for the Avivox Workspace and external projects.","_integrity":"sha512-3UEjoVGPDqrrCBs1Kt8GmTYdMr69gVrQPVTGyFTT4uG5YANyde6vBuOarjXTFOnB1jJTUJWkk8eJqGwgdg+VGw==","_resolved":"/tmp/7a0bad4b8c4aa63250bd57aa2e9b1363/avivox-typescript-config-1.0.0.tgz","_from":"file:avivox-typescript-config-1.0.0.tgz","_nodeVersion":"24.14.0","_npmVersion":"11.9.0","dist":{"integrity":"sha512-3UEjoVGPDqrrCBs1Kt8GmTYdMr69gVrQPVTGyFTT4uG5YANyde6vBuOarjXTFOnB1jJTUJWkk8eJqGwgdg+VGw==","shasum":"d18cf45820b03709017fa77a183b4fbafa19fbfc","tarball":"https://registry.npmjs.org/@avivox/typescript-config/-/typescript-config-1.0.0.tgz","fileCount":7,"unpackedSize":16358,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIBuEOR5zXUJx9A75y2S4K0C3gz7kAxdg1d9mw4rlXIxgAiEA2XP4+IWO6RzG3Qhq8D9h9p9yAKwxT1FSSd4LHfR5D9Y="}]},"_npmUser":{"name":"avi_vox_one","email":"avivoxone@gmail.com"},"directories":{},"maintainers":[{"name":"avi_vox_one","email":"avivoxone@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/typescript-config_1.0.0_1777636617065_0.4182012888451567"},"_hasShrinkwrap":false}},"time":{"created":"2026-05-01T11:56:57.003Z","1.0.0":"2026-05-01T11:56:57.213Z","modified":"2026-05-01T11:56:57.439Z"},"maintainers":[{"name":"avi_vox_one","email":"avivoxone@gmail.com"}],"description":"Shared TypeScript configuration presets for the Avivox Workspace and external projects.","license":"MIT","readme":"# Typescript Config\n\nShared TypeScript configuration presets for the Avivox Workspace and external projects.\n\n## Overview\n\nThis package provides pre-configured TypeScript configurations for different environments and frameworks, built on top of a comprehensive base configuration with strict type checking and modern best practices.\n\n## Available Configurations\n\n### Base Configuration (`tsconfig.base.json`)\nA comprehensive base configuration with strict type checking enabled. Includes:\n- Strict mode enabled\n- Unused variable detection\n- Exact optional property types\n- No implicit returns\n- And many more strict checks\n\n### Next.js (`nextjs.json`)\nExtends the base config for Next.js applications.\n- Target: ES2017\n- Module: ESNext with bundler resolution\n- JSX: preserve\n- Includes Next.js plugin and type definitions\n\n### React (`react.json`)\nExtends the base config for React applications (non-Next.js).\n- Target: ES2015\n- Module: ESNext with bundler resolution\n- JSX: react-jsx\n- DOM libraries included\n\n### Node.js (`node.json`)\nExtends the base config for Node.js applications.\n- Target: ES2022\n- Module: ESNext with bundler resolution\n- ES2024 libraries\n- JSON module resolution\n\n### React Native (`native.json`)\nExtends the base config for React Native applications.\n- Target: ESNext\n- Module: preserve\n- JSX: react-native\n- Custom conditions for React Native\n\n## Installation\n\n### In the Avivox Workspace\nThe package is already available as a workspace dependency. Use it directly in your `tsconfig.json`:\n\n```json\n{\n  \"extends\": \"@avivox/typescript-config/nextjs.json\"\n}\n```\n\n### External Projects\nInstall via npm or pnpm:\n\n```bash\nnpm install --save-dev @avivox/typescript-config\n```\n\nOr with pnpm:\n\n```bash\npnpm add -D @avivox/typescript-config\n```\n\nThen extend in your `tsconfig.json`:\n\n```json\n{\n  \"extends\": \"@avivox/typescript-config/react.json\"\n}\n```\n\n## Usage Examples\n\n### Next.js Project\n```json\n// tsconfig.json\n{\n  \"extends\": \"@avivox/typescript-config/nextjs.json\",\n  \"include\": [\"next-env.d.ts\", \"**/*.ts\", \"**/*.tsx\"],\n  \"exclude\": [\"node_modules\"]\n}\n```\n\n### React Library\n```json\n// tsconfig.json\n{\n  \"extends\": \"@avivox/typescript-config/react.json\",\n  \"compilerOptions\": {\n    \"declaration\": true,\n    \"outDir\": \"dist\"\n  },\n  \"include\": [\"src/**/*\"],\n  \"exclude\": [\"node_modules\", \"**/*.test.ts\", \"**/*.test.tsx\"]\n}\n```\n\n### Node.js Application\n```json\n// tsconfig.json\n{\n  \"extends\": \"@avivox/typescript-config/node.json\",\n  \"compilerOptions\": {\n    \"outDir\": \"dist\"\n  },\n  \"include\": [\"src/**/*\"],\n  \"exclude\": [\"node_modules\"]\n}\n```\n\n### React Native App\n```json\n// tsconfig.json\n{\n  \"extends\": \"@avivox/typescript-config/native.json\",\n  \"include\": [\"**/*.ts\", \"**/*.tsx\"],\n  \"exclude\": [\"node_modules\", \"android\", \"ios\"]\n}\n```\n\n## Customization\n\nYou can override any settings by adding them to your `compilerOptions` after extending:\n\n```json\n{\n  \"extends\": \"@avivox/typescript-config/base.json\",\n  \"compilerOptions\": {\n    \"target\": \"es2018\",\n    \"noUnusedLocals\": false\n  }\n}\n```\n\n## Contributing\n\nSee the root [README.md](../../README.md) for contribution guidelines.\n\nFor TypeScript configuration changes, refer to the [NOTES.md](./NOTES.md) for best practices.","readmeFilename":"README.md","_rev":"1-906e15faa797d79a48d8625509e3fa08"}