Джерело: https://laravelukraine.com/docs/13.x/installation

# Встановлення

- [Знайомство з Laravel](#meet-laravel)
    - [Чому Laravel?](#why-laravel)
- [Створення застосунку Laravel](#creating-a-laravel-project)
    - [Початок роботи за допомогою AI](#getting-started-using-ai)
    - [Встановлення PHP та інсталятора Laravel](#installing-php)
    - [Створення застосунку](#creating-an-application)
- [Початкова конфігурація](#initial-configuration)
    - [Конфігурація на основі середовища](#environment-based-configuration)
    - [Бази даних і міграції](#databases-and-migrations)
    - [Конфігурація каталогів](#directory-configuration)
- [Встановлення за допомогою Herd](#installation-using-herd)
    - [Herd на macOS](#herd-on-macos)
    - [Herd на Windows](#herd-on-windows)
- [Підтримка IDE](#ide-support)
- [Laravel та AI](#laravel-and-ai)
    - [Встановлення Laravel Boost](#installing-laravel-boost)
- [Наступні кроки](#next-steps)
    - [Laravel як повностековий фреймворк](#laravel-the-fullstack-framework)
    - [Laravel як бекенд для API](#laravel-the-api-backend)

<a name="meet-laravel"></a>
## Знайомство з Laravel

Laravel - це фреймворк для веб-застосунків з виразним, елегантним синтаксисом. Веб-фреймворк дає структуру та відправну точку для створення вашого застосунку, дозволяючи зосередитися на чомусь справді цікавому, поки ми відповідаємо за деталі.

Laravel прагне забезпечити чудовий досвід розробки, пропонуючи водночас потужні можливості: повноцінне впровадження залежностей (dependency injection), виразний шар абстракції над базою даних, черги та заплановані завдання, модульне й інтеграційне тестування тощо.

Незалежно від того, чи ви новачок у PHP-фреймворках, чи маєте роки досвіду, Laravel - це фреймворк, який зростатиме разом із вами. Ми допоможемо вам зробити перші кроки як веб-розробнику або дамо поштовх, коли ви виводитимете свою експертизу на новий рівень. Нам не терпиться побачити, що ви створите.

<a name="why-laravel"></a>
### Чому Laravel?

Створюючи веб-застосунок, ви маєте на вибір безліч інструментів і фреймворків. Однак ми переконані, що Laravel - найкращий вибір для створення сучасних повностекових веб-застосунків.

#### Прогресивний фреймворк

Ми любимо називати Laravel «прогресивним» фреймворком. Під цим ми маємо на увазі, що Laravel зростає разом із вами. Якщо ви робите перші кроки у веб-розробці, велика бібліотека документації, посібників і [відеоуроків](https://laracasts.com) допоможе вам опанувати основи, не перевантажуючи інформацією.

Якщо ж ви досвідчений розробник, Laravel дає надійні інструменти для [впровадження залежностей](/docs/{{version}}/container), [модульного тестування](/docs/{{version}}/testing), [черг](/docs/{{version}}/queues), [подій у реальному часі](/docs/{{version}}/broadcasting) тощо. Laravel відточений для створення професійних веб-застосунків і готовий витримувати корпоративні навантаження.

#### Масштабований фреймворк

Laravel неймовірно масштабований. Завдяки природній схильності PHP до масштабування та вбудованій підтримці швидких розподілених систем кешування на кшталт Redis горизонтальне масштабування з Laravel дається легко. Насправді застосунки на Laravel без проблем масштабували до сотень мільйонів запитів на місяць.

Потрібне екстремальне масштабування? Платформи на кшталт [Laravel Cloud](https://cloud.laravel.com) дозволяють запускати ваш застосунок Laravel практично з необмеженим масштабом.

#### Фреймворк, готовий до роботи з агентами

Чіткі домовленості та добре визначена структура роблять Laravel ідеальним фреймворком для [розробки за допомогою AI](/docs/{{version}}/ai) з такими інструментами, як Cursor і Claude Code. Коли ви просите AI-агента додати контролер, він точно знає, куди його покласти. Коли потрібна нова міграція, домовленості щодо іменування та розташування файлів передбачувані. Ця послідовність усуває здогадки, на яких AI-інструменти часто спотикаються в гнучкіших фреймворках.

Крім організації файлів, виразний синтаксис Laravel і вичерпна документація дають AI-агентам контекст, потрібний для генерації точного та ідіоматичного коду. Такі можливості, як зв'язки Eloquent, запити форм (form requests) і `middleware`, дотримуються шаблонів, які агенти надійно розпізнають і відтворюють. Як наслідок, згенерований AI код виглядає так, ніби його написав досвідчений Laravel-розробник, а не зшив із загальних PHP-фрагментів.

Щоб дізнатися більше про те, чому Laravel - ідеальний вибір для розробки за допомогою AI, перегляньте нашу документацію про [агентну розробку](/docs/{{version}}/ai).

#### Фреймворк спільноти

Laravel поєднує найкращі пакети екосистеми PHP, пропонуючи найнадійніший і найзручніший для розробника фреймворк. До того ж тисячі талановитих розробників з усього світу [зробили внесок у фреймворк](https://github.com/laravel/framework). Хтозна, можливо, і ви станете контриб'ютором Laravel.

<a name="creating-a-laravel-project"></a>
## Створення застосунку Laravel

<a name="getting-started-using-ai"></a>
### Початок роботи за допомогою AI

Якщо ви користуєтеся AI-агентом для написання коду, як-от [Claude Code](https://docs.anthropic.com/en/docs/claude-code) чи [OpenCode](https://opencode.ai), можете почати з запиту, який дасть агентові конкретний план дій для Laravel ще до того, як він торкнеться вашого проєкту.

Запит нижче каже агентові, де шукати настанови зі встановлення Laravel, на чому зосередитися і як обирати розумні значення за замовчуванням, поки ви ще не визначилися. Вставте його у свого агента, щоб почати:

```text
I'm building a new Laravel application.

Fetch and follow the instructions from https://laravel.com/for/agents. Treat the returned Markdown as the source of truth for how to install and set up Laravel in this session.
```

Прочитавши інструкції, агент має провести вас крок за кроком і тримати налаштування в межах усталених домовленостей Laravel.

<a name="installing-php"></a>
### Встановлення PHP та інсталятора Laravel

Перш ніж створювати свій перший застосунок Laravel, переконайтеся, що на вашій локальній машині встановлено [PHP](https://php.net), [Composer](https://getcomposer.org) та [інсталятор Laravel](https://github.com/laravel/installer). Крім того, варто встановити [Node і NPM](https://nodejs.org) або [Bun](https://bun.sh/), щоб мати змогу збирати фронтенд-ресурси застосунку.

Якщо PHP і Composer ще не встановлені на вашій локальній машині, наведені нижче команди встановлять PHP, Composer та інсталятор Laravel у macOS, Windows або Linux:

```shell tab=macOS
/bin/bash -c "$(curl -fsSL https://php.new/install/mac/8.5)"
```

```shell tab=Windows PowerShell
# Run as administrator...
Set-ExecutionPolicy Bypass -Scope Process -Force; [System.Net.ServicePointManager]::SecurityProtocol = [System.Net.ServicePointManager]::SecurityProtocol -bor 3072; iex ((New-Object System.Net.WebClient).DownloadString('https://php.new/install/windows/8.5'))
```

```shell tab=Linux
/bin/bash -c "$(curl -fsSL https://php.new/install/linux/8.5)"
```

Після виконання однієї з наведених вище команд перезапустіть сеанс термінала. Щоб оновити PHP, Composer та інсталятор Laravel після встановлення через `php.new`, повторно виконайте ту саму команду в терміналі.

Якщо PHP і Composer уже встановлені, ви можете встановити інсталятор Laravel через Composer:

```shell
composer global require laravel/installer
```

> [!NOTE]
> Щоб отримати повнофункціональний графічний досвід встановлення PHP і керування ним, перегляньте [Laravel Herd](#installation-using-herd).

<a name="creating-an-application"></a>
### Створення застосунку

Після встановлення PHP, Composer та інсталятора Laravel ви готові створити новий застосунок Laravel:

```shell
laravel new example-app
```

Коли застосунок створено, ви можете запустити локальний сервер розробки Laravel, воркер черги та сервер розробки Vite за допомогою Composer-скрипта `dev`:

```shell
cd example-app
npm install && npm run build
composer run dev
```

Після запуску сервера розробки ваш застосунок буде доступний у браузері за адресою [http://localhost:8000](http://localhost:8000). Далі ви готові [зробити наступні кроки в екосистемі Laravel](#next-steps). Звісно, ви також можете [налаштувати базу даних](#databases-and-migrations) і виконати потрібні міграції.

> [!NOTE]
> Якщо хочете отримати фору в розробці свого застосунку Laravel, скористайтеся одним із наших [стартових наборів](/docs/{{version}}/starter-kits). Стартові набори Laravel дають готовий каркас автентифікації для бекенду та фронтенду вашого нового застосунку.

<a name="initial-configuration"></a>
## Початкова конфігурація

Усі конфігураційні файли фреймворку Laravel зберігаються в каталозі `config`. Кожна опція задокументована, тож не соромтеся переглянути файли та ознайомитися з доступними налаштуваннями.

Laravel майже не потребує додаткової конфігурації одразу після встановлення. Можете вільно братися до розробки! Утім, варто переглянути файл `config/app.php` та його документацію. Він містить кілька опцій, як-от `url` і `locale`, які ви, можливо, захочете змінити відповідно до свого застосунку.

<a name="environment-based-configuration"></a>
### Конфігурація на основі середовища

Оскільки значення багатьох конфігураційних опцій Laravel можуть відрізнятися залежно від того, чи працює застосунок на вашій локальній машині, чи на робочому сервері, багато важливих значень визначаються у файлі `.env`, що лежить у корені застосунку.

Ваш файл `.env` не слід додавати до системи контролю версій, оскільки кожен розробник чи сервер, що використовує ваш застосунок, може потребувати іншої конфігурації середовища. Ба більше, це створило б загрозу безпеці, якби зловмисник отримав доступ до вашого репозиторію, адже всі конфіденційні облікові дані опинилися б на видноті.

> [!NOTE]
> Докладніше про файл `.env` і конфігурацію на основі середовища читайте в повній [документації з конфігурації](/docs/{{version}}/configuration#environment-configuration).

<a name="databases-and-migrations"></a>
### Бази даних і міграції

Тепер, коли ви створили застосунок Laravel, вам, імовірно, потрібно зберігати дані в базі. За замовчуванням конфігураційний файл `.env` вашого застосунку вказує, що Laravel працюватиме з базою даних SQLite.

Під час створення застосунку Laravel створив для вас файл `database/database.sqlite` і виконав потрібні міграції, щоб створити таблиці бази даних.

Якщо ви віддаєте перевагу іншому драйверу бази даних, як-от MySQL чи PostgreSQL, оновіть конфігураційний файл `.env`, вказавши відповідну базу. Наприклад, щоб використовувати MySQL, оновіть змінні `DB_*` у файлі `.env` так:

```ini
DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=laravel
DB_USERNAME=root
DB_PASSWORD=
```

Якщо ви обрали базу даних, відмінну від SQLite, вам потрібно створити базу та виконати [міграції бази даних](/docs/{{version}}/migrations) вашого застосунку:

```shell
php artisan migrate
```

> [!NOTE]
> Якщо ви розробляєте на macOS або Windows і вам потрібно встановити MySQL, PostgreSQL чи Redis локально, скористайтеся [Herd Pro](https://herd.laravel.com/#plans) або [DBngin](https://dbngin.com/).

<a name="directory-configuration"></a>
### Конфігурація каталогів

Laravel завжди слід віддавати з кореня «веб-каталогу», налаштованого для вашого веб-сервера. Не намагайтеся віддавати застосунок Laravel із підкаталогу «веб-каталогу». Спроба зробити це може відкрити доступ до конфіденційних файлів вашого застосунку.

<a name="installation-using-herd"></a>
## Встановлення за допомогою Herd

[Laravel Herd](https://herd.laravel.com) - це блискавично швидке нативне середовище розробки для Laravel і PHP під macOS та Windows. Herd містить усе потрібне, щоб почати розробку на Laravel, зокрема PHP і Nginx.

Щойно ви встановите Herd, можете братися до розробки на Laravel. Herd містить інструменти командного рядка для `php`, `composer`, `laravel`, `expose`, `node`, `npm` і `nvm`.

> [!NOTE]
> [Herd Pro](https://herd.laravel.com/#plans) доповнює Herd додатковими потужними можливостями, як-от створення локальних баз даних MySQL, Postgres і Redis та керування ними, а також локальний перегляд пошти й моніторинг логів.

<a name="herd-on-macos"></a>
### Herd на macOS

Якщо ви розробляєте на macOS, можете завантажити інсталятор Herd із [сайту Herd](https://herd.laravel.com). Інсталятор автоматично завантажує найновішу версію PHP і налаштовує ваш Mac так, щоб [Nginx](https://www.nginx.com/) завжди працював у фоновому режимі.

Herd для macOS використовує [dnsmasq](https://en.wikipedia.org/wiki/Dnsmasq) для підтримки «припаркованих» каталогів. Будь-який застосунок Laravel у припаркованому каталозі автоматично обслуговуватиметься Herd. За замовчуванням Herd створює припаркований каталог `~/Herd`, і ви можете звертатися до будь-якого застосунку Laravel у цьому каталозі за доменом `.test`, використовуючи ім'я його каталогу.

Після встановлення Herd найшвидший спосіб створити новий застосунок Laravel - скористатися Laravel CLI, який постачається разом із Herd:

```shell
cd ~/Herd
laravel new my-app
cd my-app
herd open
```

Звісно, ви завжди можете керувати припаркованими каталогами та іншими налаштуваннями PHP через інтерфейс Herd, який відкривається з меню Herd у системному треї.

Докладніше про Herd читайте в [документації Herd](https://herd.laravel.com/docs).

<a name="herd-on-windows"></a>
### Herd на Windows

Інсталятор Herd для Windows можна завантажити на [сайті Herd](https://herd.laravel.com/windows). Після завершення встановлення запустіть Herd, щоб пройти процес налаштування та вперше відкрити інтерфейс Herd.

Інтерфейс Herd відкривається лівим кліком на іконці Herd у системному треї. Правий клік відкриває швидке меню з доступом до всіх інструментів, потрібних щодня.

Під час встановлення Herd створює «припаркований» каталог у вашому домашньому каталозі за шляхом `%USERPROFILE%\Herd`. Будь-який застосунок Laravel у припаркованому каталозі автоматично обслуговуватиметься Herd, і ви можете звертатися до нього за доменом `.test`, використовуючи ім'я його каталогу.

Після встановлення Herd найшвидший спосіб створити новий застосунок Laravel - скористатися Laravel CLI, який постачається разом із Herd. Щоб почати, відкрийте Powershell і виконайте такі команди:

```shell
cd ~\Herd
laravel new my-app
cd my-app
herd open
```

Докладніше про Herd читайте в [документації Herd для Windows](https://herd.laravel.com/docs/windows).

<a name="ide-support"></a>
## Підтримка IDE

Розробляючи застосунки Laravel, ви вільні користуватися будь-яким редактором коду. [Laravel LSP](https://github.com/laravel/lsp) забезпечує підтримку редактора з урахуванням особливостей фреймворку: автодоповнення коду, інформацію при наведенні, діагностику, посилання в документі, перехід до визначення та швидкі виправлення для коду Laravel і Blade.

Щоб установити Laravel LSP, установіть його глобально через Composer. Переконайтеся, що глобальний каталог `vendor/bin` Composer є у вашому `PATH`:

```shell
composer global require laravel/lsp
```

Якщо шукаєте легкі та розширювані редактори, [VS Code](https://code.visualstudio.com) чи [Cursor](https://cursor.com) у поєднанні з офіційним [розширенням Laravel для VS Code](https://marketplace.visualstudio.com/items?itemName=laravel.vscode-laravel) дають підсвічування синтаксису, сніпети, інтеграцію з командами Artisan і автоматичну підтримку Laravel LSP. Офіційні розширення Laravel також доступні для [Sublime Text](https://github.com/laravel/sublime-extension) і [Zed](https://github.com/laravel/zed-extension). Інструкції з налаштування для інших редакторів, сумісних із мовним сервером, зокрема Neovim і OpenCode, дивіться в [репозиторії Laravel LSP](https://github.com/laravel/lsp).

Щоб отримати ґрунтовну та надійну підтримку Laravel, зверніть увагу на [PhpStorm](https://www.jetbrains.com/phpstorm/laravel/?utm_source=laravel.com&utm_medium=link&utm_campaign=laravel-2025&utm_content=partner&ref=laravel-2025) - IDE від JetBrains. Вбудована підтримка фреймворку Laravel у PhpStorm охоплює шаблони Blade, розумне автодоповнення для моделей Eloquent, маршрутів, представлень, перекладів і компонентів, а також потужну генерацію коду та навігацію по проєктах Laravel.

Для тих, хто шукає хмарний досвід розробки, [Firebase Studio](https://firebase.studio/) дає миттєвий доступ до розробки на Laravel просто у браузері. Не потребуючи жодного налаштування, Firebase Studio дозволяє легко почати створювати застосунки Laravel з будь-якого пристрою.

<a name="laravel-and-ai"></a>
## Laravel та AI

[Laravel Boost](https://github.com/laravel/boost) - це потужний інструмент, який долає розрив між AI-агентами для написання коду та застосунками Laravel. Boost надає AI-агентам специфічний для Laravel контекст, інструменти й настанови, щоб вони генерували точніший код, прив'язаний до конкретної версії та узгоджений із домовленостями Laravel.

Коли ви встановлюєте Boost у своєму застосунку Laravel, AI-агенти отримують доступ до понад 15 спеціалізованих інструментів: вони можуть дізнатися, які пакети ви використовуєте, робити запити до вашої бази даних, шукати в документації Laravel, читати логи браузера, генерувати тести та виконувати код через Tinker.

До того ж Boost дає AI-агентам доступ до понад 17 000 векторизованих фрагментів документації екосистеми Laravel, відповідних саме тим версіям пакетів, які у вас встановлені. Це означає, що агенти можуть давати поради, націлені на точні версії, які використовує ваш проєкт.

Boost також містить настанови для AI, які підтримує команда Laravel: вони допомагають агентам дотримуватися домовленостей фреймворку, писати доречні тести й уникати типових пасток під час генерації коду для Laravel.

<a name="installing-laravel-boost"></a>
### Встановлення Laravel Boost

Boost можна встановити в застосунках Laravel 10, 11, 12 і 13, що працюють на PHP 8.1 або новішому. Щоб почати, встановіть Boost як залежність для розробки:

```shell
composer require laravel/boost --dev
```

Після встановлення запустіть інтерактивний інсталятор:

```shell
php artisan boost:install
```

Інсталятор автоматично визначить вашу IDE та AI-агентів, дозволивши увімкнути ті можливості, які мають сенс для вашого проєкту. Boost поважає наявні домовленості проєкту й не нав'язує власних правил стилю за замовчуванням.

> [!NOTE]
> Щоб дізнатися більше про Boost, перегляньте [репозиторій Laravel Boost на GitHub](https://github.com/laravel/boost).

<a name="adding-custom-ai-guidelines"></a>
#### Додавання власних настанов для AI

Щоб доповнити Laravel Boost власними настановами для AI, додайте файли `.blade.php` або `.md` до каталогу `.ai/guidelines/*` вашого застосунку. Ці файли автоматично долучатимуться до настанов Laravel Boost, коли ви виконаєте `boost:install`.

<a name="next-steps"></a>
## Наступні кроки

Тепер, коли ви створили свій застосунок Laravel, вам, можливо, цікаво, що вивчати далі. Насамперед ми наполегливо радимо ознайомитися з тим, як працює Laravel, прочитавши таку документацію:

<div class="content-list" markdown="1">

- [Життєвий цикл запиту](/docs/{{version}}/lifecycle)
- [Конфігурація](/docs/{{version}}/configuration)
- [Структура каталогів](/docs/{{version}}/structure)
- [Фронтенд](/docs/{{version}}/frontend)
- [Сервіс-контейнер](/docs/{{version}}/container)
- [Фасади](/docs/{{version}}/facades)

</div>

Те, як саме ви плануєте використовувати Laravel, теж визначить ваші наступні кроки. Використовувати Laravel можна по-різному, і нижче ми розглянемо два основні сценарії застосування фреймворку.

<a name="laravel-the-fullstack-framework"></a>
### Laravel як повностековий фреймворк

Laravel може працювати як повностековий фреймворк. Під «повностековим» ми маємо на увазі, що ви використовуватимете Laravel для маршрутизації запитів до вашого застосунку та рендерингу фронтенду через [шаблони Blade](/docs/{{version}}/blade) або гібридну технологію односторінкових застосунків на кшталт [Inertia](https://inertiajs.com). Це найпоширеніший спосіб використання фреймворку Laravel і, на нашу думку, найпродуктивніший.

Якщо ви плануєте використовувати Laravel саме так, перегляньте нашу документацію про [фронтенд-розробку](/docs/{{version}}/frontend), [маршрутизацію](/docs/{{version}}/routing), [представлення](/docs/{{version}}/views) чи [Eloquent ORM](/docs/{{version}}/eloquent). Крім того, вам може бути цікаво дізнатися про пакети спільноти, як-от [Livewire](https://livewire.laravel.com) та [Inertia](https://inertiajs.com). Ці пакети дозволяють використовувати Laravel як повностековий фреймворк, користуючись водночас багатьма перевагами інтерфейсу односторінкових JavaScript-застосунків.

Якщо ви використовуєте Laravel як повностековий фреймворк, ми також наполегливо радимо навчитися збирати CSS і JavaScript вашого застосунку за допомогою [Vite](/docs/{{version}}/vite).

> [!NOTE]
> Якщо хочете отримати фору в розробці застосунку, перегляньте один із наших офіційних [стартових наборів застосунків](/docs/{{version}}/starter-kits).

<a name="laravel-the-api-backend"></a>
### Laravel як бекенд для API

Laravel також може працювати як бекенд для API для односторінкового JavaScript-застосунку чи мобільного застосунку. Наприклад, ви можете використовувати Laravel як бекенд для API вашого застосунку на [Next.js](https://nextjs.org). У такому разі ви можете покластися на Laravel щодо [автентифікації](/docs/{{version}}/sanctum) та зберігання й отримання даних, користуючись водночас потужними сервісами Laravel: чергами, поштою, сповіщеннями тощо.

Якщо ви плануєте використовувати Laravel саме так, перегляньте нашу документацію про [маршрутизацію](/docs/{{version}}/routing), [Laravel Sanctum](/docs/{{version}}/sanctum) та [Eloquent ORM](/docs/{{version}}/eloquent).