Hi all. I’m currently working on a new NPM package that is supposed to be an abstraction layer for API endpoints. It would be awesome if one or the other could take a look at it and give feedback if this is a useful package or rather going in a wrong direction.
web3nao http-configs is a zero-dependency library that provides http configs for a number of web3 (and web2) APIs in a simple way. The whole library is fully typed and gives easy access to the included APIs.
Motivated to implement for a simple reason: less dependencies in your own projects. What I have done so far:
- I want to use a service.
- I’m looking for a corresponding SDK or a suitable package that simplifies the integration with.
- Profit
What I haven’t done: examine each package for their deployed dependencies. The effect is that my own application gets unnecessarily many dependencies, and strictly speaking I can’t be completely sure what happens inside the library. Of course, this also opens up some attack vectors.
With web3nao you don’t get any additional dependency. It just contains an easy to use and typed API to use services. It is ultimately up to the user which http client to use (got
, axios
, fetch
, …). The config is mapped to the config of the http client and done.
A significant advantage in my opinion are the provided interfaces. If I connect a new API, or connect an API that I already know but haven’t used for a while, I always have to invest time to find out how to use the API: Authorization, headers, payload, paths, … The types in web3nao make the integration much more effective and efficient, because less mistakes happen and you get the expected result faster.
I appreciate your feedback!
Adam Urban is fullstack engineer, loves serverless and generative art, and is building side projects like weeklyfoo.com, flethy.com and diypunks.xyz in his free time.