IDKit is the toolkit for identity online. With IDKit you can easily interact with the World ID Protocol.
Integration is very straightforward. Follow the relevant steps below.
yarn add @worldcoin/idkit
# or
npm i @worldcoin/idkit
# or
pnpm install @worldcoin/idkit
import { IDKitWidget } from "@worldcoin/idkit";
<IDKitWidget actionId="get_this_from_the_dev_portal" signal="my_signal" handleVerify={verifyProof}>
{({ open }) => (
{/* You can render whatever you want here, and call open() to open the widget */}
<button onClick={open}>Verify with World ID</button>
)}
</IDKitWidget>
More details can be found in the documentation.
IDKit exposes the handleVerify
option for your app to perform additional verification on the returned response, often a call to an API that ensures the proof is valid.
Warning Make sure you verify the proof, and that you don't do it client-side!
Optionally, IDKit also provides an onSuccess
option, which you can use if your app needs to execute some code after verification succeeds.
World ID is the privacy-first identity protocol that brings global proof of personhood to the internet. More on World ID in the announcement blog post.
World ID lets you seamlessly integrate authentication into your app that verifies accounts belong to real persons through Sign in with Worldcoin. For additional flexibility and cases where you need extreme privacy, Anonymous Actions lets you verify users in a way that cannot be tracked across verifications.
Follow the Quick Start guide for the easiest way to get started.
All the technical docs for the Wordcoin SDK, World ID Protocol, examples, guides can be found at https://docs.worldcoin.org/
To develop locally, run the following in your terminal:
pnpm i && pnpm dev
This will install all necessary dependencies and start two local development servers -- one using examples/with-html
and one using examples/with-next
. Check your console for the URLS for each, and open them in your browser. Any changes made to packages/core
, packages/react
or packages/standalone
will be automatically built and the examples will be reloaded.