
Langue 🇫🇷 Français (France)
Documentation
Prise en main
Référence API
Add Comments to Your Laravel App
Il s'agit du package Laravel officiel pour FastComments.
Ajoutez des commentaires en direct, un chat et bien plus encore à votre application Laravel.
Dépôt
Installation 
composer require fastcomments/laravel
Publiez le fichier de configuration :
php artisan vendor:publish --tag=fastcomments-config
Ajoutez vos identifiants dans .env :
FASTCOMMENTS_TENANT_ID=your-tenant-id
FASTCOMMENTS_API_KEY=your-api-key
Pour la région UE :
FASTCOMMENTS_REGION=eu
Composants Blade 
Widget de commentaires
<x-fastcomments />
{{-- Avec des options --}}
<x-fastcomments
url-id="my-page-id"
url="https://example.com/my-page"
locale="en_us"
:has-dark-background="true"
default-sort-direction="MR"
/>
Chat en direct
<x-fastcomments-live-chat url-id="chat-room-1" />
Nombre de commentaires
<x-fastcomments-comment-count url-id="my-page-id" />
<x-fastcomments-comment-count url-id="my-page-id" :number-only="true" />
SSO 
Activez le SSO dans votre .env :
FASTCOMMENTS_API_KEY=your-api-key
FASTCOMMENTS_SSO_ENABLED=true
FASTCOMMENTS_SSO_MODE=secure
La clé API est requise pour le SSO sécurisé — elle est utilisée pour signer la charge utile SSO.
Mappage basé sur la configuration
Dans config/fastcomments.php, mappez les champs FastComments aux attributs de votre modèle User :
'sso' => [
'enabled' => true,
'mode' => 'secure',
'user_map' => [
'id' => 'id',
'email' => 'email',
'username' => 'name',
'avatar' => 'profile.avatar_url', // la notation par points est prise en charge
],
'is_admin' => fn ($user) => $user->hasRole('admin'),
'is_moderator' => fn ($user) => $user->hasRole('moderator'),
],
Mappage basé sur l'interface
Pour un contrôle plus fin, implémentez l'interface MapsToFastCommentsUser sur votre modèle User :
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->display_name,
'avatar' => $this->avatar_url,
'is_admin' => $this->hasRole('admin'),
];
}
}
Lorsque l'interface est implémentée, elle prend la priorité sur le mappage basé sur la configuration.
SSO dans Blade
Lorsque le SSO est activé, le composant <x-fastcomments /> injecte automatiquement les données SSO pour l'utilisateur authentifié.
Accès à l'API 
Via la façade
use FastComments\Laravel\Facades\FastComments;
// API d'administration (requiert une clé API)
$comments = FastComments::admin()->getComments('tenant-id');
// API publique
$comments = FastComments::publicApi()->getCommentsPublic('tenant-id', 'url-id');
// SSO
$ssoPayload = FastComments::sso()->forWidget();
$token = FastComments::sso()->tokenFor($user);
Via l'injection de dépendances
use FastComments\Laravel\FastCommentsManager;
class CommentController extends Controller
{
public function index(FastCommentsManager $fc)
{
$comments = $fc->admin()->getComments($fc->tenantId());
// ...
}
}
Accès direct au SDK
use FastComments\Client\Api\DefaultApi;
class CommentController extends Controller
{
public function index(DefaultApi $api)
{
$comments = $api->getComments('tenant-id');
// ...
}
}
Référence de configuration 
| Clé | Variable d'environnement | Valeur par défaut | Description |
|---|---|---|---|
tenant_id |
FASTCOMMENTS_TENANT_ID |
'' |
Votre identifiant de locataire FastComments |
api_key |
FASTCOMMENTS_API_KEY |
'' |
Clé API pour les appels côté serveur |
region |
FASTCOMMENTS_REGION |
null |
null (US) ou 'eu' |
sso.enabled |
FASTCOMMENTS_SSO_ENABLED |
false |
Activer SSO |
sso.mode |
FASTCOMMENTS_SSO_MODE |
'secure' |
'secure' ou 'simple' |
sso.login_url |
FASTCOMMENTS_SSO_LOGIN_URL |
null |
URL de connexion (retombe sur la route Laravel) |
sso.logout_url |
FASTCOMMENTS_SSO_LOGOUT_URL |
null |
URL de déconnexion (retombe sur la route Laravel) |
widget_defaults |
— | [] |
Options de configuration par défaut du widget |
Besoin d'aide ?
Si vous rencontrez des problèmes ou avez des questions concernant le package Laravel, veuillez :
Contribuer
Les contributions sont les bienvenues ! Veuillez consulter le dépôt GitHub pour les consignes de contribution.