@clean-machine-8609 First thing is that our main python file looks ridiculously long to maintain as we provision lot of resources as part of the stack. Often had issues due to the order in which the resources are created. Also keeping track of dependent resources in such huge file is proven to be difficult and time consuming. So I thought we would split them into multiple files and import them as library. Was also looking for pulumi native construct to create custom components which can nicely abstract and separate the concern between component and maintain dependencies. Not sure this is valid approach. But for now it is nicely working as our frontend, backend, dataprotection, storage, secretstore, etc components are working nicely. Most importantly the main python file looks manageable.