sigma-rust icon indicating copy to clipboard operation
sigma-rust copied to clipboard

Add Python bindings

Open arobsn opened this issue 1 year ago • 4 comments

Implement an API that is functionally equivalent to the Wasm bindings (ergo-lib-wasm). Essentially, this API should provide all the necessary functionality for dApps to build and sign transactions. Key features include:

  • Transaction building
  • Input selection
  • Transaction signing
  • Sigma Constants management and [de]serialization

arobsn avatar Nov 18 '24 12:11 arobsn

If I wanted to try this out, is it correct to fork the repo build this out, and then submit PR?

marctheshark3 avatar Nov 21 '24 16:11 marctheshark3

If I wanted to try this out, is it correct to fork the repo build this out, and then submit PR?

Yes, check out the bindings folder to see how other bindings are implemented, and the pyo3 crate if you're interested: https://docs.rs/crate/pyo3/latest

sethdusek avatar Nov 21 '24 19:11 sethdusek

Is this task already taken? @SethDusek are you currently working on it? If not, I can do it.

0xf965 avatar Jan 16 '25 07:01 0xf965

Is this task already taken? @SethDusek are you currently working on it? If not, I can do it.

Hi, I'll try to allocate more time to this issue soon. If I'm unable to I'll let you know. Thanks!

sethdusek avatar Jan 19 '25 10:01 sethdusek

Implement an API that is functionally equivalent to the Wasm bindings (ergo-lib-wasm). Essentially, this API should provide all the necessary functionality for dApps to build and sign transactions. Key features include:

* Transaction building

* Input selection

* Transaction signing

* Sigma Constants management and [de]serialization

I've published documentation and an alpha version to pypi to try out (will be yanked before final release). I would appreciate any feedback on the interface https://ergo-lib-python.readthedocs.io

sethdusek avatar Mar 08 '25 05:03 sethdusek