How could you start parts of a monolith platform?


We have a monolith platform with a new client and it is easier to start just parts of the platform. We have some experience in this, but I would like to know how are you guys doing it.

The example - the current platform for the current client supports

  1. Pictures
  2. Videos
  3. Courses
  4. Groups

“New client” needs just Pictures and Videos.

So I would like to keep the old code base, preferably in a single branch with a different configuration that just turns Courses and Groups on for one of the clients. Otherwise they are separated and turned off.

Currently we are splitting the logic in rails engines that are created with --full. In this way we have a different Gemfil and different layouts for the different apps.

But the more gems we add the slower the specs become although they stay the same number. It is also interesting how to split routes, initializers and views. As the emails send from from of the platform are different from the emails send by the other platform. Also the heading layout for one of the platform contains links to “Pictures, Videos, Courses, Groups” while the other contains links to “Pictures, Videos”

It would be great If I could get your input on this.