{"id":23364510,"url":"https://github.com/fission-codes/discourse-web3-login","last_synced_at":"2025-10-15T22:23:55.942Z","repository":{"id":99788746,"uuid":"204568256","full_name":"fission-codes/discourse-web3-login","owner":"fission-codes","description":"Web3 Ethereum login plugin for Discourse","archived":false,"fork":false,"pushed_at":"2019-11-19T00:02:30.000Z","size":17,"stargazers_count":5,"open_issues_count":3,"forks_count":1,"subscribers_count":4,"default_branch":"master","last_synced_at":"2025-04-03T04:56:18.277Z","etag":null,"topics":["discourse","discourse-plugin","ethereum","identity","web3"],"latest_commit_sha":null,"homepage":null,"language":null,"has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/fission-codes.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null},"funding":{"open_collective":"fission"}},"created_at":"2019-08-26T21:54:25.000Z","updated_at":"2023-08-05T13:52:49.000Z","dependencies_parsed_at":null,"dependency_job_id":"9b2871de-aa80-417b-ba3b-f6a3729bdf2b","html_url":"https://github.com/fission-codes/discourse-web3-login","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":"fission-codes/project-template","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/fission-codes%2Fdiscourse-web3-login","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/fission-codes%2Fdiscourse-web3-login/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/fission-codes%2Fdiscourse-web3-login/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/fission-codes%2Fdiscourse-web3-login/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/fission-codes","download_url":"https://codeload.github.com/fission-codes/discourse-web3-login/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248132122,"owners_count":21052977,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["discourse","discourse-plugin","ethereum","identity","web3"],"created_at":"2024-12-21T13:16:32.452Z","updated_at":"2025-10-15T22:23:50.885Z","avatar_url":"https://github.com/fission-codes.png","language":null,"funding_links":["https://opencollective.com/fission"],"categories":[],"sub_categories":[],"readme":"![](https://github.com/fission-suite/PROJECTNAME/raw/master/assets/logo.png?sanitize=true)\n\n# Discourse Web3 Login\n\nA [Discourse forum](https://discourse.org) plugin that enables authentication / login via a Web3 account.\n\n_Note: this is an empty repo, and is where the code for this project will go. Please join our Discord chat for more info._\n\n[![License](https://img.shields.io/badge/License-Apache%202.0-blue.svg)](https://github.com/fission-suite/blob/master/LICENSE)\n[![Built by FISSION](https://img.shields.io/badge/⌘-Built_by_FISSION-purple.svg)](https://fission.codes)\n[![Discord](https://img.shields.io/discord/478735028319158273.svg)](https://discord.gg/zAQBDEq)\n[![Discourse](https://img.shields.io/discourse/https/talk.fission.codes/topics)](https://talk.fission.codes)\n\n# Scope\n\nDiscourse supports extensibile authentication plugins. The goal is to be able to link a \"Web3 account\" aka Ethereum account / address / wallet to use it as an authentication mechanism for Discourse.\n\nThis will need a web3 JS provider. Since Discourse uses Ember, looks like [ember-ethers](https://www.npmjs.com/package/ember-ethers) is the right thing. Might need updating.\n\nA connection to the blockchain to check signatures or other interactions will get handled by either EtherScan API calls, Infura, or a similar node-as-a-service. Ideally, this is configurable so that people who run forums can choose to run their own nodes. As far as Discourse is concerned, this is like an API call to any other service.\n\n## Present a \"Login with Ethereum\" button\n\nThis should work with most EVM-compatible chains, so it might be configurable to say \"Login with X\".\n\n## Associate addresses with a Discourse account\n\nFor new signups, like with Twitter login, will need to prompt for email address.\n\nShould be able to store the address logged in with in the database as part of the user profile, and optionally disply as a part of the user profile.\n\n# Future\n\n_These are some future / stretch goals_\n\n## WalletConnect\n\nEnable login with [WalletConnect](https://walletconnect.org/), with QR code display. This may also mean [Web3Connect](https://github.com/web3connect/web3connect).\n\n## 3Box integration\n\nExtend this so that profile details -- email address, bio, image, etc. -- can be pulled in from 3Box.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ffission-codes%2Fdiscourse-web3-login","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ffission-codes%2Fdiscourse-web3-login","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ffission-codes%2Fdiscourse-web3-login/lists"}