Sign in with Ethereum plugin fix

Hey all,

i work with the EthID team (ethid.org). We’ve taken over stewardship of the SIWE (Sign in with Ethereum) project and with it, the Discourse plugin. We’ve done a pretty thorough rewrite of the original Spruce plugin. Here’s what’s new:

v1.0.1

  • Injected wallets just work. MetaMask, Rabby, Rainbow, Coinbase Wallet, and any browser-injected wallet are supported out of the box with zero config
  • WalletConnect is now optional. If you want it, just drop in a free project ID from the reown dashboard. Without one, the plugin still works fine with injected wallets
  • ENS names & avatars resolved automatically and used as the default username / avatar
  • New UI, much cleaner connection and signing flow
  • Smart contract wallet support: EIP-1271 signature verification for Safe and other contract wallets. Just needs an Ethereum RPC URL in settings (Infura, Alchemy, etc.)
  • Ruby 3.4+ compatible, updated all the native gem dependencies

The plugin lives here now: GitHub - signinwithethereum/discourse-siwe-auth: Discourse plugin for SIWE authentication · GitHub

If you’re on the old spruceid/discourse-siwe-auth, just swap the git URL in your app.yml and rebuild. Everything else should carry over.

Happy to answer any questions or take feedback - feel free to open issues on the repo.

Warm regards,
jalil.eth

3 Likes

Hi @jalil , thank you for initiating this fix and taking the community’s feedback seriously.

As someone who experienced the SIWE friction earlier, I truly appreciate the team’s quick response in addressing this. A seamless onboarding/login experience is definitely a key pillar for Gnosis 3.0 adoption.

I will try to test the login again once the plugin update is finalized. Looking forward to a smoother ‘Sign-In with Ethereum’ experience on the forum

Hi team, @jalil

I am following up to report that the SIWE login issue persists on forum.gnosis.io even after the recent fix. I have performed extensive troubleshooting to isolate the issue:

  1. Wallet functionality: My wallet works perfectly on other platforms like Uniswap, triggering the signature request without issues (see attached comparison).
  2. Cache/Cookies: I have cleared all browsing data and cookies for the domain, but the “Sign-in with Ethereum” button still does not respond.
  3. Console Error: I noticed a SES_UNCAUGHT_EXCEPTION: null in the browser console when trying to interact with the forum, which might be related to the login script failing.
  4. Backend Fix: I see the recent fix regarding RenderEmpty in auth_controller.rb, but it doesn’t seem to resolve the UI hang on the live site.

Could you please verify if there is a remaining script conflict or deployment issue preventing the login handshake?

Thank you

the mentioned bugs are all because of the old integration (the forum owners will have to upgrade to the new one before you can use it).

Thanks for the clarification.

That makes sense — I suspected it might be related to the forum-side integration rather than the wallet itself.

I’ll wait for the upgrade on the forum side and will test the SIWE login again once the new integration is deployed.

Happy to help test if needed.