Add Multi-Provider OAuth Support (GitHub, Facebook)
Problem Description
authpool only supports Google as the OAuth provider. Many apps require alternative or multiple providers such as GitHub, Facebook, or LinkedIn for broader login support.
Proposed Solution
- Allow configuration of additional strategies:
startAuthServer({
providers: {
google: {...},
github: {...},
facebook: {...},
}
});
-
Internally, register dynamic Passport strategies and routes for each provider:
-
/auth/github
-
/auth/facebook
-
Reuse core logic (JWT, DB handling, callback) for all providers.
Why this matter
Supporting multiple OAuth providers expands the use cases for authpool, making it suitable for a wider range of applications, including developer tools, enterprise software, and social platforms.
Acceptance Criteria
- At least 2 new providers (GitHub + Facebook) supported.
- Users can enable/disable providers via config.
- Tokens and user profiles handled uniformly.
- Docs updated with multi-provider setup instructions.
Add Multi-Provider OAuth Support (GitHub, Facebook)
Problem Description
authpoolonly supports Google as the OAuth provider. Many apps require alternative or multiple providers such as GitHub, Facebook, or LinkedIn for broader login support.Proposed Solution
Internally, register dynamic Passport strategies and routes for each provider:
/auth/github/auth/facebookReuse core logic (JWT, DB handling, callback) for all providers.
Why this matter
Supporting multiple OAuth providers expands the use cases for
authpool, making it suitable for a wider range of applications, including developer tools, enterprise software, and social platforms.Acceptance Criteria