spruceid / siwe-ex

Sign-In with Ethereum Implementation for Elixir
Apache License 2.0
12 stars 10 forks source link

Remove Rust dependency by providing native Elixir implementation #20

Open alexgleason opened 2 years ago

alexgleason commented 2 years ago

Hi, I'm interested in using this library in a self-hosted open source project.

The extra dependency on Rust makes this a problem since it would break existing installations and make it harder for new users to install.

I'm wondering if it would be feasible to implement this natively in Elixir.

wyc commented 2 years ago

Thanks so much for your interest. We wrote this implementation embedding Rust because we couldn't find within the Elixir ecosystem robust and well-maintained Ethereum libraries that had EIP-1271 support on the roadmap to eventually support smart contract wallets. We also had trouble finding an ABNF-like library to construct a parser.

Your concerns about increased difficulty for new users is a valid one, and I think there could be other ways we improve this around the documentation. However, if you can think of a straightforward way to add the support above in pure Elixir, I would be really excited to learn more about the approach because it would simplify things a lot for the end user.

tansanDOTeth commented 2 years ago

How did you fix this?

awoie commented 2 years ago

We will keep this issue open until the community finds a good solution for this. Contributions are highly appreciated.

RooSoft commented 1 year ago

Maybe https://github.com/philss/rustler_precompiled