Note that there are some explanatory texts on larger screens.

plurals
  1. POHow to decompose a Rails app into different small apps ecosystem
    text
    copied!<p>My team has been developing a bunch of modules in a monolithic Rails app for internal use. The modules are for example leave request, staff info, tasks/todo etc. Each module has its own purpose but somehow is linked to common information such as staff profile and user authentication. Each module has a developer assigned and they commit code to the same Rails app. Currently, it's super hard to maintain the code and scale. Now, I'm doing my research to decompose the app into small distributed apps and make them an ecosystem. Here are the concept I'm looking for:</p> <ul> <li>There should be a master app that maintain the views of other client apps. Better yet, it acts as a platform for other client apps to plug in to it. Staff logs in to this master app to access client app.</li> <li>Master app should render views of client app using AJAX or other ways (not decided). </li> <li>Although, I want to decompose the apps, but each app should still be able to query resources/data such as staff profile from other client app in the ecosystem.</li> <li>Actually, I have not decided about the interaction of each app. Thinking to us RESTful (not decided).</li> <li>It should support development environment where each developer can develop each app independently. Hence, maintaining their own code in their own git repository. This is probably the main purpose of decomposing the app in the first place.</li> </ul> <p>I'm reading Service-Oriented Design with Ruby on Rails book, but it seems like they focus on decomposing an app into small different services, whereas I want to have small different apps. Just wondering if there's any other ways to do. </p> <p>Sorry for a long question and asking too much. Just want to know if you have been in the same situation and can guide me to some articles, communities, books so that I can continue more on my research.</p>
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload