Most apps should not start withDocumentation Index
Fetch the complete documentation index at: https://docs.neus.network/llms.txt
Use this file to discover all available pages before exploring further.
window.ethereum. Send people to Hosted Verify on NEUS (passkey-first sign-in there, no wallet extension in your UI), then save qHash on your server keyed to your user. Use in-app wallet signing only when you deliberately need it.
1. Install
2. Create a proof (default: Hosted Verify)
Redirect the browser to NEUS. After success, NEUS sends the user back toreturnUrl with qHash in the query string (your callback route should read it and persist it).
qHash in your database next to your own userId. It is the portable trust receipt reference. Hosted Verify covers mode=popup, origin, and postMessage if you prefer a popup.
React: gate in place
If you already use React,VerifyGate opens the hosted flow when needed and keeps your page free of wallet UI:
3. Poll (optional)
If you issued a proof from your own backend (API +npk_*) and need to wait on async work, poll by qHash. Hosted redirect users usually already have qHash on the return URL.
4. Check from your server
UsegateCheck in trusted server code (Node, serverless route, backend worker), not in a public browser bundle, for security-sensitive allow/deny.
5. Advanced: wallet inside your app
Only if you intentionally want the user to sign inside your domain with a browser wallet:client.verify() defaults private. See SDK authentication and Signing format.
Next: Integration