Цитата:
Наиболее логичным является размещение частей в соответствующих приложениях (application).
Базовый функционал, на котором строятся приложения, будет размешен в модуле common.
Независимые части кода, разместим в отдельных модулях: пагинатор(paginator), капча(captcha) и т.д.
Если какой-то код абстрактен т.е. не привязан к конкретной реализации (например тот же пагинатор), то логичнее вынести в его отдельный класс\модуль. Также можно выносить в модули части CMS (например форум или статьи), чтобы потом на другом хостинге можно было быстро собрать эту же CMS, но с другим набором модулей.
Модули имеют ту же структуру что и приложения, поэтому создание приложения особо не отличается от создания модуля.
В common вы храните все файлы (виды, контроллеры, модели и т.д.), которые используются в нескольких приложениях. Вы можете не создавать лишние классы аля Kohana_... если не планируете расширять данные их в приложениях.
Допустим у вас есть модель Article отвечающая за статьи, в backend мы переопределяем её и добавляем, например, метод для импорта статей в PDF, а во frontend, например, переопределяем методы find и find_all, чтобы отображались только статьи прошедшие модерацию - active = 1 (статус проверяется по полю active).
Вот тут
https://github.com/WinterSilence/kohana ... lop/common можно посмотреть, как приблизительно это должно выглядеть