Earlier this week, we released the first public Sign-In with Ethereum example on login.xyz for users to try out and view the presented message format. We are pleased to share that it has been a success with many users reporting that the message was cleanly formatted and easy to understand.
We recommend you give it a try over on login.xyz as well!
First, on the "Try it Out" section, click the Sign-In with Ethereum button. You will then be prompted to connect your wallet, and sign a message.
After signing in and signing a message in your wallet, you can now vote for your favorite emoji - either a rainbow or a unicorn.
Even after signing out and signing back in, the vote is still saved. All of this demonstrates an established session.
SIWE Library and Example Application
The SIWE library also ships with an end-to-end example of SIWE in action, inspired by Notepad. The example application runs a local server that authenticates the user using their Ethereum account, via EIP-4361. The server presents to the user a Dapp that uses SIWE to interact with the server.
This example app allows you to sign in with either MetaMask or a WalletConnect, write a message, save the message, and disconnect. Once reconnected, the saved message should reappear.
Try it live at https://notepad.spruceid.xyz!
Running it locally
The example can run on your own computer! You are invited to inspect it, dissect it, modify it, and remix it as you see fit.
To get started and try out the included example, run the following:
git clone email@example.com:spruceid/siwe cd siwe/examples/notepad npm i npm run dev
The example application should now be running on
http://localhost:4361/. If you have any questions about the example application or the library, we're always available to troubleshoot or provide additional information in our Discord.
Sign-In with Ethereum Assets
Finally, all of the visual assets associated with SIWE are now available in the repository as well. This includes the logo, logomark, icon, and example SIWE button featured on login.xyz all being released under a CC0 license to use anywhere you wish!
As we continue our work supporting Sign-in with Ethereum, we especially welcome implementers who already have users relying on similar workflows, authors of related EIPs, and wallet vendors who would like to do more to support user-owned identities to join the discussion. If you are interested in being involved, please join our Discord server: