Mon Mar 02 2026
...
Офіційний пакет Laravel випущено
Що нового
Ми раді повідомити про випуск нашого офіційного пакету Laravel, fastcomments/laravel. Якщо ви розробляєте з Laravel і хочете додати
коментування, живий чат або рахунок коментарів у ваше застосування, ви тепер можете зробити це за допомогою одного встановлення Composer і кількох компонентів Blade.
Пакет підтримує Laravel 10, 11 та 12 на PHP 8.1+.
Початок роботи
Встановіть за допомогою Composer:
composer require fastcomments/laravel
Потім додайте свій ID орендаря та API-ключ до вашого .env:
FASTCOMMENTS_TENANT_ID=your-tenant-id
FASTCOMMENTS_API_KEY=your-api-key
Це все. Провайдер служби та фасад автоматично виявляються - реєстрація вручну не потрібна. Ви можете опублікувати файл конфігурації для подальшої настройки:
php artisan vendor:publish --tag=fastcomments-config
Компоненти Blade
Пакет постачається з трьома компонентами Blade, які ви можете використовувати безпосередньо у своїх шаблонах:
Віджет коментарів:
<x-fastcomments url-id="my-page" />
Віджет живого чату:
<x-fastcomments-live-chat url-id="my-chat-room" />
Кількість коментарів:
<x-fastcomments-comment-count url-id="my-page" />
Кожен компонент підтримує властивості, такі як url, locale, readonly, has-dark-background та default-sort-direction. Скрипти завантажуються
асинхронно та очищуються від дублікатів, тому ви можете безпечно розміщувати кілька віджетів на одній сторінці.
Автоматичний SSO
SSO можна включити за допомогою двох змінних середовища:
FASTCOMMENTS_SSO_ENABLED=true
FASTCOMMENTS_SSO_MODE=secure
Після активації компоненти коментарів і живого чату автоматично читають Auth::user() і впроваджують підписане навантаження SSO в конфігурацію віджета.
Користувачі, що увійшли в систему, безпроблемно проходять автентифікацію. Гості бачать посилання для входу та виходу, які за замовчуванням ведуть до ваших призначених маршрутів login та logout в Laravel.
Існує два способи контролювати, як ваша модель користувача відображається на дані користувача FastComments:
Відображення на основі конфігурації - встановіть імена атрибутів (включаючи крапкову нотацію) або викликайте функції в config/fastcomments.php:
'user_map' => [
'id' => 'id',
'email' => 'email',
'username' => 'name',
'avatar' => 'profile_photo_url',
],
Відображення на основі інтерфейсу - реалізуйте MapsToFastCommentsUser у своїй моделі користувача для повного контролю:
use FastComments\Laravel\SSO\Contracts\MapsToFastCommentsUser;
class User extends Authenticatable implements MapsToFastCommentsUser
{
public function toFastCommentsUserData(): array
{
return [
'id' => (string) $this->id,
'email' => $this->email,
'username' => $this->name,
'avatar' => $this->avatar_url,
'is_admin' => $this->hasRole('admin'),
];
}
}
Підтримуються обидва режими SSO: Secure SSO (з підписом HMAC, рекомендований для виробництва) і Simple SSO.
Інтеграція API
Пакет також обгортає API FastComments за допомогою фасаду, ін'єкції залежностей і прямої ін'єкції клієнта SDK:
use FastComments\Laravel\Facades\FastComments;
// Адміністративний API
$comments = FastComments::admin()->getComments(...);
// Публічний API
$counts = FastComments::publicApi()->getCommentCounts(...);
// Токен SSO для спеціального використання
$token = FastComments::sso()->tokenFor($user);
Резидентність даних у ЄС
Для клієнтів, які використовують наш регіон ЄС, одна змінна середовища перемикає всі кінцеві точки - віджети, виклики API та SSO:
FASTCOMMENTS_REGION=eu
На завершення
Сподіваємося, що цей пакет спростить додавання FastComments до ваших застосунків на Laravel. Він доступний зараз на Packagist і джерело доступне на GitHub.
Дайте нам знати нижче, якщо у вас є які-небудь відгуки!
На здоров'я!
