Monorepo setup for Libraries

Hey peeps,

I am wondering if you have any setup where you are doing monorepo for libraries. I am trying to figure out how to improve the burden of maintaining Ueberauth-like packages where they are many “plugins” to them.

Do you use a particular directory to locate the libraries?
What problems should I consider?

You could compare bamboo and swoosh. One uses separate packages and iirc repos and the other is a single package and repo with adapters managed internally.

Would Elixir do dead-code elimination?
Although I prefer Swoosh, there is a lot of code that will be bundled in, and compiled even though I don’t need it. Convenient for libs, inconvenient for the app.

Which the same dilemma about sharing Test Support files as part of the package. Today I am doing something weird: one_piece_commanded/docs/how-to-guides at master · straw-hat-team/one_piece_commanded · GitHub in order to avoid bundling the test support things.

I wish there was a way to do code-elimination of some sort at least based on the environment for that one.

Do you think that using apps directory would be confusing if I want to have a directory for all the libs in the repo? (something like packages convention in the yarn world)