Sharing functions between applications in an umbrella

I have an umbrella application with several applications in it. As time goes on I am noticing that in some instances I have to rewrite a lot of the logic from one application to another. Overall, the umbrella structure is working well, there are just a few utility functions I use in almost all of the applications.

What is the best way to share these functions between applications?

At this moment my best idea is to create a new lightweight application that I can require in the other applications. Does this approach make sense?

2 Likes

I ended up just creating a small application that dosen’t require any of my other applications - thus it can be required by any of them.

5 Likes

And that would probably the advise of everyone; so well chosen!

Ps. If the functions are for a specific domain (as in: not a seemingly random collection) and can be useful for others, you might consider making it a lib on Hex.

2 Likes

If there was any value to others I definitely would, these are super specific to our app/client.

Hex.pm supports private libraries (though you have to pay for it)