I have an umbrella project with multiple apps. Two are just libraries with utilities and shared code, while the others are Phoenix applications that can be served.
For instance:
Umbrella app
├── core (shared library)
├── common (shared library)
│
├── backoffice (phoenix app)
│ depends on
│ ├── common (in umbrella)
│ └── core (in umbrella)
├── frontend_1 (phoenix app)
│ depends on
│ ├── common (in umbrella)
│ └── core (in umbrella)
├── frontend_2 (phoenix app)
│ depends on
│ ├── common (in umbrella)
│ └── core (in umbrella)
During my development process, I need to start one Phoenix app at a time, and I do this with:
mix do --app backoffice cmd mix phx.server
But in this way, if I change something in core
or common
, the code is not hot reloaded and I need to restart the server for the changes to take effect.
How can I fix this? Can I start the server from the umbrella root but selecting only one app?