Package status
The auth kit for ICP dApps
NFID IdentityKit is a React library that makes it easy to add wallet connection to your dapp. It’s intuitive, responsive and customizable. Developers will be able to easily select which wallets they want to support in their apps for authentication, signatures, and transfers.
Features
Instant user onboarding
NFID Wallet (the only on-chain single-signature wallet with email onboarding) and Internet Identity (DFINITY Foundation’s authentication provider) are two self-custody wallets users can get without downloading a browser extension, mobile app, or writing down a seed phrase.
Uninterrupted user experiences
Keep users immersed in your dapp by removing wallet approval pop-ups with delegations. Traditional Web3 UX requires users approve every transaction that updates smart contract state. With delegations, dapps can design user experiences with fewer (or no) wallet approval pop-ups.
Wallet management
Out-of-the-box wallet management for your dapp. Aside from handling the connection and disconnection of wallets, IdentityKit supports numerous wallets, allows dapps to request wallet signatures and canister calls, and abstracts all the complexity behind an easy-to-use SDK.
Customizable
Tweak IdentityKit UI to match your style. You can pick from two modal modes - Featured and Compact - three color themes - light, dark, and system - and choose the order and display of the wallets you want to support.
Industry standard
The NFID team worked with the community and DFINITY to create the standards apps need to interact with users, and packaged them into IdentityKit to make working with them easy for developers:
- ICRC-25 to get permissions and the wallet’s supported standards
- ICRC-27 to get wallet addresses
- ICRC-34 to get a wallet address delegation
- ICRC-49 to execute authenticated canister calls
Use the interactive demo and get started with installation.