첫째, 이미 존재하는 discourse-ethereum 플러그인이 있습니다(아마도 오래되었을 가능성이 높지만, 존재는 합니다).
이 플러그인은 기본적으로 목록의 1번과 2번을 처리합니다(다만 '2’에 대한 해석이 약간 다릅니다). 사용자 계정과 함께 이더리움 주소를 저장하고, 클라이언트에서 메타마스크(Metamask)와 상호작용하기 위해 web3.js를 사용하며, 트랜잭션 세부 정보를 가져오기 위해 이더스캔(Etherscan)을 사용합니다.
둘째, 이전에 클라이언트를 위해 디스코urs 크립토 로그인 플러그인(이 역시 메타마스크를 포함)을 개발한 적이 있습니다. 해당 클라이언트는 이후 다른 방향으로 사업 방향을 전환했습니다. 불행히도 그 솔루션을 오픈소스로 공개하는 것은 불가능하며(어쨌든 특정 프로바이더에 종속적인 부분이 있습니다), 참고로(기술적으로 목록에는 없으나) 메타마스크를 통한 로그인에서 극복해야 할 주요 장벽은 이메일이 연결되지 않은 사용자 계정을 가질 수 있는 능력입니다.
다음 단계는 여기서 무엇을 이루고자 하는지에 따라 달라집니다. 단순히 사용자가 크립토 지갑을 연결할 수 있도록 하려는 것이라면, discourse-ethereum 플러그인이 그 역할을 합니다. 아마도 최신 Discourse와 호환되도록 일부 코드를 업데이트하는 것만 필요할 것입니다. 이는 Discourse에 익숙한 누구라도 비교적 쉽게 처리할 수 있는 작업입니다.
그러나 디스코urs와 크립토를 연결하는 더 일반적인 플러그인을 만들려는 것이라면, 로그인 및 그룹/카테고리 접근 권한, 그리고 메타마스크와 같은 브라우저 확장 프로그램 없이도 사용할 수 있는 잠재적 기능 등을 포함하여 플러그인이 사용될 수 있는 다양한 애플리케이션을 염두에 두고 프로젝트를 상세히 정의하는 것이 먼저 필요합니다.
이러한 조사는 플러그인의 설계를 변경하게 되며, 이더리움 로직의 더 많은 부분을 백엔드로 이동시켜 향후 더 많은 기능을 추가하고 싶을 때 더 큰 유연성을 확보할 수 있게 합니다.