42dx / edgio-go-sdk

Go SDK implementing Edgio's REST API
http://github.42dx.dev/edgio-go-sdk/
MIT License
8 stars 1 forks source link

[FEATURE]: Split project into multiple go-modules for independent usage #35

Open rafaelassumpcao opened 6 months ago

rafaelassumpcao commented 6 months ago

Description

The goal is to mimic the same pattern as other projects have been doing, modularizing the sdk as much as possible, where each folder on the root level represents a module, so the end user don't get bloated with a bunch of dependencies they didn't want and didn't need indeed.

For this we are planning to have this repository working like a monorepo, where by design each of these contents have their own modularization and usage. if for some reason on the future, one of these does not make sense we can easily teardown or halt the work if needed.

we need to have these decisions well documented for future reference and to help onboard other peoples.

Proposed Solution

As a developer, I want to be able to use independent packages, so I can use parts of the sdk on demand, without overloading the end product with useless dependencies.

Alternatives / Workarounds

No response

Acceptance Criteria

Additional Context

it is important to define what is the expected behaviour when the user uses more than one module to compose his solution, should the client being persistent throughout the modules? should each of them being separately in their functionality? should we have the client behaving as a singleton just when it identifies environment variables on the system?

References

Code of Conduct

Upvote & Fund

Fund with Polar