Ruby on Rails to Handle Multi-site Solution

I have recently taken on a job that is allowing me to overhaul the current architecture of an enterprise website. This current site has many departments it must handle and is relied on by 1000s of users within the company. My first decision is to decide what language I want to use on the new platform. It is currently a Sharepoint .Net site and is a nightmare to work with. We will essentially be blowing up the current version and starting over. However, with this new edition there are a lot of new features that must get integrated into and this is where my knowledge and history with Ruby gets hazy. I have a few Ruby developers at my disposal, but I wanted to reach out to this community to see if you think my goals and Ruby are a suitable pair.

Here are some of the new things we will be adding:

  • One major overarching site with numerous micro-sites attached to it, multi-site control.
  • A global CMS with access only by the admin and specific team members.
  • This global CMS will contain all the information, statistics and access to all attached micro-sites.
  • This global CMS does not have to contain the files for each CMS, but will allow the admin and developers to access any CMS on our system to update those sites if needed.
  • Each micro-site will have their own user privileges and logins. These users will only manage content for their site. In the end the contributors for this site won’t even know this is attached to the larger site.
  • The micro-sites will be robust and developed by this core team. We will be managing the top core micro-sites underneath our corporate one. However, the chief editor for each micro-site and their team will require credentials to manage content.
  • Certain micro-sites will be made by the users themselves. The way we plan to achieve this is by providing multiple templates for them to choose from. Once they select a template they can place their content in it. It is a very basic system set in place to aid our community in providing and managing their website for them. This platform will still allow them the ability to edit their own content. In return for this we will have a section on their site we can promote our business updates. These business updates will come from a single point in the corporate CMS.
  • An example of all this would be creating an overarching website about a soccer league for a specific city. Each microsite underneath that would be the specific team. Each team would make their site using our platform, on their own domain name. Our CMS will provide them all they need to add content, but keeping it very simple for non-web developers. These are my main concerns in looking for if Ruby will be the right solution. The way I have been looking at it is, there is a mothership CMS and then lots of smaller ones underneath it and they branch off from there. Our mothership will be able to manage everything that is going on, but we plan to hand over the keys for each smaller site underneath to the respective user.

The mothership website will have all its own requirements with handling each department’s content publishing, version control, quality assurance, and user credentials. However, I am comfortable Rails will be able to provide this part.

What does this look like to the Ruby community? This is a very large project that will take serious time to succeed at. However, if linking up CMS hierarchy is possibility, I would like Rails to be my solution.