[](https://renovatebot.com)
This PR contains the following updates:
| Package | Change | Age | Adoption | Passing | Confidence | Type | Update |
|---|---|---|---|---|---|---|---|
| [@aws-sdk/client-s3](https://togithub.com/aws/aws-sdk-js-v3/tree/main/clients/client-s3) ([source](https://togithub.com/aws/aws-sdk-js-v3/tree/HEAD/clients/client-s3)) | [`3.499.0` -> `3.504.0`](https://renovatebot.com/diffs/npm/@aws-sdk%2fclient-s3/3.499.0/3.504.0) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | devDependencies | minor |
| [@marsidev/react-turnstile](https://togithub.com/marsidev/react-turnstile) | [`^0.4.0` -> `^0.5.0`](https://renovatebot.com/diffs/npm/@marsidev%2freact-turnstile/0.4.0/0.5.1) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | dependencies | minor |
| [@napi-rs/cli](https://togithub.com/napi-rs/napi-rs) | [`3.0.0-alpha.33` -> `3.0.0-alpha.36`](https://renovatebot.com/diffs/npm/@napi-rs%2fcli/3.0.0-alpha.33/3.0.0-alpha.36) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | devDependencies | patch |
| [@node-rs/jsonwebtoken](https://togithub.com/napi-rs/node-rs) | [`^0.3.0` -> `^0.4.0`](https://renovatebot.com/diffs/npm/@node-rs%2fjsonwebtoken/0.3.1/0.4.0) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | dependencies | minor |
| [@nx/vite](https://nx.dev) ([source](https://togithub.com/nrwl/nx/tree/HEAD/packages/vite)) | [`17.2.8` -> `17.3.1`](https://renovatebot.com/diffs/npm/@nx%2fvite/17.2.8/17.3.1) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | devDependencies | minor |
| [@opentelemetry/exporter-prometheus](https://togithub.com/open-telemetry/opentelemetry-js/tree/main/experimental/packages/opentelemetry-exporter-prometheus) ([source](https://togithub.com/open-telemetry/opentelemetry-js)) | [`^0.47.0` -> `^0.48.0`](https://renovatebot.com/diffs/npm/@opentelemetry%2fexporter-prometheus/0.47.0/0.48.0) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | dependencies | minor |
| [@opentelemetry/host-metrics](https://togithub.com/open-telemetry/opentelemetry-js-contrib/tree/main/packages/opentelemetry-host-metrics#readme) ([source](https://togithub.com/open-telemetry/opentelemetry-js-contrib)) | [`^0.34.0` -> `^0.35.0`](https://renovatebot.com/diffs/npm/@opentelemetry%2fhost-metrics/0.34.1/0.35.0) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | dependencies | minor |
| [@opentelemetry/instrumentation](https://togithub.com/open-telemetry/opentelemetry-js/tree/main/experimental/packages/opentelemetry-instrumentation) ([source](https://togithub.com/open-telemetry/opentelemetry-js)) | [`^0.47.0` -> `^0.48.0`](https://renovatebot.com/diffs/npm/@opentelemetry%2finstrumentation/0.47.0/0.48.0) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | dependencies | minor |
| [@opentelemetry/instrumentation-graphql](https://togithub.com/open-telemetry/opentelemetry-js-contrib/tree/main/plugins/node/opentelemetry-instrumentation-graphql#readme) ([source](https://togithub.com/open-telemetry/opentelemetry-js-contrib)) | [`^0.36.0` -> `^0.37.0`](https://renovatebot.com/diffs/npm/@opentelemetry%2finstrumentation-graphql/0.36.1/0.37.0) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | dependencies | minor |
| [@opentelemetry/instrumentation-http](https://togithub.com/open-telemetry/opentelemetry-js/tree/main/experimental/packages/opentelemetry-instrumentation-http) ([source](https://togithub.com/open-telemetry/opentelemetry-js)) | [`^0.47.0` -> `^0.48.0`](https://renovatebot.com/diffs/npm/@opentelemetry%2finstrumentation-http/0.47.0/0.48.0) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | dependencies | minor |
| [@opentelemetry/instrumentation-ioredis](https://togithub.com/open-telemetry/opentelemetry-js-contrib/tree/main/plugins/node/opentelemetry-instrumentation-ioredis#readme) ([source](https://togithub.com/open-telemetry/opentelemetry-js-contrib)) | [`^0.36.0` -> `^0.37.0`](https://renovatebot.com/diffs/npm/@opentelemetry%2finstrumentation-ioredis/0.36.1/0.37.0) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | dependencies | minor |
| [@opentelemetry/instrumentation-nestjs-core](https://togithub.com/open-telemetry/opentelemetry-js-contrib/tree/main/plugins/node/opentelemetry-instrumentation-nestjs-core#readme) ([source](https://togithub.com/open-telemetry/opentelemetry-js-contrib)) | [`^0.33.3` -> `^0.34.0`](https://renovatebot.com/diffs/npm/@opentelemetry%2finstrumentation-nestjs-core/0.33.4/0.34.0) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | dependencies | minor |
| [@opentelemetry/instrumentation-socket.io](https://togithub.com/open-telemetry/opentelemetry-js-contrib/tree/main/plugins/node/instrumentation-socket.io#readme) ([source](https://togithub.com/open-telemetry/opentelemetry-js-contrib)) | [`^0.35.0` -> `^0.36.0`](https://renovatebot.com/diffs/npm/@opentelemetry%2finstrumentation-socket.io/0.35.0/0.36.0) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | dependencies | minor |
| [@opentelemetry/sdk-node](https://togithub.com/open-telemetry/opentelemetry-js/tree/main/experimental/packages/opentelemetry-sdk-node) ([source](https://togithub.com/open-telemetry/opentelemetry-js)) | [`^0.47.0` -> `^0.48.0`](https://renovatebot.com/diffs/npm/@opentelemetry%2fsdk-node/0.47.0/0.48.0) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | dependencies | minor |
| [@taplo/cli](https://taplo.tamasfe.dev) ([source](https://togithub.com/tamasfe/taplo)) | [`^0.5.2` -> `^0.7.0`](https://renovatebot.com/diffs/npm/@taplo%2fcli/0.5.2/0.7.0) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | devDependencies | minor |
| [@vitest/coverage-istanbul](https://togithub.com/vitest-dev/vitest/tree/main/packages/coverage-istanbul#readme) ([source](https://togithub.com/vitest-dev/vitest/tree/HEAD/packages/coverage-istanbul)) | [`1.1.3` -> `1.2.2`](https://renovatebot.com/diffs/npm/@vitest%2fcoverage-istanbul/1.1.3/1.2.2) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | devDependencies | minor |
| [@vitest/ui](https://togithub.com/vitest-dev/vitest/tree/main/packages/ui#readme) ([source](https://togithub.com/vitest-dev/vitest/tree/HEAD/packages/ui)) | [`1.1.3` -> `1.2.2`](https://renovatebot.com/diffs/npm/@vitest%2fui/1.1.3/1.2.2) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | devDependencies | minor |
| [cloudflare/wrangler-action](https://togithub.com/cloudflare/wrangler-action) | `v3.4.0` -> `v3.4.1` | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | action | patch |
| [esbuild](https://togithub.com/evanw/esbuild) | [`^0.19.7` -> `^0.20.0`](https://renovatebot.com/diffs/npm/esbuild/0.19.8/0.20.0) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | devDependencies | minor |
| [jotai-effect](https://togithub.com/jotaijs/jotai-effect) | [`^0.2.3` -> `^0.4.0`](https://renovatebot.com/diffs/npm/jotai-effect/0.2.3/0.4.0) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | dependencies | minor |
| [jotai-scope](https://togithub.com/jotaijs/jotai-scope) | [`^0.4.1` -> `^0.5.0`](https://renovatebot.com/diffs/npm/jotai-scope/0.4.1/0.5.1) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | dependencies | minor |
| openresty/openresty | `1.21.4.3-0-buster` -> `1.25.3.1-0-buster` | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | final | minor |
| [vite-plugin-dts](https://togithub.com/qmhc/vite-plugin-dts) | [`3.7.0` -> `3.7.2`](https://renovatebot.com/diffs/npm/vite-plugin-dts/3.7.0/3.7.2) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | devDependencies | patch |
| [vitest](https://togithub.com/vitest-dev/vitest) ([source](https://togithub.com/vitest-dev/vitest/tree/HEAD/packages/vitest)) | [`1.1.3` -> `1.2.2`](https://renovatebot.com/diffs/npm/vitest/1.1.3/1.2.2) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | devDependencies | minor |
| [yarn](https://togithub.com/yarnpkg/berry) ([source](https://togithub.com/yarnpkg/berry/tree/HEAD/packages/yarnpkg-cli)) | [`4.0.2` -> `4.1.0`](https://renovatebot.com/diffs/npm/yarn/4.0.2/4.1.0) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | packageManager | minor |
---
### Release Notes
<details>
<summary>aws/aws-sdk-js-v3 (@​aws-sdk/client-s3)</summary>
### [`v3.504.0`](https://togithub.com/aws/aws-sdk-js-v3/blob/HEAD/clients/client-s3/CHANGELOG.md#35040-2024-01-31)
[Compare Source](https://togithub.com/aws/aws-sdk-js-v3/compare/v3.503.1...v3.504.0)
**Note:** Version bump only for package [@​aws-sdk/client-s3](https://togithub.com/aws-sdk/client-s3)
#### [3.503.1](https://togithub.com/aws/aws-sdk-js-v3/compare/v3.503.0...v3.503.1) (2024-01-30)
**Note:** Version bump only for package [@​aws-sdk/client-s3](https://togithub.com/aws-sdk/client-s3)
### [`v3.503.1`](https://togithub.com/aws/aws-sdk-js-v3/blob/HEAD/clients/client-s3/CHANGELOG.md#35031-2024-01-30)
[Compare Source](https://togithub.com/aws/aws-sdk-js-v3/compare/v3.503.0...v3.503.1)
**Note:** Version bump only for package [@​aws-sdk/client-s3](https://togithub.com/aws-sdk/client-s3)
### [`v3.503.0`](https://togithub.com/aws/aws-sdk-js-v3/blob/HEAD/clients/client-s3/CHANGELOG.md#35030-2024-01-30)
[Compare Source](https://togithub.com/aws/aws-sdk-js-v3/compare/v3.502.0...v3.503.0)
**Note:** Version bump only for package [@​aws-sdk/client-s3](https://togithub.com/aws-sdk/client-s3)
### [`v3.502.0`](https://togithub.com/aws/aws-sdk-js-v3/blob/HEAD/clients/client-s3/CHANGELOG.md#35020-2024-01-29)
[Compare Source](https://togithub.com/aws/aws-sdk-js-v3/compare/v3.501.0...v3.502.0)
##### Features
- **credential-providers:** lazy load STS & SSO clients in credential providers ([#​5681](https://togithub.com/aws/aws-sdk-js-v3/issues/5681)) ([d27301d](d27301d48f))
### [`v3.501.0`](https://togithub.com/aws/aws-sdk-js-v3/blob/HEAD/clients/client-s3/CHANGELOG.md#35010-2024-01-26)
[Compare Source](https://togithub.com/aws/aws-sdk-js-v3/compare/v3.499.0...v3.501.0)
**Note:** Version bump only for package [@​aws-sdk/client-s3](https://togithub.com/aws-sdk/client-s3)
</details>
<details>
<summary>marsidev/react-turnstile (@​marsidev/react-turnstile)</summary>
### [`v0.5.1`](https://togithub.com/marsidev/react-turnstile/releases/tag/v0.5.1)
[Compare Source](https://togithub.com/marsidev/react-turnstile/compare/v0.5.0...v0.5.1)
##### 🐞 Bug Fixes
- Remove nullish coalescing operator (`??`) to improve compatibility with old browsers - by [@​marsidev](https://togithub.com/marsidev) [<samp>(80f61)</samp>](https://togithub.com/marsidev/react-turnstile/commit/80f61c6)
##### [View changes on GitHub](https://togithub.com/marsidev/react-turnstile/compare/v0.5.0...v0.5.1)
### [`v0.5.0`](https://togithub.com/marsidev/react-turnstile/releases/tag/v0.5.0)
[Compare Source](https://togithub.com/marsidev/react-turnstile/compare/v0.4.1...v0.5.0)
##### 🚀 Features
- Add `getResponsePromise` - by [@​marsidev](https://togithub.com/marsidev) [<samp>(61308)</samp>](https://togithub.com/marsidev/react-turnstile/commit/6130898)
##### [View changes on GitHub](https://togithub.com/marsidev/react-turnstile/compare/v0.4.1...v0.5.0)
### [`v0.4.1`](https://togithub.com/marsidev/react-turnstile/releases/tag/v0.4.1)
[Compare Source](https://togithub.com/marsidev/react-turnstile/compare/v0.4.0...v0.4.1)
##### 🚀 Features
- Add `onWidgetLoad` callback - by [@​marsidev](https://togithub.com/marsidev) [<samp>(6811b)</samp>](https://togithub.com/marsidev/react-turnstile/commit/6811bce)
##### [View changes on GitHub](https://togithub.com/marsidev/react-turnstile/compare/v0.4.0...v0.4.1)
</details>
<details>
<summary>napi-rs/napi-rs (@​napi-rs/cli)</summary>
### [`v3.0.0-alpha.36`](https://togithub.com/napi-rs/napi-rs/compare/@napi-rs/cli@3.0.0-alpha.35...@napi-rs/cli@3.0.0-alpha.36)
[Compare Source](https://togithub.com/napi-rs/napi-rs/compare/@napi-rs/cli@3.0.0-alpha.35...@napi-rs/cli@3.0.0-alpha.36)
### [`v3.0.0-alpha.35`](https://togithub.com/napi-rs/napi-rs/releases/tag/%40napi-rs/cli%403.0.0-alpha.35)
[Compare Source](https://togithub.com/napi-rs/napi-rs/compare/@napi-rs/cli@3.0.0-alpha.34...@napi-rs/cli@3.0.0-alpha.35)
##### What's Changed
- chore: bump memfs-browser by [@​Brooooooklyn](https://togithub.com/Brooooooklyn) in [https://github.com/napi-rs/napi-rs/pull/1900](https://togithub.com/napi-rs/napi-rs/pull/1900)
- feat(cli): Add support for s390x linux arch in js bindings template by [@​mgcm](https://togithub.com/mgcm) in [https://github.com/napi-rs/napi-rs/pull/1901](https://togithub.com/napi-rs/napi-rs/pull/1901)
- feat: add wasm runtime package by [@​Brooooooklyn](https://togithub.com/Brooooooklyn) in [https://github.com/napi-rs/napi-rs/pull/1904](https://togithub.com/napi-rs/napi-rs/pull/1904)
##### New Contributors
- [@​mgcm](https://togithub.com/mgcm) made their first contribution in [https://github.com/napi-rs/napi-rs/pull/1901](https://togithub.com/napi-rs/napi-rs/pull/1901)
**Full Changelog**: https://github.com/napi-rs/napi-rs/compare/[@​napi-rs/cli](https://togithub.com/napi-rs/cli)[@​3](https://togithub.com/3).0.0-alpha.34...[@​napi-rs/cli](https://togithub.com/napi-rs/cli)[@​3](https://togithub.com/3).0.0-alpha.35
### [`v3.0.0-alpha.34`](https://togithub.com/napi-rs/napi-rs/releases/tag/%40napi-rs/cli%403.0.0-alpha.34)
[Compare Source](https://togithub.com/napi-rs/napi-rs/compare/@napi-rs/cli@3.0.0-alpha.33...@napi-rs/cli@3.0.0-alpha.34)
##### What's Changed
- fix(cli): add browser entry by [@​Brooooooklyn](https://togithub.com/Brooooooklyn) in [https://github.com/napi-rs/napi-rs/pull/1899](https://togithub.com/napi-rs/napi-rs/pull/1899)
**Full Changelog**: https://github.com/napi-rs/napi-rs/compare/[@​napi-rs/cli](https://togithub.com/napi-rs/cli)[@​3](https://togithub.com/3).0.0-alpha.33...[@​napi-rs/cli](https://togithub.com/napi-rs/cli)[@​3](https://togithub.com/3).0.0-alpha.34
</details>
<details>
<summary>napi-rs/node-rs (@​node-rs/jsonwebtoken)</summary>
### [`v0.4.0`](https://togithub.com/napi-rs/node-rs/compare/@node-rs/jsonwebtoken@0.3.1...@node-rs/jsonwebtoken@0.4.0)
[Compare Source](https://togithub.com/napi-rs/node-rs/compare/@node-rs/jsonwebtoken@0.3.1...@node-rs/jsonwebtoken@0.4.0)
</details>
<details>
<summary>nrwl/nx (@​nx/vite)</summary>
### [`v17.3.1`](https://togithub.com/nrwl/nx/releases/tag/17.3.1)
[Compare Source](https://togithub.com/nrwl/nx/compare/17.3.0...17.3.1)
##### 17.3.1 (2024-01-31)
##### 🚀 Features
- **angular:** add generator to convert targets to use the esbuild-based application executor ([#​21333](https://togithub.com/nrwl/nx/pull/21333))
- **core:** don't clear NX_BASE or NX_HEAD ([#​20125](https://togithub.com/nrwl/nx/pull/20125))
- **devkit:** improving error handeling read target options ([#​20336](https://togithub.com/nrwl/nx/pull/20336))
- **react-native:** add useTransformReactJSX babel config to generators ([#​19170](https://togithub.com/nrwl/nx/pull/19170))
- **vite:** allow passing path to custom tsconfig file when skipTypeCheck is false ([#​19784](https://togithub.com/nrwl/nx/pull/19784))
##### 🩹 Fixes
- nestjs lib generator pass skipPackageJson flag to js lib generator ([#​20442](https://togithub.com/nrwl/nx/pull/20442))
- **angular:** fix dev-server validation for esbuildMiddleware ([#​21413](https://togithub.com/nrwl/nx/pull/21413))
- **angular:** should not log invalid extension includedScripts ([#​21441](https://togithub.com/nrwl/nx/pull/21441))
- **bundling:** consider index/folder imports in manual file resolution ([#​19030](https://togithub.com/nrwl/nx/pull/19030))
- **core:** remove misleading message at front of error ([#​21443](https://togithub.com/nrwl/nx/pull/21443))
- **core:** new generator not skipping package installation ([#​17927](https://togithub.com/nrwl/nx/pull/17927))
- **core:** include typescript package when calculating project hashes ([#​21285](https://togithub.com/nrwl/nx/pull/21285))
- **core:** do not append node_module paths in `run-script` executor ([#​21445](https://togithub.com/nrwl/nx/pull/21445))
- **graph:** repair externalApiService usage broken after refactor ([#​21422](https://togithub.com/nrwl/nx/pull/21422))
- **js:** allow inlined libs without imports ([#​20649](https://togithub.com/nrwl/nx/pull/20649))
- **linter:** remove extend of [@​angular-eslint/recommended--extra](https://togithub.com/angular-eslint/recommended--extra) config ([#​18465](https://togithub.com/nrwl/nx/pull/18465))
- **linter:** restore rules to match previous [@​typescript-eslint/recommended](https://togithub.com/typescript-eslint/recommended) ([#​21424](https://togithub.com/nrwl/nx/pull/21424))
- **linter:** make target default migrations a bit more robust ([#​21446](https://togithub.com/nrwl/nx/pull/21446))
- **misc:** prevent ts-node from reading tsconfig when registering transpiler ([#​21381](https://togithub.com/nrwl/nx/pull/21381))
- **nextjs:** Add missing support swc for custom server ([#​21401](https://togithub.com/nrwl/nx/pull/21401))
- **nextjs:** lazy load plugin import ([#​21426](https://togithub.com/nrwl/nx/pull/21426))
- **nx-dev:** remove unmatched bracket. updates warning description ([#​19481](https://togithub.com/nrwl/nx/pull/19481))
- **react:** import SupportedStyles type from correct path ([#​20239](https://togithub.com/nrwl/nx/pull/20239))
- **vite:** prevent vite:build copying package.json when generatePackageJson false ([#​19780](https://togithub.com/nrwl/nx/pull/19780))
- **vue:** do not add [@​vue/tsconfig](https://togithub.com/vue/tsconfig) dependency ([#​19873](https://togithub.com/nrwl/nx/pull/19873))
##### ❤️ Thank You
- Adam Hunter [@​adamrhunter](https://togithub.com/adamrhunter)
- Benjamin Kroeger [@​benkroeger](https://togithub.com/benkroeger)
- Christian Käslin
- Craigory Coppola [@​AgentEnder](https://togithub.com/AgentEnder)
- Denis Frenademetz [@​skrtheboss](https://togithub.com/skrtheboss)
- James Henry [@​JamesHenry](https://togithub.com/JamesHenry)
- Jan Pretzel
- Jonathan Cammisuli
- Leosvel Pérez Espinosa [@​leosvelperez](https://togithub.com/leosvelperez)
- MaxKless [@​MaxKless](https://togithub.com/MaxKless)
- Michal Jez [@​MJez29](https://togithub.com/MJez29)
- Miloš Lajtman [@​miluoshi](https://togithub.com/miluoshi)
- Nicholas Cunningham [@​ndcunningham](https://togithub.com/ndcunningham)
- Tobbb
- Vinit Neogi [@​vneogi199](https://togithub.com/vneogi199)
- wout junius [@​wout-junius](https://togithub.com/wout-junius)
- Zac Bristow
### [`v17.3.0`](https://togithub.com/nrwl/nx/releases/tag/17.3.0)
[Compare Source](https://togithub.com/nrwl/nx/compare/17.2.8...17.3.0)
#### 17.3.0 (2024-01-29)
##### 🚀 Features
- **angular:** support esbuild middleware functions ([#​21048](https://togithub.com/nrwl/nx/pull/21048))
- **angular:** support angular 17.1.0 ([#​20556](https://togithub.com/nrwl/nx/pull/20556))
- **core:** remove prompt from nx connect command ([67b5bd6c9f](https://togithub.com/nrwl/nx/commit/67b5bd6c9f))
- **core:** use Nx plugins and inferred targets when running "nx init" ([#​20872](https://togithub.com/nrwl/nx/pull/20872))
- **core:** create a new function to run child processes via rust ([#​21070](https://togithub.com/nrwl/nx/pull/21070))
- **core:** read name from package.json if present and no inference plugin provides name ([#​21125](https://togithub.com/nrwl/nx/pull/21125))
- **core:** add keepExistingVersions to all packages ([#​21169](https://togithub.com/nrwl/nx/pull/21169))
- **core:** add the "add" cli command ([#​20976](https://togithub.com/nrwl/nx/pull/20976))
- **core:** add target defaults in configuration generators rather th… ([#​21105](https://togithub.com/nrwl/nx/pull/21105))
- **core:** update ci-workflow generator ([#​21141](https://togithub.com/nrwl/nx/pull/21141))
- **core:** extend nxCloud prompt to include basic CI workflow options ([#​21094](https://togithub.com/nrwl/nx/pull/21094))
- **core:** move target defaults handling to nx plugin ([#​21104](https://togithub.com/nrwl/nx/pull/21104))
- **core:** forward stdin to commands started via rust ([#​21195](https://togithub.com/nrwl/nx/pull/21195))
- **core:** reveal --web flag on show project ([#​21293](https://togithub.com/nrwl/nx/pull/21293))
- **core:** use runCommand for runScript ([#​21292](https://togithub.com/nrwl/nx/pull/21292))
- **core:** support args to be an array for command ([#​21290](https://togithub.com/nrwl/nx/pull/21290))
- **core:** improve generated CI workflows ([#​21324](https://togithub.com/nrwl/nx/pull/21324))
- **core:** guide users to view the graph after nx init ([#​21303](https://togithub.com/nrwl/nx/pull/21303))
- **core:** pass down help to run-commands ([#​21331](https://togithub.com/nrwl/nx/pull/21331))
- **cypress:** simplify inferred cypress command ([#​21337](https://togithub.com/nrwl/nx/pull/21337))
- **detox:** add createNodes for detox ([#​21016](https://togithub.com/nrwl/nx/pull/21016))
- **devkit:** add a flag to keep existing versions when calling addDependenciesToPackageJson ([#​21123](https://togithub.com/nrwl/nx/pull/21123))
- **docs:** add {% project-details %} as a tag in markdown docs ([#​21288](https://togithub.com/nrwl/nx/pull/21288))
- **expo:** support createNodes for expo ([#​21014](https://togithub.com/nrwl/nx/pull/21014))
- **graph:** add nx console data loader ([#​20744](https://togithub.com/nrwl/nx/pull/20744))
- **graph:** rework pdv target section & remove unused code ([#​21159](https://togithub.com/nrwl/nx/pull/21159))
- **graph:** decouple graph client from nx.dev <Fence> component ([#​21186](https://togithub.com/nrwl/nx/pull/21186))
- **graph:** allow expanding target when opening pdv from external api ([#​21189](https://togithub.com/nrwl/nx/pull/21189))
- **graph:** hover to see source & more UI updates ([#​21182](https://togithub.com/nrwl/nx/pull/21182))
- **graph:** add tooltips to project details view ([#​21205](https://togithub.com/nrwl/nx/pull/21205))
- **graph:** show open config button in graph web ([#​21181](https://togithub.com/nrwl/nx/pull/21181))
- **linter:** add .nx to ignored folders ([#​20720](https://togithub.com/nrwl/nx/pull/20720))
- **linter:** update @​typescript-eslint/\* package versions ([#​20602](https://togithub.com/nrwl/nx/pull/20602))
- **linter:** make init generator public ([51c039b252](https://togithub.com/nrwl/nx/commit/51c039b252))
- **linter:** move common options to target defaults ([#​20583](https://togithub.com/nrwl/nx/pull/20583))
- **misc:** align version of [@​types/node](https://togithub.com/types/node) throughout repo ([#​20883](https://togithub.com/nrwl/nx/pull/20883))
- **misc:** add layout for project details view ([#​21172](https://togithub.com/nrwl/nx/pull/21172))
- **misc:** update minimatch version used across packages ([#​21207](https://togithub.com/nrwl/nx/pull/21207))
- **misc:** identify and set up more nx core plugins during nx init ([#​21254](https://togithub.com/nrwl/nx/pull/21254))
- **misc:** optionally update package.json scripts in init generators ([#​21204](https://togithub.com/nrwl/nx/pull/21204))
- **misc:** hide unpublished links in project details view ([#​21362](https://togithub.com/nrwl/nx/pull/21362))
- **nextjs:** Update [@​nx/next](https://togithub.com/nx/next) to Next.js 14 ([#​20703](https://togithub.com/nrwl/nx/pull/20703))
- **nextjs:** Add support for experimental-https when running dev server ([#​20836](https://togithub.com/nrwl/nx/pull/20836))
- **nextjs:** Standalone projects now default to src ([#​21010](https://togithub.com/nrwl/nx/pull/21010))
- **nuxt:** make nuxt public ([#​20656](https://togithub.com/nrwl/nx/pull/20656))
- **nx-dev:** add homepage updates ([#​20592](https://togithub.com/nrwl/nx/pull/20592))
- **nx-dev:** improve related docs section ([#​20796](https://togithub.com/nrwl/nx/pull/20796))
- **nx-dev:** adjust related section title padding ([#​20803](https://togithub.com/nrwl/nx/pull/20803))
- **nx-dev:** update documentation dropdown menu links ([#​20792](https://togithub.com/nrwl/nx/pull/20792))
- **nx-dev:** adjust highlighting of tagline ([#​20877](https://togithub.com/nrwl/nx/pull/20877))
- **nx-dev:** new year challenge ([#​20639](https://togithub.com/nrwl/nx/pull/20639))
- **nx-dev:** new year challenge ([868721a157](https://togithub.com/nrwl/nx/commit/868721a157))
- **nx-dev:** modals and flip cards ([e7dcce057b](https://togithub.com/nrwl/nx/commit/e7dcce057b))
- **nx-dev:** rectangle cards ([49a8d84023](https://togithub.com/nrwl/nx/commit/49a8d84023))
- **react:** Treat window and var library types the same ([#​20597](https://togithub.com/nrwl/nx/pull/20597))
- **react:** Add playwright support to generators ([#​21150](https://togithub.com/nrwl/nx/pull/21150))
- **react-native:** add support for createNodes in react native ([#​21013](https://togithub.com/nrwl/nx/pull/21013))
- **react-native:** generate pod install target ([#​21166](https://togithub.com/nrwl/nx/pull/21166))
- **release:** support Revert commits in changelog renderer ([#​20663](https://togithub.com/nrwl/nx/pull/20663))
- **release:** conventional commits support for independent projects ([#​21012](https://togithub.com/nrwl/nx/pull/21012))
- **release:** enable git operations by default ([#​21082](https://togithub.com/nrwl/nx/pull/21082))
- **release:** add fallback for currentVersionResolver in the version step ([#​21155](https://togithub.com/nrwl/nx/pull/21155))
- **release:** support conventionalCommits shorthand for version config ([#​21187](https://togithub.com/nrwl/nx/pull/21187))
- **release:** add formal entrypoint for programmatic API at nx/release ([#​21211](https://togithub.com/nrwl/nx/pull/21211))
- **release:** support version prefix for dependents ([#​21209](https://togithub.com/nrwl/nx/pull/21209))
- **release:** update lockfile after version command ([#​21107](https://togithub.com/nrwl/nx/pull/21107))
- **release:** global stageChanges option & changelog fixes ([#​21223](https://togithub.com/nrwl/nx/pull/21223))
- **release:** allow overriding generator and generatorOptions per project ([#​21298](https://togithub.com/nrwl/nx/pull/21298))
- **remix:** add remix ([#​20641](https://togithub.com/nrwl/nx/pull/20641))
- **remix:** add createNodes support for target inference ([#​21073](https://togithub.com/nrwl/nx/pull/21073))
- **remix:** generate vitest file instead vite.config ([#​21100](https://togithub.com/nrwl/nx/pull/21100))
- **remix:** remove projects prompt from artifact generators ([#​21112](https://togithub.com/nrwl/nx/pull/21112))
- **remix:** use esm config file ([#​21111](https://togithub.com/nrwl/nx/pull/21111))
- **remix:** add init generator ([#​21146](https://togithub.com/nrwl/nx/pull/21146))
- **remix:** add nx welcome component ([#​21383](https://togithub.com/nrwl/nx/pull/21383))
- **storybook:** nodes plugin ([#​20562](https://togithub.com/nrwl/nx/pull/20562))
- **testing:** add create-nodes plugin for playwright e2e targets ([#​20099](https://togithub.com/nrwl/nx/pull/20099))
- **testing:** add option to allow filtering test files in playwright executor ([#​20862](https://togithub.com/nrwl/nx/pull/20862))
- **testing:** add jest create-nodes plugin ([#​20045](https://togithub.com/nrwl/nx/pull/20045))
- **vite:** update to vitest v1 ([#​20747](https://togithub.com/nrwl/nx/pull/20747))
- **vite:** recognize all vite.config file extensions ([#​20971](https://togithub.com/nrwl/nx/pull/20971))
- **vue:** add nuxt as cnw vue framework ([#​20626](https://togithub.com/nrwl/nx/pull/20626))
- **webpack:** simplify inferred webpack-cli command ([#​21340](https://togithub.com/nrwl/nx/pull/21340))
- **workspace:** update readme to point people to the graph ([#​21325](https://togithub.com/nrwl/nx/pull/21325))
##### 🩹 Fixes
- **angular:** add missing package update for [@​angular/pwa](https://togithub.com/angular/pwa) ([#​20690](https://togithub.com/nrwl/nx/pull/20690))
- **angular:** safely update task runner cacheable operations when setting up ssr ([#​20736](https://togithub.com/nrwl/nx/pull/20736))
- **angular:** fix standalone eslint config generation ([#​20885](https://togithub.com/nrwl/nx/pull/20885))
- **angular:** add named export for moduleFederationDevServerExecutor ([#​20944](https://togithub.com/nrwl/nx/pull/20944))
- **angular:** support scheduling inferred angular cli builder targets ([#​21019](https://togithub.com/nrwl/nx/pull/21019))
- **angular:** run function is not called in setup-ssr/application-builder ([#​21157](https://togithub.com/nrwl/nx/pull/21157))
- **angular:** support scoped project names and entrypoints in library secondary entrypoint generator ([#​21300](https://togithub.com/nrwl/nx/pull/21300))
- **angular:** update autoprefixer migration to the right file ([#​21363](https://togithub.com/nrwl/nx/pull/21363))
- **angular:** update setup-ssr generator to support the outputPath object variant ([#​21385](https://togithub.com/nrwl/nx/pull/21385))
- **bundling:** added back code to handle skipTypeField option of rollup executor options + tests ([#​20460](https://togithub.com/nrwl/nx/pull/20460))
- **core:** properly handle negated paths in cache outputs ([#​20661](https://togithub.com/nrwl/nx/pull/20661))
- **core:** show warning if workspaceRoot starts with ! ([#​20705](https://togithub.com/nrwl/nx/pull/20705))
- **core:** fallback to checking stderr if stdout is empty on publish executor ([#​20737](https://togithub.com/nrwl/nx/pull/20737))
- **core:** correctly move project and target strings ([#​20726](https://togithub.com/nrwl/nx/pull/20726))
- **core:** handle "." project roots properly for hashing ([#​20979](https://togithub.com/nrwl/nx/pull/20979))
- **core:** prioritize nxignore for watcher updates ([#​20975](https://togithub.com/nrwl/nx/pull/20975))
- **core:** formatter should not fail when absolute paths are provided as "--files" ([#​20331](https://togithub.com/nrwl/nx/pull/20331))
- **core:** handle invalid group glob groups ([#​21027](https://togithub.com/nrwl/nx/pull/21027))
- **core:** ensure connect-to-nx-cloud works with lerna workspaces ([#​20895](https://togithub.com/nrwl/nx/pull/20895))
- **core:** accept vue as preset in cnw ([#​21262](https://togithub.com/nrwl/nx/pull/21262))
- **core:** properly disconnect daemon & reject promise ([#​21283](https://togithub.com/nrwl/nx/pull/21283))
- **core:** fix socket dir removal for macos ([#​21306](https://togithub.com/nrwl/nx/pull/21306))
- **core:** remove deprecated recursive rmdir with rm -rf ([#​21327](https://togithub.com/nrwl/nx/pull/21327))
- **core:** exit with sigint when sigint is received ([#​21336](https://togithub.com/nrwl/nx/pull/21336))
- **core:** yargs array-like prompts initial field is number ([#​21349](https://togithub.com/nrwl/nx/pull/21349))
- **core:** clarify error log when a project exists in a directory ([#​21355](https://togithub.com/nrwl/nx/pull/21355))
- **core:** do not create new targets from target defaults when packag… ([#​21365](https://togithub.com/nrwl/nx/pull/21365))
- **core:** fix sending sigint to child tasks with the new psuedo tty … ([#​21369](https://togithub.com/nrwl/nx/pull/21369))
- **core:** fix compilerOptions may not exist ([#​21364](https://togithub.com/nrwl/nx/pull/21364))
- **core:** fix conflicting types from merge conflict ([#​21371](https://togithub.com/nrwl/nx/pull/21371))
- **core:** address some wonkiness when merging command and run-commands ([#​21315](https://togithub.com/nrwl/nx/pull/21315))
- **devkit:** update the ci generators to use the correct launch template ([#​21304](https://togithub.com/nrwl/nx/pull/21304))
- **devkit:** fix extractLayoutDirectory typescript types to better reflect allowed params and return value ([#​15339](https://togithub.com/nrwl/nx/pull/15339))
- **expo:** fix externalDependencies for expo plugin ([#​21213](https://togithub.com/nrwl/nx/pull/21213))
- **graph:** take vscode light/dark theme into account ([#​21208](https://togithub.com/nrwl/nx/pull/21208))
- **graph:** refresh pdv periodically in watch mode ([#​21218](https://togithub.com/nrwl/nx/pull/21218))
- **graph:** correct value when inputs/outputs are copied ([#​21245](https://togithub.com/nrwl/nx/pull/21245))
- **graph:** fix 404 when / in name ([#​21318](https://togithub.com/nrwl/nx/pull/21318))
- **js:** fixing output based on test runner selection ([#​20788](https://togithub.com/nrwl/nx/pull/20788))
- **js:** allow inlineable dependency to be added to externals ([#​21051](https://togithub.com/nrwl/nx/pull/21051))
- **js:** ensure result is valid before attempting to close it during rollup watch ([ea3c2426d3](https://togithub.com/nrwl/nx/commit/ea3c2426d3))
- **js:** set the unsafeHttpWhitelist when the set has any items ([#​21216](https://togithub.com/nrwl/nx/pull/21216))
- **js:** add [@​swc/helpers](https://togithub.com/swc/helpers) when initializing js plugin since it is needed by other plugins ([#​21316](https://togithub.com/nrwl/nx/pull/21316))
- **js:** fix missing top-level dependencies in publishable libs ([#​17730](https://togithub.com/nrwl/nx/pull/17730))
- **linter:** move should migrate all eslint configs ([#​20709](https://togithub.com/nrwl/nx/pull/20709))
- **linter:** fix workspace-rule naming with flat config ([#​20782](https://togithub.com/nrwl/nx/pull/20782))
- **linter:** ensure angular entry point checks are correct ([#​20859](https://togithub.com/nrwl/nx/pull/20859))
- **linter:** flat config should always set path to config when using API ([#​20867](https://togithub.com/nrwl/nx/pull/20867))
- **linter:** only update overrides when applicable ([#​20917](https://togithub.com/nrwl/nx/pull/20917))
- **linter:** add links to docs to rules ([#​21199](https://togithub.com/nrwl/nx/pull/21199))
- **linter:** fix import of chalk for reporting ([#​21201](https://togithub.com/nrwl/nx/pull/21201))
- **linter:** update eslint plugins for [@​typescript-eslint](https://togithub.com/typescript-eslint) v6 naming ([#​21221](https://togithub.com/nrwl/nx/pull/21221))
- **misc:** disallow path segments and allow scoped package name in --newProjectName option of move generator ([#​20768](https://togithub.com/nrwl/nx/pull/20768))
- **misc:** ignore .nx/cache when running nx init in an angular cli project ([#​21000](https://togithub.com/nrwl/nx/pull/21000))
- **misc:** install nx when no plugins selected during nx init ([#​21228](https://togithub.com/nrwl/nx/pull/21228))
- **misc:** identify usage of playwright correctly when running nx init ([#​21236](https://togithub.com/nrwl/nx/pull/21236))
- **misc:** install required deps during nx init without overriding existing versions ([#​21237](https://togithub.com/nrwl/nx/pull/21237))
- **misc:** do not print formatting errors while setting up nx cloud in nx init ([#​21302](https://togithub.com/nrwl/nx/pull/21302))
- **misc:** await async function invocations ([#​21299](https://togithub.com/nrwl/nx/pull/21299))
- **module-federation:** allow relative remote paths ([#​20763](https://togithub.com/nrwl/nx/pull/20763))
- **module-federation:** support buildable libs ([#​20786](https://togithub.com/nrwl/nx/pull/20786))
- **nextjs:** empty port should not overwrite env port ([#​20751](https://togithub.com/nrwl/nx/pull/20751))
- **nextjs:** Add missing setParserOptionProject ([#​20754](https://togithub.com/nrwl/nx/pull/20754))
- **nextjs:** Page generator should work out of the box ([#​20775](https://togithub.com/nrwl/nx/pull/20775))
- **nextjs:** enhance page generator to work when --project is not supplied ([#​20778](https://togithub.com/nrwl/nx/pull/20778))
- **nextjs:** remove temporary patch for next eslint rules ([#​20863](https://togithub.com/nrwl/nx/pull/20863))
- **nextjs:** correct inferred outputs for root Next.js projects ([#​20891](https://togithub.com/nrwl/nx/pull/20891))
- **nextjs:** update migration to handle projects without eslintrc ([#​20932](https://togithub.com/nrwl/nx/pull/20932))
- **nextjs:** Playwright should work with workspace libs ([#​20933](https://togithub.com/nrwl/nx/pull/20933))
- **nextjs:** Missing deps for image and css optimization ([#​20941](https://togithub.com/nrwl/nx/pull/20941))
- **nextjs:** Add support for mjs next config file ([#​21007](https://togithub.com/nrwl/nx/pull/21007))
- **nextjs:** PCV3 with Cypress and Playwright should work with standalone Next.js Projects ([#​21103](https://togithub.com/nrwl/nx/pull/21103))
- **nextjs:** custom server unable to run production builds ([#​21222](https://togithub.com/nrwl/nx/pull/21222))
- **node:** E2E test port conflicts ([#​20826](https://togithub.com/nrwl/nx/pull/20826))
- **nuxt:** add all target names when adding vite plugin ([#​21332](https://togithub.com/nrwl/nx/pull/21332))
- **nx-dev:** change to optimized for monorepos ([#​20668](https://togithub.com/nrwl/nx/pull/20668))
- **nx-dev:** adjust blog links ([#​20608](https://togithub.com/nrwl/nx/pull/20608))
- **nx-dev:** typo on the homepage ([#​20767](https://togithub.com/nrwl/nx/pull/20767))
- **nx-dev:** fix plugin stats ([#​20741](https://togithub.com/nrwl/nx/pull/20741))
- **nx-dev:** dynamic classes not allowed ([#​20800](https://togithub.com/nrwl/nx/pull/20800))
- **nx-dev:** improve styles ([48bcb534fb](https://togithub.com/nrwl/nx/commit/48bcb534fb))
- **nx-dev:** fix text colors ([69523f1eed](https://togithub.com/nrwl/nx/commit/69523f1eed))
- **nx-dev:** fix heading size and improve contrast ([#​21057](https://togithub.com/nrwl/nx/pull/21057))
- **nx-dev:** standardize nx cloud naming ([#​21059](https://togithub.com/nrwl/nx/pull/21059))
- **nx-dev:** increase shorts video size to show volume control ([#​21142](https://togithub.com/nrwl/nx/pull/21142))
- **nx-dev:** do not open official plugins in new tab ([#​21179](https://togithub.com/nrwl/nx/pull/21179))
- **nx-dev:** align button sizes on hero ([#​21163](https://togithub.com/nrwl/nx/pull/21163))
- **nx-dev:** table of contents with code ([#​21173](https://togithub.com/nrwl/nx/pull/21173))
- **react:** webpack backwards compat for `@nx/react/plugin/webpack` ([#​20697](https://togithub.com/nrwl/nx/pull/20697))
- **react:** skip adding comma to config when adding remote to host if… ([#​20620](https://togithub.com/nrwl/nx/pull/20620))
- **react:** remove <base> tag from generated index.html ([#​20750](https://togithub.com/nrwl/nx/pull/20750))
- **react:** update default webpack config for component testing ([#​20749](https://togithub.com/nrwl/nx/pull/20749))
- **release:** changelog renderer should prefer breaking change explanation text ([#​20798](https://togithub.com/nrwl/nx/pull/20798))
- **release:** ensure leading v is stripped from provided semver version ([#​20815](https://togithub.com/nrwl/nx/pull/20815))
- **release:** add overall nx release command ([#​20535](https://togithub.com/nrwl/nx/pull/20535))
- **release:** publish error handling, dry-run in dependsOn ([#​20889](https://togithub.com/nrwl/nx/pull/20889))
- **release:** capture all release titles during parse ([#​20864](https://togithub.com/nrwl/nx/pull/20864))
- **release:** do not set extra v on GitHub release, improve GH API error handling ([#​20999](https://togithub.com/nrwl/nx/pull/20999))
- **release:** update error message check for npm dist-tags ([#​20995](https://togithub.com/nrwl/nx/pull/20995))
- **release:** stage changes when versioning with --projects argument ([#​21054](https://togithub.com/nrwl/nx/pull/21054))
- **release:** default changelog git commit and tag true ([#​21129](https://togithub.com/nrwl/nx/pull/21129))
- **release:** versionPrefix should default to auto ([#​21256](https://togithub.com/nrwl/nx/pull/21256))
- **release:** filtering publish by project or group should exclude task deps ([#​21231](https://togithub.com/nrwl/nx/pull/21231))
- **release:** fix --first-release with conventional commits and independent projects ([#​21320](https://togithub.com/nrwl/nx/pull/21320))
- **release:** only add nx-release-publish to public packages ([#​21338](https://togithub.com/nrwl/nx/pull/21338))
- **release:** disable workspace changelogs in config when not valid ([#​21341](https://togithub.com/nrwl/nx/pull/21341))
- **release:** do not restart the daemon when skipLockFileUpdate is set ([#​21389](https://togithub.com/nrwl/nx/pull/21389))
- **release:** ensure non-zero exit code is propagated, change missing target handling ([#​21388](https://togithub.com/nrwl/nx/pull/21388))
- **remix:** legacy package pointing to incorrect readme ([#​21113](https://togithub.com/nrwl/nx/pull/21113))
- **remix:** import of config file should invalidate cache ([#​21121](https://togithub.com/nrwl/nx/pull/21121))
- **remix:** required property in schema should be project ([#​21258](https://togithub.com/nrwl/nx/pull/21258))
- **remix:** use twStyles as import to prevent conflicts ([#​21276](https://togithub.com/nrwl/nx/pull/21276))
- **remix:** tsconfigs were being incorrectly generated causing errors [#​21002](https://togithub.com/nrwl/nx/issues/21002) ([#​21387](https://togithub.com/nrwl/nx/pull/21387), [#​21002](https://togithub.com/nrwl/nx/issues/21002))
- **repo:** add missing packages to nightly ([#​20908](https://togithub.com/nrwl/nx/pull/20908))
- **repo:** update nightly matrix with new packages ([#​20911](https://togithub.com/nrwl/nx/pull/20911))
- **repo:** fix version calculation on nx-release ([#​21382](https://togithub.com/nrwl/nx/pull/21382))
- **storybook:** do not throw for versions >=7 ([#​20770](https://togithub.com/nrwl/nx/pull/20770))
- **storybook:** handle output-dir properly for outputs ([#​21168](https://togithub.com/nrwl/nx/pull/21168))
- **storybook:** throw if no project name for angular ([#​21308](https://togithub.com/nrwl/nx/pull/21308))
- **storybook:** add storybook-static to gitignore for pcv3 ([#​21309](https://togithub.com/nrwl/nx/pull/21309))
- **testing:** avoid overwriting environment variables in nx cypress preset ([#​20748](https://togithub.com/nrwl/nx/pull/20748))
- **testing:** run playwright with the correct project option for multiple values ([#​20850](https://togithub.com/nrwl/nx/pull/20850))
- **testing:** safely handle circular deps in component testing plugin ([#​20852](https://togit
</details>
---
### Configuration
📅 **Schedule**: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).
🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied.
♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
👻 **Immortal**: This PR will be recreated if closed unmerged. Get [config help](https://togithub.com/renovatebot/renovate/discussions) if that's undesired.
---
- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box
---
This PR has been generated by [Mend Renovate](https://www.mend.io/free-developer-tools/renovate/). View repository job log [here](https://developer.mend.io/github/toeverything/AFFiNE).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNy4xMjEuMCIsInVwZGF0ZWRJblZlciI6IjM3LjE1My4yIiwidGFyZ2V0QnJhbmNoIjoiY2FuYXJ5In0=-->
AFFiNE.PRO
Write, Draw and Plan All at Once
One hyper-fused platform for wildly creative minds.
A privacy-focussed, local-first, open-source, and ready-to-use alternative for Notion & Miro.
Join our community
Before we tell you how to get started with AFFiNE, we'd like to shamelessly plug our awesome user and developer communities across official social platforms! Once you’re familiar with using the software, maybe you will share your wisdom with others and even consider joining the AFFiNE Ambassador program to help spread AFFiNE to the world.
Getting started & staying tuned with us.
⚠️ Please note that AFFiNE is still under active development and is not yet ready for production use. ⚠️
No installation or registration required! Head over to our website and try it out now.
Our wonderful community, where you can meet and engage with the team, developers and other like-minded enthusiastic user of AFFiNE.
Star us, and you will receive all releases notifications from GitHub without any delay!

Features
- Hyper merged — Write, draw and plan all at once. Assemble any blocks you love on any canvas you like to enjoy seamless transitions between workflows with AFFiNE.
- Privacy focussed — AFFiNE is built with your privacy in mind and is one of our key concerns. We want you to keep control of your data, allowing you to store it as you like, where you like while still being able to freely edit and view your data on-demand.
- Offline-first — With your privacy in mind we also decided to go offline-first. This means that AFFiNE can be used offline, whether you want to view or edit, with support for conflict-free merging when you are back online.
- Clean, intuitive design — With AFFiNE you can concentrate on editing with a clean and modern interface. Which is responsive, so it looks great on tablets too, and mobile support is coming in the future.
- Modern Block Editor with Markdown support — A modern block editor can help you not only for docs, but slides and tables as well. When you write in AFFiNE you can use Markdown syntax which helps create an easier editing experience, that can be experienced with just a keyboard. And this allows you to export your data cleanly into Markdown.
- Collaboration — Whether you want to collaborate with yourself across multiple devices, or work together with others, support for collaboration and multiplayer is out-of-the-box, which makes it easy for teams to get started with AFFiNE.
- Choice of multiple languages — Thanks to community contributions AFFiNE offers support for multiple languages. If you don't find your language or would like to suggest some changes we welcome your contributions.
Contributing
| Bug Reports | Feature Requests | Questions/Discussions | AFFiNE Community |
|---|---|---|---|
| Create a bug report | Submit a feature request | Check GitHub Discussion | Vist the AFFiNE Community |
| Something isn't working as expected | An idea for a new feature, or improvements | Discuss and ask questions | A place to ask, learn and engage with others |
Calling all developers, testers, tech writers and more! Contributions of all types are more than welcome, you can read more in docs/types-of-contributions.md. If you are interested in contributing code, read our docs/CONTRIBUTING.md and feel free to check out our GitHub issues to get stuck in to show us what you’re made of.
Before you start contributing, please make sure you have read and accepted our Contributor License Agreement. To indicate your agreement, simply edit this file and submit a pull request.
For bug reports, feature requests and other suggestions you can also create a new issue and choose the most appropriate template for your feedback.
For translation and language support you can visit our i18n General Space.
Looking for others ways to contribute and wondering where to start? Check out the AFFiNE Ambassador program, we work closely with passionate community members and provide them with a wide-range of support and resources.
If you have questions, you are welcome to contact us. One of the best places to get more info and learn more is in the AFFiNE Community where you can engage with other like-minded individuals.
Ecosystem
| Name | ||
|---|---|---|
| @affine/component | AFFiNE Component Resources | |
| @toeverything/y-indexeddb | IndexedDB database adapter for Yjs | |
| @toeverything/theme | AFFiNE theme |
Upstreams
We would also like to give thanks to open-source projects that make AFFiNE possible:
- blocksuite - 💠 BlockSuite is the open-source collaborative editor project behind AFFiNE.
- OctoBase - 🐙 OctoBase is the open-source database behind AFFiNE, local-first, yet collaborative. A light-weight, scalable, data engine written in Rust.
- yjs - Fundamental support of CRDTs for our implementation on state management and data sync.
- electron - Build cross-platform desktop apps with JavaScript, HTML, and CSS.
- React - The library for web and native user interfaces.
- napi-rs - A framework for building compiled Node.js add-ons in Rust via Node-API.
- Jotai - Primitive and flexible state management for React.
- async-call-rpc - A lightweight JSON RPC client & server.
- Vite - Next generation frontend tooling.
- Other upstream dependencies.
Thanks a lot to the community for providing such powerful and simple libraries, so that we can focus more on the implementation of the product logic, and we hope that in the future our projects will also provide a more easy-to-use knowledge base for everyone.
Contributors
We would like to express our gratitude to all the individuals who have already contributed to AFFiNE! If you have any AFFiNE-related project, documentation, tool or template, please feel free to contribute it by submitting a pull request to our curated list on GitHub: awesome-affine.
Self-Host
We know that the self-host version has been out of date for a long time.
We are working hard to get this updated to the latest version, you can try our desktop version first.
Get started with Docker and deploy your own feature-rich, restriction-free deployment of AFFiNE. We are working hard to get this updated to the latest version, you can keep an eye on the latest packages.
Hiring
Some amazing companies including AFFiNE are looking for developers! Are you interested in helping build with AFFiNE and/or its partners? Check out some of the latest jobs available.
Upgrading
For upgrading information, please see our update page.
Feature Request
For feature request, please see community.affine.pro.
Building
Codespaces
From the GitHub repo main page, click the green "Code" button and select "Create codespace on master". This will open a new Codespace with the (supposedly auto-forked AFFiNE repo cloned, built, and ready to go.
Local
See BUILDING.md for instructions on how to build AFFiNE from source code.
Contributing
We welcome contributions from everyone. See docs/contributing/tutorial.md for details.
Thanks
Thanks to Chromatic for providing the visual testing platform that helps us review UI changes and catch visual regressions.
License
See LICENSE for details.

