Architecture
Last Modified: 2020-11-23 Edit on GitHubSocialConnect/auth
project is not monolith, itβs a set of independent packages.
Take a look at the graph, itβs simplified but it can make you a good overview as visualization:
There are 6 packages:
- π¦ socialconnect/common - base classes for our projects
- π¦ socialconnect/provider - base interfaces and abstract for implement social sign standards
- π¦ socialconnect/oauth1 - implementation for OAuth1 (spec RFC 5849)
- π¦ socialconnect/oauth2 - implementation for OAuth2 (spec RFC 6749)
- π¦ socialconnect/openid - implementation for OpenID protocol
- π¦ socialconnect/openid-connect - implementation for OpenID Connect (1.0)
- JWT (JSON Web Token) spec RFC 7519
- JWK (JSON Web Keys) spec RFC 7517
- π¦ socialconnect/auth - tiny library to getting providers (registry like)
- π¦ socialconnect/jwx - our implementation for JSON Web tokens / JSON Web Keys.
- π¦ socialconnect/http-client - our implementation for PSR-18 (HTTP-Client), based on top of guzzle/psr-7 for messaging layer
Our mission
- Provider abstraction layer for social sign standards
- Be modules and unify
- Use interfaces from PHP-FIG and allow user replace independent parts
- Provider high quality database with high code coverage and testing by stat analyzers