{"id":14976973,"url":"https://github.com/bartoszklonowski/react-native-windows-hello","last_synced_at":"2025-10-27T22:30:58.001Z","repository":{"id":37897193,"uuid":"385904174","full_name":"BartoszKlonowski/react-native-windows-hello","owner":"BartoszKlonowski","description":"RNW library providing developer with all Windows Hello features","archived":false,"fork":false,"pushed_at":"2024-05-09T18:23:55.000Z","size":10606,"stargazers_count":11,"open_issues_count":8,"forks_count":3,"subscribers_count":13,"default_branch":"main","last_synced_at":"2024-10-11T14:25:42.201Z","etag":null,"topics":["react-native-windows","windows-hello"],"latest_commit_sha":null,"homepage":"","language":"C++","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/BartoszKlonowski.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2021-07-14T10:42:03.000Z","updated_at":"2024-05-09T18:24:00.000Z","dependencies_parsed_at":"2024-06-06T20:33:24.165Z","dependency_job_id":"ad17d049-ca6f-4fb7-b19b-d6e51ea5ed2c","html_url":"https://github.com/BartoszKlonowski/react-native-windows-hello","commit_stats":{"total_commits":40,"total_committers":2,"mean_commits":20.0,"dds":"0.32499999999999996","last_synced_commit":"fcaa7e87e2a0ea50dca48216be416831002b1ad0"},"previous_names":["callstack/react-native-windows-hello"],"tags_count":2,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/BartoszKlonowski%2Freact-native-windows-hello","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/BartoszKlonowski%2Freact-native-windows-hello/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/BartoszKlonowski%2Freact-native-windows-hello/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/BartoszKlonowski%2Freact-native-windows-hello/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/BartoszKlonowski","download_url":"https://codeload.github.com/BartoszKlonowski/react-native-windows-hello/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":219860664,"owners_count":16556016,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["react-native-windows","windows-hello"],"created_at":"2024-09-24T13:54:46.861Z","updated_at":"2025-10-27T22:30:57.573Z","avatar_url":"https://github.com/BartoszKlonowski.png","language":"C++","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003cp align=\"center\"\u003e\n  \u003cimg src=\".github/Resources/Logo-README.png\"/\u003e\n\u003c/p\u003e\n\u003cp align=\"center\"\u003e\n    React Native Windows library providing developers with all Windows Hello features.\n\u003c/p\u003e\n\u003cp align=\"center\"\u003e\n    \u003ca href=\"https://www.npmjs.com/package/react-native-windows-hello\"\u003e\n        \u003cimg src=\"https://img.shields.io/npm/v/react-native-windows-hello.svg\" alt=\"Latest version released on npmjs\" /\u003e\n    \u003c/a\u003e\n    \u003ca href=\"https://app.circleci.com/pipelines/github/callstack/react-native-windows-hello?branch=main\"\u003e\n        \u003cimg src=\"https://circleci.com/gh/callstack/react-native-windows-hello/tree/main.svg?style=shield\" alt=\"Build on CircleCI\" /\u003e\n    \u003c/a\u003e\n    \u003ca href=\"https://github.com/callstack/react-native-windows-hello/blob/main/LICENSE.md\"\u003e\n        \u003cimg src=\"https://img.shields.io/npm/l/react-native-windows-hello.svg\" alt=\"License\" /\u003e\n    \u003c/a\u003e\n\u003c/p\u003e\n\n\n\u003cp align=\"center\"\u003e\n    The following library allows you to use all features of \u003ca href=\"https://support.microsoft.com/en-us/windows/sign-in-to-your-microsoft-account-with-windows-hello-or-a-security-key-800a8c01-6b61-49f5-0660-c2159bea4d84#WindowsVersion=Windows_10\"\u003eWindows Hello\u003c/a\u003e functionality. This includes the signing-in options and passport.\n    This library is a set of native methods providing easy API to fetch the device availability, sign in using your biometrics.\n    \u003cimg src=\".github/Resources/RNW-Hello-FullExample.gif\"/\u003e\n\u003c/p\u003e\n\n---\n\n## Installation \u0026 Usage\n\nTo install this module `cd` to your project directory and enter the following command:\n\n```console\nyarn add -D react-native-windows-hello\n```\nor\n```console\nnpm install react-native-windows-hello --save\n```\n\nAfter having it installed you can import all the Windows Hello features like so:\n\n```javascript\nimport { SignIn, verificationResult, availabilityStatus } from 'react-native-windows-hello';\n```\n\nThe [API](#API) contains two methods: `requestConsentVerification` and `getDeviceStatus` each returning a promise with result object containing both `value` and `message` with pre-defined text (in english) describing the returned result.\n\u003cbr/\u003eSo the example of usage would be:\n\n```javascript\nSignIn.requestConsentVerification(\"This customized message will be displayed in biometric prompt\")\n  .then(result =\u003e {\n    Alert.alert(\n      `${result === verificationResult.Verified ? \"SUCCESS\" : \"ERROR\"}`,\n      result.message\n    );\n  })\n  .catch(error =\u003e {\n    Alert.alert(\"ERROR:\", `${error}`);\n  });\n```\n\nCheck out the [example project](example) for more examples.\n\n---\n\n## API\n\nThe following library provides you with the native modules exposing the following methods:\n\n| **Method** \u0026 Description | Arguments | Returns |\n| - | :-: |:-:|\n| **SignIn.getDeviceStatus** | | |\n| Gets the status of biometric device on a user's machine and returns a promise with the result.\u003cbr/\u003eThe returned promise is resolved with a status, and is rejected in case of any internal issues/errors. | - | `Promise`\u003cbr/\u003ewith\u003cbr/\u003e[`availabilityStatus`](#availabilityStatus) |\n| **SignIn.requestConsentVerification** | | |\n| Displays the biometric scan prompt as a popup and returns a promise after user's actions.\u003cbr/\u003eThe returned promise is resolved no matter if the verification was successful or not, and is rejected in case of any internal failure/error or when incorrect `promptMessage` has been passed as an argument.| `promptMessage : String`\u003cbr/\u003eAdditional text which will be placed in the login prompt popup.\u003cbr/\u003e | `Promise`\u003cbr/\u003ewith\u003cbr/\u003e[`verificationResult`](#verificationResult) |\n\n---\n\n### Status result object\n\nEach method returns one of the enumerated objects representing the result of called action (`getDeviceStatus`, `requestConsentVerification`).\nEach of these objects contain two properties:\n* `value` - contains numerical value matching the official values. This can be used by developers for internal implementation keeping the last result for simplicity.\n* `message` - official text (in english) saying exactly what the result is. This can be used to directly display the status without conversions.\n\nThere are two groups of result objects:\n\n#### [`availabilityStatus`](https://docs.microsoft.com/en-us/uwp/api/windows.security.credentials.ui.userconsentverifieravailability?view=winrt-22000)\n| Result | `value` | `message` |\n|-|-|-|\n| Available | 0 | \"A biometric verifier device is available.\" |\n| DeviceNotPresent | 1 | \"There is no biometric verifier device available.\" |\n| NotConfiguredForUser | 2 | \"A biometric verifier device is not configured for this user.\" |\n| DisabledByPolicy | 3 | \"Group policy has disabled the biometric verifier device.\" |\n| DeviceBusy | 4 | \"The biometric verifier device is performing an operation and is unavailable.\" |\n\nand\n\n#### [`verificationResult`](https://docs.microsoft.com/en-us/uwp/api/windows.security.credentials.ui.userconsentverificationresult?view=winrt-22000)\n| Result | `value` | `message` |\n|-|-|-|\n| Verified | 0 | \"User consent verified\" |\n| DeviceNotPresent | 1 | \"There is no biometric verifier device available.\" |\n| NotConfiguredForUser | 2 | \"A biometric verifier device is not configured for this user.\" |\n| DisabledByPolicy | 3 | \"Group policy has disabled the biometric verifier device.\" |\n| DeviceBusy | 4 | \"The biometric verifier device is performing an operation and is unavailable.\" |\n| RetriesExhausted | 5 | \"After 10 attempts, the original verification request and all subsequent attempts at the same verification were not verified.\" |\n| Canceled | 6 | \"The verification operation was canceled.\" |\n\n---\n\n## Contributing\n\nIf you would like to contribute to the *react-native-windows-hello* project, you are more than welcome!\nYou can do this by:\n* Create an [Issue](https://github.com/callstack/react-native-windows-hello/issues/new) and let the author handle it\n\u003cbr/\u003eEach issue created in the [Issues section](https://github.com/callstack/react-native-windows-hello/issues) gives a chance of improving the project and make it even more useful.\n* Create the [Pull Request](https://github.com/callstack/react-native-windows-hello/compare) with the desired changes\n\u003cbr/\u003eWhen creating the pull request please remember to describe changes you made and how to test them. A short demo of any kind is very appreciated.\n\n### Setting up the project\n\nTo start developing you need to fork this project, and clone your fork.\n\u003cbr/\u003eAfter that you can:\n* `yarn install`\n* Implement changes (mostly in *windows/ReactNativeWindowsHello/Source* directory)\n* After implementation you can check the build by running:\n\u003cbr/\u003e`msbuild -p:Configuration=Debug -p:Platform=x64 .\\windows\\ReactNativeWindowsHello.sln`\n\u003cbr/\u003eOr launch the build through the Visual Studio.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbartoszklonowski%2Freact-native-windows-hello","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fbartoszklonowski%2Freact-native-windows-hello","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbartoszklonowski%2Freact-native-windows-hello/lists"}