Рассмотрим пример когда вы разрабатываете свой пакет локально.
В корне проекта создается папка и добавляется запись в composer.json вроде такой
"repositories": [
{
"type": "path",
"url": "author/package"
}
]
Подробнее можно прочитать здесь в
документации
При такой настройке, пакет создаст ссылку в vendor.
По поводу стандартных команд в Laravel(artisan) тут все индивидуально, к примеру, миграцию можно добавить ваш пакет такой командой
php artisan make:migration name_migration --path=author/package
В команде по созданию factories, за корень берется databasePath, выйти из ситуации след образом.
- В зависимости от контекста менять базовый путь
- Отнаследоваться или создать свою команду для формирования пути при создании фабрики
Сам я в таких случаях просто создавал файлы руками.
Посмотрев несколько готовых пакетов для разработки пакетов под Laravel, такой фичи не обнаружил, а в одном из них предлагают создавать через обычный artisan и просто копировать в свой пакет.
Еще можно воспользоваться консолью:
php artisan make:controller OurController && mv app/Http/Controllers/OurController.php author/package/pathWhereControllerStore
Соответственно можно создать алиас и писать меньше, а можно скрипт, где будет еще изменяться namespace в соответствии с вашим пакетом.