FastComments.com

अपने Laravel ऐप में टिप्पणियाँ जोड़ें

यह FastComments का आधिकारिक Laravel पैकेज है।

एक Laravel पैकेज जो FastComments PHP SDK और SSO लाइब्रेरी को रैप करता है, जो Blade कंपोनेंट्स, SSO इंटीग्रेशन और पूर्ण API एक्सेस प्रदान करता है।

रिपॉज़िटरी

GitHub पर देखें

AI कोडिंग एजेंट Internal Link

skills.sh

अपने कोडिंग एजेंट को FastComments का वह संदर्भ दें जिसकी उसे आवश्यकता है - विजेट्स, कॉन्फ़िगरेशन, Secure SSO, REST API, और SDKs:

npx skills add fastcomments/skills

यह Claude Code, Codex, Cursor, Copilot, Gemini, और skills CLI द्वारा समर्थित हर अन्य एजेंट के साथ काम करता है।

आवश्यकताएँ Internal Link

  • PHP 8.1+
  • Laravel 10, 11, या 12

इंस्टॉलेशन Internal Link

composer require fastcomments/laravel

कॉन्फ़िगरेशन फ़ाइल प्रकाशित करें:

php artisan vendor:publish --tag=fastcomments-config

अपने क्रेडेंशियल्स .env में जोड़ें:

FASTCOMMENTS_TENANT_ID=your-tenant-id
FASTCOMMENTS_API_KEY=your-api-key

EU क्षेत्र के लिए:

FASTCOMMENTS_REGION=eu

Blade कंपोनेंट्स Internal Link

कमेंट विजेट

<x-fastcomments />

\{{-- विकल्पों के साथ --}}
<x-fastcomments
    url-id="my-page-id"
    url="https://example.com/my-page"
    locale="en_us"
    :has-dark-background="true"
    default-sort-direction="MR"
/>

लाइव चैट

<x-fastcomments-live-chat url-id="chat-room-1" />

कमेंट काउंट

<x-fastcomments-comment-count url-id="my-page-id" />
<x-fastcomments-comment-count url-id="my-page-id" :number-only="true" />

SSO Internal Link

अपनी .env फ़ाइल में SSO सक्षम करें:

FASTCOMMENTS_API_KEY=your-api-key
FASTCOMMENTS_SSO_ENABLED=true
FASTCOMMENTS_SSO_MODE=secure

सुरक्षित SSO के लिए API key आवश्यक है — इसका उपयोग SSO payload पर हस्ताक्षर करने के लिए किया जाता है।

Config-आधारित मैपिंग

config/fastcomments.php में, FastComments फ़ील्ड्स को अपने User model के attributes से मैप करें:

'sso' => [
    'enabled' => true,
    'mode' => 'secure',
    'user_map' => [
        'id' => 'id',
        'email' => 'email',
        'username' => 'name',
        'avatar' => 'profile.avatar_url', // डॉट नोटेशन समर्थित है
    ],
    'is_admin' => fn ($user) => $user->hasRole('admin'),
    'is_moderator' => fn ($user) => $user->hasRole('moderator'),
],

Interface-आधारित मैपिंग

अधिक नियंत्रण के लिए, अपने User model पर MapsToFastCommentsUser interface लागू करें:

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'),
        ];
    }
}

जब interface लागू किया गया हो, तो यह config-आधारित मैपिंग पर प्राथमिकता लेता है।

Blade में SSO

जब SSO सक्षम हो, तो <x-fastcomments /> कंपोनेंट प्रमाणित उपयोगकर्ता के लिए SSO डेटा स्वचालित रूप से इंजेक्ट करता है।

API एक्सेस Internal Link

Facade के माध्यम से

use FastComments\Laravel\Facades\FastComments;

// Admin API (API key आवश्यक है)
$comments = FastComments::admin()->getComments('tenant-id');

// Public API
$comments = FastComments::publicApi()->getCommentsPublic('tenant-id', 'url-id');

// SSO
$ssoPayload = FastComments::sso()->forWidget();
$token = FastComments::sso()->tokenFor($user);

Dependency Injection के माध्यम से

use FastComments\Laravel\FastCommentsManager;

class CommentController extends Controller
{
    public function index(FastCommentsManager $fc)
    {
        $comments = $fc->admin()->getComments($fc->tenantId());
        // ...
    }
}

सीधे SDK एक्सेस

use FastComments\Client\Api\DefaultApi;

class CommentController extends Controller
{
    public function index(DefaultApi $api)
    {
        $comments = $api->getComments('tenant-id');
        // ...
    }
}

कॉन्फ़िगरेशन संदर्भ Internal Link

कुंजीEnv वेरिएबलडिफ़ॉल्टविवरण
tenant_idFASTCOMMENTS_TENANT_ID''आपकी FastComments टेनेंट ID
api_keyFASTCOMMENTS_API_KEY''सर्वर-साइड कॉल के लिए API कुंजी
regionFASTCOMMENTS_REGIONnullnull (US) या 'eu'
sso.enabledFASTCOMMENTS_SSO_ENABLEDfalseSSO सक्षम करें
sso.modeFASTCOMMENTS_SSO_MODE'secure''secure' या 'simple'
sso.login_urlFASTCOMMENTS_SSO_LOGIN_URLnullलॉगिन URL (Laravel रूट पर वापस जाता है)
sso.logout_urlFASTCOMMENTS_SSO_LOGOUT_URLnullलॉगआउट URL (Laravel रूट पर वापस जाता है)
widget_defaults—[]डिफ़ॉल्ट विजेट कॉन्फ़िग विकल्प

व्यूज़ कस्टमाइज़ करना Internal Link

Blade टेम्पलेट को कस्टमाइज़ करने के लिए:

php artisan vendor:publish --tag=fastcomments-views

टेम्पलेट resources/views/vendor/fastcomments/ में प्रकाशित हो जाएंगे।

सहायता चाहिए?

यदि आपको Laravel Package के बारे में कोई समस्या आती है या कोई प्रश्न है, तो कृपया:

योगदान दें

योगदान का स्वागत है! कृपया योगदान दिशानिर्देशों के लिए GitHub रिपॉजिटरी देखें।