Before Starting
You can start this tutorial if you already have a NextJS dapp with MetaMask sign-in functionality.Configuring the Coinbase Wallet Connector
- Open the
pages/signin.jsxfile and addCoinbaseWalletConnectoras a connector toconnectAsync():
Testing the Coinbase Wallet Connector
Visithttp://localhost:3000/signin to test authentication.
- Click on
Authenticate via Coinbase Wallet - Connect Coinbase Wallet
- Sign the message
- After successful authentication, you will be redirected to the
/userpage - Visit
http://localhost:3000/userto test the user session’s functionality:
- When a user is authenticated, we show the user’s info on the page.
- When a user is not authenticated, we redirect to the
/signinpage. - When a user is authenticated, we show the user’s info on the page, even refreshing after the page. (
Explanation: After Web3 wallet authentication, the next-auth library creates a session cookie with an encrypted JWT [JWE] stored inside. It contains session info [such as an address and signed message] in the user's browser.)

