Remix Auth Socials is a utility package designed to simplify the integration of multiple OAuth2 social login strategies with `remix-auth`. Instead of managing various social provider strategies internally, it collates and re-exports existing community-developed `remix-auth-*-strategy` packages, providing a unified `SocialsProvider` enum for easier dynamic routing and button rendering. The current stable version is 3.0.0, though the README marks it as 'broken / beta / use at your own risk' due to ongoing updates for Remix Router v7 compatibility and dropping support for some previously included strategies. The release cadence is irregular, largely driven by updates to the underlying community packages it aggregates. Its key differentiator is providing a single point of reference and a consistent enum for managing a suite of social authentication options within a Remix application, aiming to reduce `package.json` bloat from individual strategy installations while centralizing the usage pattern.
npm install remix-auth-socialsVerified import paths — ran on the pinned version, not inferred.
This quickstart demonstrates setting up `remix-auth` with a `GoogleStrategy` using `remix-auth-socials`' `SocialsProvider` enum for consistent dynamic routing. It includes an `authenticator` instance, dynamic auth routes (`$provider.tsx`, `$provider.callback.tsx`), a login page with a social button, and a logout action.
Review the 'Currently Unavailable in V3' list in the README. For dropped strategies, consider implementing them directly with `remix-auth` using their respective individual packages (if updated for RR7) or explore other authentication methods. For included strategies, ensure they are compatible with your Remix Router version.
Exercise caution when deploying V3 to production. Thoroughly test all integrated social strategies, especially Google and Facebook. Monitor the GitHub repository for updates and bug fixes, or consider contributing to stability efforts if critical for your application.
Be prepared to manage or contribute to the package yourself for critical issues or to keep up with ecosystem changes. For long-term projects requiring highly stable and actively maintained social authentication, consider integrating individual `remix-auth-*-strategy` packages directly or building custom strategies.
Ensure that for every social provider you intend to use, you have explicitly installed its corresponding `remix-auth-*-strategy` package (e.g., `npm install remix-auth-google`) in addition to `remix-auth-socials` itself. Refer to the 'The Collection' section of the `remix-auth-socials` README for links to the individual strategy packages.
Ensure that every `SocialsProvider` enum value used in your frontend buttons has a corresponding `authenticator.use()` call in your `auth.server.ts` (or equivalent file), properly instantiating the relevant `remix-auth-*-strategy` package.
Install the required individual strategy package for each social provider you intend to use. For example, for Google, run `npm install remix-auth-google`. Remember that `remix-auth-socials` itself does not bundle these strategies.
Access enum members directly, e.g., `SocialsProvider.GOOGLE` or `SocialsProvider.GITHUB`. Ensure you are not trying to instantiate it or call it like `SocialsProvider()`.