Если ты в 2025 году ты всё ещё руками собираешь авторизацию на Laravel для своей админки — у меня для тебя плохие новости. Ты либо получаешь удовольствие от страданий (либо просто не знаешь про Admiral).

А если нет желания быть заложником бесконечного копипаста и конфигурационного ада, то есть один очень простой способ перестать тратить часы на одни и те же ритуалы.

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

Шаг 1. Laravel — ставим и запускаем

Создай папку admiral-laravel-init, зайди в неё и давай установим Laravel.

composer global require laravel/installer
laravel new backend
cd backend
composer run dev

Открываешь в браузере http://localhost:8000 — видишь приветственную страницу? Круто, значит Laravel ожил.

Шаг 2. Admiral — твой спаситель

Теперь в корне проекта:

npx create-admiral-app@latest

В ответ выбери Install the template without backend setting, дай имя проекту admin. После установки зайди в admin и

npm i

В .env поправь:

VITE_API_URL=http://localhost:8000/admin

И запусти фронт:

npm run build && npm run dev

Открывай http://localhost:3000 и вперёд — ты уже на странице логина.

Шаг 3. Авторизация — делаем по-человечески

Берём Laravel Sanctum, ставим и настраиваем:

php artisan install:api

Добавляем guard admin в config/auth.php:

'admin' => [
    'driver' => 'sanctum',
    'provider' => 'users',
],

В User.php добавляем:

use Laravel\Sanctum\HasApiTokens;

class User extends Authenticatable
{
    use HasApiTokens, Notifiable, HasFactory;
}

Шаг 4. Контроллер для входа, выхода и проверки

Код AuthController — тут особо и комментировать нечего, всё просто:

// ... (вставь как в оригинале)

Шаг 5. Формы и ресурсы

Тут без сюрпризов: валидируем логин, возвращаем пользователя.

// LoginRequest.php и AuthUserResource.php — как в оригинале

Шаг 6. Сервисы и защита от дурака

Никаких излишеств, в AuthService просто проверяем пароль.

LimitLoginAttempts — ловим левые попытки взлома.

Шаг 7. Роуты

Пропиши маршруты для авторизации и защиты:

// routes/admin.php — как выше

Не забудь подключить в bootstrap/app.php.

Шаг 8. Сидируем тестового юзера

User::factory()->create([
    'name' => 'Test User',
    'email' => 'test@example.com',
    'password' => bcrypt('12345678'),
]);

php artisan db:seed

Итог

Запускай бекенд, фронт — и залогинься. Если что-то не работает, погугли CORS или попробуй мой лайфхак с config/cors.php.

Вот и вся магия. Патчи, костыли и лишние библиотеки — в топку.

Если хочешь прокачать CRUD или вписать роли — пиши, расскажу, как сделать круто и быстро.

Вот так просто можно перестать страдать с авторизацией и заняться нормальным кодом.

Мнения?

Комментарии (4)


  1. Gippsland
    08.08.2025 08:17

    И в чём прикол, чем он лучше? Что то как то пусто. Где итог? Нейросеть плохо потрудилась

    И репозиторий не работает.


  1. radioIT
    08.08.2025 08:17

    Если ты в 2025 собираешь свою админку ты лох)


  1. undersunich
    08.08.2025 08:17

    Почему сразу не писать что это для Реакта? А если не нравится Реакт - какие еще есть варианты ?Vue ?


  1. FanatPHP
    08.08.2025 08:17

    Каша из топора. Сказка

    Шёл солдат с похода, день-другой идёт, притомился, проголодался. Видит избушка стоит. Зашёл, а там бабушка сидит возле печи, старенькая-престаренькая. — Здравствуй, бабушка! Дай мне чего-нибудь поесть! — говорит солдат. — Ох, сынок, да вон там на гвоздике повесь! — отвечает старуха. — Ты что же это, совсем глуха, не чуешь? — Где хочешь, там и заночуешь. — Ах ты хитрая какая! Подавай на стол! — кричит солдат. — Да нечего, родимый! — Вари кашу! — Да не из чего, родимый! — Давай топор; я из топора сварю! — Что за диво! — думает старушка. — Дай посмотрю, как из топора солдат кашу сварит. Пошла в закуток и принесла служивому топор. А тот положил его в горшок, налил воды и давай себе варить. Варил, варил, попробовал и говорит: — Всем бы каша хороша, только бы чуточку крупы добавить! Старушка принесла ему крупы. Опять варил, варил, попробовал и говорит: — Совсем бы готово, только бы маслицем сдобрить! Старушка принесла ему и масла. Солдат тогда говорит: — Ну, теперь подавай хлеб да соль, да принимайся за ложку — станем кашу есть. Стали есть они вдвоём кашу. Наелись досыта. Старушка и спрашивает: — Служивый! Когда же топор будем есть? — Да видишь, он ещё не уварился, — отвечал солдат, — где-нибудь по дороге доварю и позавтракаю. Тотчас припрятал топор в свою сумку, простился с хозяйкой и пошёл в другую деревню. Вот так-то солдат и каши поел, и топор унёс!

    Как не собирать авторизацию на Ларавле руками. Быль

    Шаг 1. Ставим Laravel
    Шаг 2. Ставим Admiral
    Шаг 3. Ставим Laravel Sanctum, ставим и настраиваем:
    Шаг 4. php artisan install:api
    Шаг 5. Добавляем guard admin в config/auth.php:
    Шаг 6. Добавляем в User.php
    Шаг 7. Контроллер для входа, выхода и проверки
    Шаг 8. Формы и ресурсы
    Шаг 9. Сервисы и защита от дурака
    Шаг 10. Роуты
    Шаг 11. Сидируем тестового юзера