Мы - киевская типография, которая занимается изготовлением самой разнообразной полиграфической продукции от простых визиток до папок или высечных календарей для конечных клиентов или посредников (Рекламных агентств).
Полиграфия подразумевает наличие достаточно специфических знаний в этой области, которой конечные клиенты не владеют. Для упрощения жизни конечного пользователя, а так же сокращения времени между идеей и результатом, исключения ошибок и прочего, мы пришли к необходимости создания некоего инструмента под рабочим названием Конструктор.
Удачный пример: http://vizitka.com/printing/businesscards-template...
Описание работы:
- Терминология:
- Заказ - это то, что оплачивает клиент. Заказ это полностью готовый к производству "проект" с подробным и пошаговым описанием действий, выполняемых с данным заказом. Так же заказ подразумевает наличие оригинал-макета, с которого производится изготовление.
- Оригинал-макет - это файл, который соответствует требованиям полиграфического производства. На примере визитки: это файл с физическим размером 94х54 мм и разрешением 300 dpi (точек на дюйм).
- Шаблон - набор "инструкций" для конструктора, который подразумевает дальнейшее изменение всех или отдельных элементов продукта конечным пользователем (например, редактирование визитки). Из шаблона в итоге должен получиться оригинал-макет.
- Просмотровые файлы (preview) - это просмотровая визуализация шаблона или оригинал-макета.
- Конструктор - это некий инструмент, с помощью которого конечный пользователь может легко и быстро создать оригинал-макет.
- Не Flash:
- Нам не приемлема эта технология.
- Bootstrap:
- В связи с тем, что сайты построены на этом фреймворке - должна быть возможность легко и быстро менять внешний вид конструктора.
- Конструктор должен быть быстро встраиваемым в сайт (сайты):
- В связи с тем, что сайт не один - конструктор будет использоваться на разных сайтах, построенных на разных технологиях и в разных условиях.
- Конструктор не должен быть привязан к одному типу продукции:
- Конструктор должен быть универсальным, потому как видов продукции достаточно много (например, визитка - это 94х54 мм, флаер - 214х99 мм), и так далее.
- Конструктор должен понимать не только прямоугольные изделия. Например, визитка со скруглением углов или хенгер на дверь, или, скажем, календарь-пирамидка (в собранном виде - тетраэдр).
- Производство подразумевает использование т.н. зон безопасности, которые должны быть отображены в конструкторе:
- На примере визитки: Размер готовой визитки - 90х50 мм. Но файл, подаваемый в печать, должен быть 94х54 мм. Это, т.н., вылеты под обрез. Соответственно, должна быть обозначена (например красным прямоугольником) эта зона;
- Так же на примере этой же визитки: есть так называемая зона безопасности - за которую не должен выходить текст, логотип и прочие значимые элементы. Размер зоны безопасности составляет 86х46 мм и обозначается, например, зеленым прямоугольником.
- Все эти зоны должны быть в конструкторе, но их не должно быть на готовом к печати файле, то есть, они нужны чисто визуально на этапе создания макета. Зоны безопасности должны быть динамичными и не всегда прямоугольными.
- Шаблоны:
- Шаблоны должны быть в каталогизированном виде и сгруппированы по типу изделия (например: визитка, флаер и т.д.) и что-то вроде тегу (например: визитки для салона красоты, авто-мойки, такси, абстрактные и т.д.)
- Конструктор подразумевает наличие какой-то административной части, в которой можно будет создавать шаблоны:
- В принципе, тот же конструктор, но с дополнительными полями/кнопками - типа Название, продукт (визитка, флаер и т.д.), тег (абстрактный, для такси, и т.д.), и кнопку "Сохранить как шаблон".
- Редактирование самого шаблона и сопутствующих названий, тегов, категорий, и т.д.
- После сохранения шаблона должна генериться превью шаблона для отображения в каталоге.
- Сохранение результата действий пользователя в конструкторе в оригинал-макет:
- Когда пользователь закончил редактирование шаблона (например, нажал кнопку "В печать" или "Готово") - происходит генерация оригинал-макета (jpeg без сжатия или png, с необходимыми размерами и разрешением 300 dpi) и его последующая передача в наш обработчик макетов.
- Локализация (i18n): в перспективе конструктор будет переведен на несколько языков.
- Комментарии к коду.
Остальные более точные (технические) требования будут обсуждаться отдельно с исполнителем. Но нужно понимать, что работа должна быть подготовлена для связи с нашим backend`ом - потому будут определенные пожелания к конкретной реализации.
Мы приветствуем использование современных технологий git, angular, meteor, knockoutjs, react ...