Перш ніж почати, переконайтесь, що на вашій локальній машині встановлено:
PHP 8.0
composerNode.js з v16 до v22
npm з v8.19.4 до v10.9.3
git clone <REPO_URL>
cd <STORAGE_FOLDER_NAME>Копіюємо зразок env-файлу
cp .env.example .envВстановлюємо PHP-залежності
composer installГенеруємо ключ додатку
php artisan key:generateВаріант A — SQLite (швидко та просто, але без підтримки emoji)
у файлі .env
DB_CONNECTION=sqlite
DB_DATABASE=
#DB_HOST=
#DB_PORT=
#DB_USERNAME=
#DB_PASSWORD=Варіант B — MySQL (підтримує emoji)
У файлі .env прописуємо:
DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=<db_name>
DB_USERNAME=<db_user>
DB_PASSWORD=<db_password>Вказуємо не root користувача MySQL. Якщо такого нема, то створюємо такого (потрібно знати пароль root користувача до БД). Виконуємо у терміналі
mysql -u root -pвводимо пароль.
CREATE USER '<db_user>'@'localhost' IDENTIFIED BY '<db_password>';
CREATE DATABASE <db_name>;
GRANT ALL PRIVILEGES ON <db_name>.* TO '<db_user>'@'localhost';
FLUSH PRIVILEGES;Якщо створювали нового користувача, то йому буде доступна тільки його таблиця. Це безпечно.
Запускаємо міграції
php artisan migrateВстановлюємо Node-залежності (або оберіть версию nvm use ...), збираємо білд фронтенду
npm install && npm run buildЗгенеруємо документацію Swagger (openAPI)
php artisan l5-swagger:generateЯкщо ви не використовуєте Laravel Valet або Herd, можна використати вбудований сервер Laravel:
php artisan serveПроєкт буде доступний за адресою: http://localhost:8000
Якщо темна версія Swagger не подобається, то встановіть змінну L5_SWAGGER_UI_DARK_MODE у файлі .env на false
Інтерактивна документація Swagger доступна за посиланням: http://localhost:8000/api/documentation#/
Буду радий отримати ваш фідбек будь-яким зручним способом:
через поле '''Contact the developer''' у Swagger-документації
або іншим чином який Вам відомо.