aws-samples / amazon-cognito-passwordless-auth

Passwordless authentication with Amazon Cognito: FIDO2 (WebAuthn, support for Passkeys), Magic Link, SMS OTP Step Up
Apache License 2.0
367 stars 63 forks source link

Refactor dependencies: remove peer deps and upgrade react-native-passkey #180

Closed ottokruse closed 3 months ago

ottokruse commented 3 months ago

Issue #, if available: #167

Description of changes: All peer dependencies have been removed from package.json, except for esbuild. Even though technically less "correct" this does make it a lot quicker, and more importantly, less painful to install this library. Previously, installing it often required using the --force flag, because we had a peer dependency to react-native-passkey which (via React Native) required React 18.2 while users may have already been on React 18.3.

Installation will be quicker because e.g. if you're in a React project and you install this library, you won't unnecessarily also get AWS CDK installed (and in an AWS CDK project, you won't unnecessarily get React installed).

Yes, us mixing CDK and front-end code in one NPM module has its upside (just 1 module on NPM) but certainly also its downsides.

Anyway, while at it I also upgraded our code to work with the latest and greatest react-native-passkey (and marked that version in the README) and updated all other dependencies.

By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.