boddhisattva

boddhisattva

Resources on how to build and structure Umbrella Projects using Phoenix 1.3

Greetings everyone,

At my current workplace we’re evaluating different ways of building a microservices architecture for some parts related to our existing apps and with the Umbrella apps approach it looks like one doesn’t necessarily have to manage them in separate repositories, release management also gets easier(in terms of which PR’s get merged first) and I believe one can also take the advantage of having all microservices in one language(if Elixir is a good fit for a given problem at hand) and still having good amount of separation of concerns.

I’ve been able to find this information by looking up some of the below resources and videos around Umbrella Projects:

  1. Lonestar ElixirConf 2017- KEYNOTE: Phoenix 1.3 by Chris McCord
  2. Elixir Umbrella - Microservices or Majestic Monolith? Georgina McFadyen - Elixir.LDN 2017
  3. ElixirConf 2016 - Building Umbrella Project by Wojtek Mach
  4. ElixirDaze 2017- Using Your Umbrella by Chris Bell
  5. Create an Elixir umbrella project containing a phoenix app and build a release with Distillery
  6. Designing scalable application with Elixir: from umbrella project to distributed system
  7. Structuring Elixir projects
  8. Dependencies and umbrella projects
  9. Umbrella Projects - Elixir School

From my research so far, I’ve found that there are hardly enough books, tutorials that cover best practices around building umbrella apps from ground up in at least some more depth in a step by step manner and having more materials(Books, Tutorials, Best Practices, Tips, Lessons learnt and other resources) around this would be really helpful at a time when we’re considering an umbrella app structure as a way of doing things. In the meantime, I plan to also learn more about umbrella projects from my end via trial and error.

Currently, I plan to closely follow the questions related to Umbrella projects based on those that have the umbrella tag as part of Elixir Forum and also follow relevant questions via other platforms like - Elixir lang Slack, Stack Overflow etc.,.

If there any books, tutorials, best practices, tips, lessons learnt the hard way(this can be really valuable to fellow readers like me) and other gotchas that you think could be worth sharing from your experiences of building an umbrella project at your workplace or through your side projects, please do share them here via relevant links or your own experiences as a reply to this thread here as I think we all could benefit from each others experiences given that there are limited resources/documentation available on this topic currently.

Also if you’re planning to write a new blog on your experience of building an Umbrella project, please do link to those posts as part of this thread.

Thank you.

First 6 of 6 Posts Switch mode

Bo_Gs

Bo_Gs

I have been trying to move from Ruby to Phoenix/Elixir and for me learning is by doing. Have been tinkering with Elixir but I am having a hard time trying to understand umbrella projects. Waiting on the new phoenix book but agree not enough resources :thumbsup: imo for what it is worth :003:

AstonJ

AstonJ

If you’re interested in microservices or the Replaceable Component Architecture, you might like PragDave’s online course :003:

boddhisattva

boddhisattva OP

Hi @AstonJ ,

Thanks for your response! Does Dave Thomas make use of Umbrella apps in the online course ? If so, that’ll be perfect.

oldpond

oldpond

He does not use umbrella projects in his course. However, he does an excellent job of factoring his application into concerns that are clear and intuitive.

AstonJ

AstonJ

He goes a step beyond umbrellas and builds his project as a series of fully independent (and replaceable) apps - pretty much everything you learn will be useful to you if you use umbrellas :023:

prodis

prodis

Two more resources about how to decide using umbrella projects:

  1. Adopting Elixir book (see “Dividing Applications” page): Adopting Elixir: From Concept to Production - Ben Marx, Jose Valim, Bruce Tate - Google Books

  2. Umbrellas: only when it rains? (Elixir School blog post): Umbrellas: Only When it Rains? | Blog · Elixir School

— All posts loaded —

Where Next?

Trending in Chat/Questions Top

krisleech
Hey folks, I’ve been using Elixir for over a couple of years (phx, ecto, broadway, oban). For this kind of work you do not tend, in my e...
New
mhindujadheerajsudan
Hi, I’m Dheeraj Sudan from the UK. I’m a software developer and also run a business with my wife Meenu Hinduja. I’m interested in getting...
New

Other Trending Topics Top

JesseHerrick
Hey, I’m Jesse and I’m the main contributor behind Dexter, a full-featured, lightning-fast Elixir LSP optimized for large codebases. It s...
New
jimsynz
Beam Bots (or just BB for short) is a framework for building fault-tolerant robotics applications in Elixir using familiar OTP patterns. ...
New
Damirados
Hello everyone. After busy few months I am happy to announce v0.1.0 of Emerge & Solve. They are GUI (Emerge) and State management (S...
New
ausimian
Emily is an Elixir library that runs Nx computations on Apple’s MLX. Install it as the default Nx backend and Nx, defn, Axon, Nx.Serving,...
New
type1fool
I just stumbled on a newly redesigned elixir-lang.org. :tada: It looks like @Software_Mansion did the work, and I think it is generally a...
New
akoutmos
@hugobarauna and I (Alex Koutmos) have been hard at work on writing a book on Nerves that takes you from simply blinking LEDs to building...
New

We're in Beta

About us Mission Statement