PHPackages                             eunusctg/supabase-auth - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Authentication &amp; Authorization](/categories/authentication)
4. /
5. eunusctg/supabase-auth

ActiveFlarum-extension[Authentication &amp; Authorization](/categories/authentication)

eunusctg/supabase-auth
======================

Enhanced Supabase authentication integration for Flarum with social login, 2FA and profile synchronization

57JavaScript

Since Apr 17Pushed 1y ago1 watchersCompare

[ Source](https://github.com/eunusctg/FlarumAuthSync)[ Packagist](https://packagist.org/packages/eunusctg/supabase-auth)[ RSS](/packages/eunusctg-supabase-auth/feed)WikiDiscussions main Synced 1mo ago

READMEChangelog (1)DependenciesVersions (1)Used By (0)

ForumEZ Supabase Authentication for Flarum
==========================================

[](#forumez-supabase-authentication-for-flarum)

[![License](https://camo.githubusercontent.com/7013272bd27ece47364536a221edb554cd69683b68a46fc0ee96881174c4214c/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f6c6963656e73652d4d49542d626c75652e737667)](https://camo.githubusercontent.com/7013272bd27ece47364536a221edb554cd69683b68a46fc0ee96881174c4214c/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f6c6963656e73652d4d49542d626c75652e737667) [![Latest Stable Version](https://camo.githubusercontent.com/118e07c5ce4281b4424d739dae434382a915ad2140e6dfc0bdbe8952dec2172d/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f762f666f72756d657a2f73757061626173652d617574682e737667)](https://camo.githubusercontent.com/118e07c5ce4281b4424d739dae434382a915ad2140e6dfc0bdbe8952dec2172d/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f762f666f72756d657a2f73757061626173652d617574682e737667)

A comprehensive Supabase authentication integration for Flarum with advanced social login capabilities, user role synchronization, enhanced security features, and a modern, visually stunning admin interface.

Features
--------

[](#features)

### Authentication Methods

[](#authentication-methods)

- **Email/Password Authentication**: Standard authentication using Supabase's secure authentication system
- **Social Login**: Connect with multiple providers:
    - GitHub
    - Google
    - Facebook
    - Twitter
    - Discord
    - Apple
    - LinkedIn
    - Slack
    - Spotify
    - Twitch

### Enhanced Security

[](#enhanced-security)

- **Two-Factor Authentication (2FA)**: Additional security layer using authenticator apps
- **Sensitive Operation Protection**: Require 2FA verification for critical user actions
- **Role-Based 2FA Enforcement**: Configurable policies for requiring 2FA for specific user groups

### User Synchronization

[](#user-synchronization)

- **Profile Sync**: Keep user profiles in sync between Flarum and Supabase
- **Avatar Sync**: Automatic synchronization of user avatars
- **Metadata Management**: Synchronize and store additional user metadata from Supabase

### Admin Features

[](#admin-features)

- **Comprehensive Dashboard**: Visually appealing interface for managing Supabase integration
- **Connection Testing**: Test your Supabase credentials directly from the admin panel
- **Provider Selection**: Choose which social login providers to enable
- **Advanced Settings**: Fine-tune synchronization and security settings

### Advanced Social Login Customization

[](#advanced-social-login-customization)

- **Multiple Display Modes**: Choose between buttons, icons, or dropdown menu for social login
- **Visual Customization**: Customize colors, icons, gradients, and animations for each provider
- **Priority Ordering**: Set display order for social login providers
- **Per-Provider Settings**: Customize display name, visibility, and appearance for each provider
- **Live Preview**: See how social login buttons will appear to users in real-time

Installation
------------

[](#installation)

```
composer require eunusctg/supabase-auth
```

Configuration
-------------

[](#configuration)

### Supabase Setup

[](#supabase-setup)

1. Create a Supabase account at [supabase.com](https://supabase.com)
2. Create a new project
3. Navigate to Authentication settings
4. Enable the authentication providers you want to use
5. Configure redirect URLs for each provider (your-forum-url/supabase/callback)
6. Obtain your API keys (public anon key and service role key)

### Flarum Setup

[](#flarum-setup)

1. Navigate to your Flarum admin panel
2. Go to Extensions → Supabase Authentication
3. Enter your Supabase project URL and API keys
4. Configure desired social login providers
5. Customize the appearance of social login buttons:
    - Select display mode (buttons, icons, or dropdown)
    - Customize colors, gradients, and animations
    - Set display priority for providers
    - Customize individual provider settings (names, icons, visibility)
6. Set up security settings (2FA, etc.)
7. Save settings

User Guide
----------

[](#user-guide)

### Social Login

[](#social-login)

Users can log in using any of the enabled social providers by clicking the corresponding button, icon, or dropdown option in the login modal. The appearance and behavior of these social login options can be fully customized by the administrator.

### Two-Factor Authentication

[](#two-factor-authentication)

1. Navigate to user settings
2. Find the Two-Factor Authentication section
3. Click "Set Up 2FA"
4. Scan the QR code with your authenticator app
5. Enter the verification code
6. 2FA is now active for your account

### Managing Connected Accounts

[](#managing-connected-accounts)

1. Navigate to user settings
2. View all connected social accounts
3. Disconnect any unwanted connections

Developer Documentation
-----------------------

[](#developer-documentation)

### Extension Architecture

[](#extension-architecture)

The extension follows a modern architecture with:

- Frontend components using Mithril.js
- Backend controllers and services using PHP
- Secure API communication with Supabase

### Extending the Extension

[](#extending-the-extension)

The extension is designed to be extendable through Flarum's extension system. You can:

- Add custom social login providers
- Extend user synchronization behavior
- Add custom security policies

Troubleshooting
---------------

[](#troubleshooting)

### Common Issues

[](#common-issues)

- **Connection Errors**: Verify your Supabase credentials and check that your project is running
- **Social Login Failures**: Ensure redirect URLs are correctly configured in Supabase
- **2FA Issues**: Verify that server time is synchronized correctly

### Getting Help

[](#getting-help)

If you encounter any issues, please:

1. Check the [GitHub Issues](https://github.com/eunusctg/supabase-auth/issues) page
2. Create a new issue with detailed information if yours isn't already reported

License
-------

[](#license)

This extension is licensed under the MIT License. See the [LICENSE](LICENSE) file for details.

Credits
-------

[](#credits)

Developed by the ForumEZ Team.

###  Health Score

17

—

LowBetter than 6% of packages

Maintenance36

Infrequent updates — may be unmaintained

Popularity9

Limited adoption so far

Community7

Small or concentrated contributor base

Maturity15

Early-stage or recently created project

 Bus Factor1

Top contributor holds 100% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

### Community

Maintainers

![](https://www.gravatar.com/avatar/e5a23bff06b4bdac75f638fd2607e469712ebbc964a30ee435ddab591c1da0da?d=identicon)[eunusctg](/maintainers/eunusctg)

---

Top Contributors

[![eunusctg](https://avatars.githubusercontent.com/u/25496054?v=4)](https://github.com/eunusctg "eunusctg (4 commits)")

---

Tags

supabase-auth

### Embed Badge

![Health badge](/badges/eunusctg-supabase-auth/health.svg)

```
[![Health](https://phpackages.com/badges/eunusctg-supabase-auth/health.svg)](https://phpackages.com/packages/eunusctg-supabase-auth)
```

###  Alternatives

[namshi/jose

JSON Object Signing and Encryption library for PHP.

1.8k99.6M101](/packages/namshi-jose)[league/oauth1-client

OAuth 1.0 Client Library

99698.8M106](/packages/league-oauth1-client)[bezhansalleh/filament-shield

Filament support for `spatie/laravel-permission`.

2.8k2.9M88](/packages/bezhansalleh-filament-shield)[gesdinet/jwt-refresh-token-bundle

Implements a refresh token system over Json Web Tokens in Symfony

70516.4M35](/packages/gesdinet-jwt-refresh-token-bundle)[league/oauth2-google

Google OAuth 2.0 Client Provider for The PHP League OAuth2-Client

41721.2M118](/packages/league-oauth2-google)[illuminate/auth

The Illuminate Auth package.

9327.3M1.0k](/packages/illuminate-auth)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
