Не могу сообразить как правильно организовать структуру пакета и подключение файлов

Есть самописная библиотека. Стал приводить её к виду пакета Composer. Поставил зависимость от движка шаблонизатора (Smarty).

В этой библиотеке есть консольный инструмент(скрипт) для генерации шаблонов определённого вида. И этот скрипт использует шаблонизатор.

Как оформить этот скрипт, чтобы без лишних телодвижений в приложении получить мой пакет и запустить скрипт для генерации шаблона?

p.s. И как мне в самой библиотеке использовать этот скрипт? Ладно, шаблонизатор поставится в папку vendor, но получается, что для своей библиотеки мне придётся писать свой автозагрузчик.
  • Вопрос задан
  • 3435 просмотров
Решения вопроса 1
@avorobiev
Судя по вопросам, Вам надо прочитать документацию getcomposer.org/doc/. Да, она мутновата, особенно в части структуры composer.json, но там все-таки много информации «для начала»:

1. Структура пакета определяется PSR-0 (https://github.com/php-fig/fig-standards/blob/master/accepted/PSR-0.md). Нужно это для работы автозагрузки. Других ограничений на структуру мне не известно. Если не нужна атвозагрузка от composer, а нужно только разворачивание пакета, то нет и ограничения на PSR-0, хотя, по моему, этого стандарта стоит придерживаться в любом случае.

2. У composer есть своя автозагрузка, вам просто надо ее подключить в свои скрипты getcomposer.org/doc/01-basic-usage.md#autoloading. Эта автозагрузка может заменить вашу (если она есть).

3. Я так понял, что есть вопрос о том, как написать composer.json для собственного пакета. Видимо надо прочитать документацию об этом getcomposer.org/doc/04-schema.md, ну и посмотреть как это сделано в существующих пакетах.

4. Наверно еще надо разобраться где вы планируете хостить свой пакет, от этого зависит как его надо будет подключать в проект. Об этом есть тоже в документации.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы