
DiscoJuice is a very flexible User Interface library for implementing an IdP Discovery Service.
As a service provider, connected to a large number of Identity Providers, you would need to ask the user in advance of the authentication process to select its home provider.
DiscoJuice is super simple to deploy at a Service Provider. It is as simple as dropping a folder in your webserver, and include a few lines in your HTML templates. This is given that your federations (or Service Provider) supports providing a compatible metadata feed. The DiscoJuice as a SimpleSAMLphp module got code for doing this for you automatically (if you prefer).
DiscoJuice may be deployed embedded in the Service with a stylish popup asking the user where to login, or alternatively as a standalone page. Often both versions will be deployed and used depending on whether the specific page requires the user to login or if it is optoinal.

Features
Some of the features DiscoJuice supports includes:
- Local Memory (cookie)
- Remote Memory (DiscoReadWrite protocol + IdP Discovery)
- Javascript only, super simple to deploy
- DiscoJuiceJSON compact UI-focused Metadata format (MDUI friendly)
- Presents logos, searchable keywords, name, descr, country...
- Automatically discovery of country
- HTML5 Geo-location API
- Gracefull non-javascript fallback
- Inline incremental search
- Flexible integration API using JS callbacks.
- Protocol agnostics, demoed with alternative protocols.
- Multi-lingual both provider list (from metadata) and UI is translated into 15 languages
