Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Extensibility of networking backend #81

Open
AustEcon opened this issue Jan 5, 2021 · 1 comment
Open

Extensibility of networking backend #81

AustEcon opened this issue Jan 5, 2021 · 1 comment

Comments

@AustEcon
Copy link
Owner

AustEcon commented Jan 5, 2021

Shower thought:

I wonder if the network backend should have an abstract base class (interface)... that forces implementation of 5 main methods...

And allow a formal way of extending the PrivateKey class with additional 3rd party methods.

The reason I'm thinking this is that there are a number of different service providers and will probably be more in future. Not to mention things like mAPI (merchant API), ElectrumX, and other chain indexers.

and I simply don't have time to keep up with it all and support all of them.

This is especially true for _unwriter's tools which I want to support but I'm stretched a bit thin to formally include it in an optimal way... perhaps there's a way to cleanly outsource this via a standardized network interface + plugin-like model? (Then _unwriter tool devs can be free to build out their own bitsv extensions as they see fit)

@AustEcon
Copy link
Owner Author

AustEcon commented Jan 5, 2021

I think overall, a plugin model would be nice because I could limit the scope of bitsv "core" so that I can keep up with it over time whilst bitsv can still stay relevant

but empower other devs to add value in their own diverse ways with their own github repos in a way that allows us to scale our productivity in parallel.

I don't want to be a gatekeeper either or a rate-limiter for anyone.

Thoughts anyone?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant