Is there an existing issue for this?
Feature Request
Expecting users to know what resides in which web3 package is optimistic, to say the least. It's hard for me (even though I do have extensive experience in developing apps), can't imagine how new web3 developers will find their way.
That said, you don't need to sacrifice tree shaking to achieve that.
Use Cases
Importing types and functionality from a bunch of different web3 packages is hard without knowing which package contains what.
It's also making it hard to link web3 and test changes against the dev version of web3.
Implementation Ideas
You can see solutions in existing sdks like:
Just do named re-export of all the required types, classes, and functions (you can even group them to make it easier for users). When a user uses named import, it will tree shake all not imported code paths.
Example usage would then be:
import {Web3, Contract} from "web3";
const web3 = new Web3(...)
const contract = new Contract(abi, address)
contract.link(web3) or whatever
Feature Examples/References
Are you willing to implement this feature?
Is there an existing issue for this?
Feature Request
Expecting users to know what resides in which web3 package is optimistic, to say the least. It's hard for me (even though I do have extensive experience in developing apps), can't imagine how new web3 developers will find their way.
That said, you don't need to sacrifice tree shaking to achieve that.
Use Cases
Importing types and functionality from a bunch of different web3 packages is hard without knowing which package contains what.
It's also making it hard to link web3 and test changes against the dev version of web3.
Implementation Ideas
You can see solutions in existing sdks like:
Just do named re-export of all the required types, classes, and functions (you can even group them to make it easier for users). When a user uses named import, it will tree shake all not imported code paths.
Example usage would then be:
Feature Examples/References
Are you willing to implement this feature?