http://demo.dodocs.ru/

Веб-интерфейс для управления хранилищем документов, почтовый клиент, календарь для постановки и отслеживания задач.

Языки: PHP, JavaScript
Клиентские веб-технологии: HTML/XHTML, CSS, Ajax
Фреймворки, CMS: Yii, jQuery, jQuery-ui, backbone, bootstrap
Системы контроля версий: SVN
Системы организации коллективной работы: Redmine
Среды разработки: NetBeans
Веб-сервера: Apache
Базы данных: MySQL
Операционные системы: Linux (Fedora)
Другие технологии: WebDAV

В результате работы был создан сервис офисной среды для работы предприятий малого и среднего бизнеса и решены следующие задачи:
  1. Создан сервис, работающий по модели Saas.
  2. Создано не древовидное хранилище документов, с возможностью он-лайн редактирования.
  3. Документы представлены в визуальном виде, с возможностью увеличения и предпросмотра.
  4. Создана система тэгирования, позволяющая быстро находить нужный документ.
  5. Организована система прав доступа на документы, позволяющая проводить совместную работу над проектом (разделение прав, комментирование, он-лайн редактор, постановщик задач).
  6. Создан полноценный почтовый клиент, а автоматической отправкой аттачей в хранилище документов.
  7. Автонаполняемый календарь и менеджер для постановки задач
  8. Организована удобная работа над проектами: создание заметки, рабочие группы, обмен ссылками.
Система состоит из следующих основных модулей:
  1. Хранилище данных, представляющее собой область системы, содержащую документы, заметки, ссылки и операции по работы с ними.
  2. Почта, представляет собой почтовый клиент, содержащий основные операции по работе с почтовыми сообщениями, а так же возможность автоматического добавления вложений в хранилище данных. Можно настроить сбор почты с уже существующего почтового ящика.
  3. Календарь, планировщик задач.
Для построения сервиса по модели Saas использована мультитенантная архитектура, которая дает возможность изолированно обслуживать пользователей из разных организаций в рамках одного сервиса. Сервис реализует визуализацию галереи файлов, для этого необходимо создание изображений предварительного просмотра основных документов. В связи с тем, что процедура создания таких изображений занимает относительно продолжительное время, создана масштабируемая система обработки документов. Для хранения документа предусмотрена система мультихранилищности. В рамках одного аккаунта предприятия есть возможность подключать различные хранилища документов, а так же использовать общее WebDAV хранилище на сервере. Для реализации серверной логики используется язык программирования PHP и Yii Framework, которые позволяет строить приложение по модели MVC. Интерфейс пользователя реализован с использованием технологии AJAX, для построения взаимодействия клиентской и серверной части был использован JavaScript Framework Backbone. В качестве загрузчика JavaScript файлов используется библиотека RequireJS. Для оформления интерфейсов используется CSS Framework Twitter Bootstrap.