WEB-Программист
Перемкнути навігацію

Мова

  • Українська
  • Русский
  • Polski
  • Українська
  • Русский
  • Polski
Зв'яжіться з нами

Пошук

  • Книги
  • wordpress [UK]
  • Laravel [UK]
  • Articles
  • Немає категорій
  • © 2015-2026 Andrii Beznosko

  • Hosting CityHost

Створення пакетів для Laravel

  • Опис
  • Опис/Завантаження

Prosper Otemuyiwa нещодавно написав статтю про те, як створювати пакети для Laravel 5 у своєму блозі. Хоча його спосіб абсолютно правильний і може вам підійти, я віддаю перевагу трохи іншому підходу до створення пакетів.

Спочатку я створю новий репозиторій на GitHub. У цей репозиторій копіюю вміст репозиторію скелета PHP League’s Skeleton. Він дає гарну точку старту.

З ним ви отримуєте:

дуже гарний шаблон readme
історію змін (changelog)
файл ліцензії
composer.json
Після заміни всіх тестових значень у репозиторії на свої коректні я завантажую репозиторій на Packagist. Зверніть увагу, що на даний момент у пакета нульова функціональність. Зазвичай слід утриматися від додавання пакетів без функціональності на Packagist. Але, зважаючи на той факт, що на даний момент є лише гілка master і немає версій із тегами, більшість розробників не використовуватиме цей пакет. Один мудрий чоловік сказав: «Використання гілки dev-master у проєкті — це як незахищений секс з інтернетом».

Тепер, коли пакет доступний на Packagist, час встановити свіжу версію Laravel. Я віддаю перевагу робити це за допомогою Laravel Installer:

laravel new package-name

Після встановлення я використовую метод Dimitrios Savvopoulos для встановлення пакета в Laravel. Він полягає в тому, щоб запулити гілку dev-master пакета в проєкт через composer.json. Пакет можна отримати такою командою:

composer update --prefer-source

Новий пакет буде встановлено в його власний репозиторій у папці vendor. Таким чином можна комітити й пушити код на GitHub прямо з директорії vendor. Чудово! Тепер усе готово для початку розробки нового пакета.

Коли пакет починає працювати і проходить усі тести, я роблю тег версії 1.0.0 на GitHub. Під час подальшої розробки я використовую семантичне проставлення версій для релізів.

Якщо у вас є інший, кращий спосіб створення нових пакетів, ви можете написати автору. Джерело нижче.

Comments
Всього коментарів: 0
Залишити коментар Скасувати відповідь

Ваш email не буде опубліковано.

Категорія: Главная » Laravel » Створення пакетів для Laravel
Статус: Для продвинутых программистов
Original article link (if specified or if this article is not authored by us) Download
Submitted by Кві 17, 2026 00:28 Andriy

Articles published on WEB-Программист are provided with source links. The site administration is not responsible for your use of these materials.

Laravel
Previous Next

Дивіться також:

Розширюємо класи Laravel методом `orAbort` за допомогою трейту

Розширюємо класи Laravel методом orAbort за допомогою трейту Іноді в Laravel ми пишемо однаковий шаблон: намагаємося отримати модель або одразу зупиняємо виконання з потрібним HTTP-кодом. Це працює, але код стає менш читабельним, а логіка розкидається по всьому проєкту. Вихід —...

Створення пакетів для Laravel

Prosper Otemuyiwa нещодавно написав статтю про те, як створювати пакети для Laravel 5 у своєму блозі. Хоча його спосіб абсолютно правильний і може вам підійти, я віддаю перевагу трохи іншому підходу до створення пакетів. Спочатку я створю новий репозиторій на...

Робота з nullable-полями в Eloquent у Laravel

Вступ Якщо у вас є кілька моделей у Laravel з одним nullable-полем, створення мутатора для цього поля — процес доволі тривіальний: public function setNicknameAttribute($nickname) { $this->attributes['nickname'] = trim($nickname) == '' ? null : trim($nickname); }   Тут ми перевіряємо вхідні...

DDD Ultra-Light

[caption id="attachment_547" align="aligncenter" width="891"] Laravel 4.2[/caption] DDD Ultra-Light: як застосувати Domain-Driven Design без зайвих витрат Деякі команди вважають Domain-Driven Design (DDD) складним, дорогим і таким, що потребує обережного впровадження. І справді: якщо підходити до DDD як до «великого проєкту перебудови»,...

Зв'яжіться з нами

- Преміум теми та плагіни WP Star безкоштовно -

We use cookies on our website to give you the most relevant experience by remembering your preferences and repeat visits. By clicking “Accept”, you consent to the use of ALL the cookies.
Cookie settingsACCEPT
Manage consent

Privacy Overview

This website uses cookies to improve your experience while you navigate through the website. Out of these, the cookies that are categorized as necessary are stored on your browser as they are essential for the working of basic functionalities of the website. We also use third-party cookies that help us analyze and understand how you use this website. These cookies will be stored in your browser only with your consent. You also have the option to opt-out of these cookies. But opting out of some of these cookies may affect your browsing experience.
SAVE & ACCEPT