In the Elixir Getting Started guide, there is a section called Dependencies and Umbrella Projects. It introduces the --umbrella flag when creating a mix project.

The guide covers some of the differences between an umbrella project and a regular mix. For my own understanding, I generated two projects and diff’d them to visually see how they compare.

Quick note on understanding the meld display.

Green means it exists in that file only. Blue is for highlighting changes. The darker blue shows what specific text was changed in the line.

Project Directories

Standard mix on the left, umbrella mix on the right.

Directory comparison

config.exs

Standard on the left, umbrella on the right.

config.exs comparison

README.md

Standard on the left, umbrella on the right.

readme.md comparison

mix.exs

Standard on the left, umbrella on the right.

mix.exs comparison

Conclusion

Seeing the differences like this emphasizes the change in the comments. When I’m learning something new, seeing the difference in the comments, which are directions to the developer, can be very helpful.