Überauth
An Elixir Authentication System for Plug-based Web Applications
...You could call it a port but it is significantly different in operation, but almost the same concept. Huge hat tip to Intridea. Ueberauth provides only the initial authentication challenge, (initial OAuth flow, collecting the information from a login form, etc). It does not authenticate each request, that's up to your application. You could issue a token or put the result into a session for the needs of your application. Libraries like Guardian can help you with that aspect of authentication. Strategies implement the two phases and then may allow the request to flow through to your downstream plugs. ...