Programmers Stack Exchange is a question and answer site for professional programmers interested in conceptual questions about software development. It's 100% free.

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

I am thinking of managing a product source I am doing using Codeigniter + HMVC.

Right now my folder structure is something like this:

      |  |--controllers
      |  |--models
      |  |--views
      |  |--controllers
      |  |--models
      |  |--views
       |  |-- module1 theme files
       |  |-- module2 theme files

I am thinking of cleaning this up and making the modules self contained at development time, like this

 |-- this will only contain the core files ()
 |--modules (an empty directory OR core modules)
  |  |-controllers
  |  |-models
  |  |-themes
  |  |  |-default
  |  |  |  |-module1 default theme files
  |  |-assets
  |  |  |-css (css files for just this module)
  |  |  |-js (js files just for this module)
  |--//same as above

And then use Phing to build the project during which, the modules will be copied to respective folders, css files and js files will be minified (SCSS compiled) and images copied to respective folders.

This looks great for deploying changes, but I think it will just increase development time, as every time I make any changes, I will have to build even to see it in development.

Have any one used this approach to development using CI? or even better? I want to keep my core core more trackable and separate the modules for better version controlling, as I will be able to add those modules to the project as sub projects.

share|improve this question

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Browse other questions tagged or ask your own question.