deno_s3
deno_s3 copied to clipboard
Convert deno_s3 into an aws monorepo
Hi,
After opening several PR's and already working on another PR to implement bucket replication, I was wondering if it would make sense to turn this repo into a monorepo so we can add api's for services other than s3. For example, for bucket replication I need to create an iam role and a role policy, so it would be nice to have an iam module as well. And with a monorepo, we have the advantage of being able to easily share things between all modules. We could also move deno_aws_sign_v4 and deno_sqs to this repo.
My first idea was to create a subfolder for each module and publish each subfolder as a separate module on deno.land, so that each existing module can still keep its current module name. But I think this way we can't share files between modules with local imports.
Another option would be to publish the monorepo as a single module. But we would have to rename the s3 module to deno_aws or something else. I think aws is no longer available.
- https://deno.land/x/[email protected]/s3
- https://deno.land/x/[email protected]/sign
- https://deno.land/x/[email protected]/sqs
- https://deno.land/x/[email protected]/iam
What do you think @lucacasonato about converting this repo to a monorepo?
I think if we were to do this, it would be good to built on top of https://aws-api.deno.dev/. That does all the low level AWS interactions, and we would just maintain the high level nice API.
We could do that as well. But not sure how stable this library is. One thing is that we currently use camelcase everywhere and the generated library uses pascalcase, so we would have to map all the responses if we want to keep using camelcase. But yes, it can still save us some work.