Drupal Module

Open Source

Official EngagePlus module for Drupal. Add social login with Google, Facebook, GitHub, Microsoft, and more to your Drupal site in minutes—no custom code required.

Features

Multiple Providers

Support for Google, Facebook, GitHub, Microsoft, LinkedIn, Twitter, Apple, and custom OIDC providers.

Automatic User Creation

New users are automatically created in Drupal when they authenticate via OAuth providers.

Flexible Configuration

Configure redirect paths, default roles, username patterns, and appearance through the admin UI.

Secure Authentication

Uses OAuth 2.0 with PKCE flow for secure authentication. Email verification trusted from OAuth providers.

Installation

Prerequisites

  • Drupal 9.x or 10.x
  • EngagePlus account (free tier available at engageplus.id)
  • At least one OAuth provider configured in EngagePlus dashboard

Step 1: Download the Module

# Using Composer (recommended)
composer require drupal/engageplus

# Or download directly
cd modules/contrib
wget https://github.com/engageplus-id/drupal/archive/refs/heads/main.zip
unzip main.zip
mv drupal-main engageplus

Step 2: Enable the Module

# Using Drush
drush en engageplus -y

# Or via admin UI
# Admin → Extend → Check "EngagePlus" → Install

Step 3: Configure EngagePlus

  1. Get your Client ID:
  2. Configure the module:
    • • Go to /admin/config/people/engageplus
    • • Paste your Client ID
    • • Set your redirect URI (default: https://yoursite.com/engageplus/callback)
    • • Click "Save configuration"

Step 4: Add Widget to Your Site

You can add the EngagePlus widget in three ways:

  1. Option 1: Block Placement (Recommended)
    • • Go to /admin/structure/block
    • • Click "Place block" in your desired region
    • • Find "EngagePlus Login Widget"
    • • Configure visibility and save
  2. Option 2: Twig Template
    {{ engageplus_widget() }}
  3. Option 3: Render Array
    $build['widget'] = [
      '#type' => 'engageplus_widget',
      '#container_id' => 'my-custom-id',
    ];

Configuration Options

Basic Settings
Available at /admin/config/people/engageplus

Client ID

Your EngagePlus Client ID from the dashboard.

Redirect URI

OAuth callback URL. Must match the URL configured in your EngagePlus dashboard. Default: https://yoursite.com/engageplus/callback

API Base URL

Default: https://engageplus.id

User Settings

Automatically Create Users

When enabled, new users are automatically created when they authenticate.

Default Role

Role assigned to newly created users (default: Authenticated User).

Username Pattern

Pattern for generating usernames:
[email] - Use full email
[name] - Use display name from OAuth

Skip Email Verification

Trust OAuth provider's email verification (recommended).

Appearance Settings

Button Text

Customize the login button text (default: "Login").

Theme

Light or dark theme to match your site design.

Show Labels

Display provider names alongside icons.

Troubleshooting

Need Help?

For issues, feature requests, or contributions: