git repo structure for multiple apps. cloud servers + deployed agent

My business requires us to deploy “agent” nodes inside peoples network’s that will communicate with a cloud elixir cluster. Like an exe file, not a piece of hardware.

These agents will share some code with the server cluster but should be isolated from configs and dependencies leaking over and have its own minimal release build.

I could make multiple github repos, but if I was going to structure it as a monorepo is there a recommend structure for this setup?

Hey @trashhalo :wave: Welcome to the forum!

It sounds like your requirements are:

  • Multiple Elixir apps in a monorepo
  • Some shared code
  • Exclude unused code from releases (minimal size)

It so happens that we have been working on a library called Uniform to handle scenarios like this.

I’m curious if you think it’s a good fit. I’m here if you have any questions. Or on Elixir Slack @paulstatezny.