If you've created a demo or site that requires Canvas or WebSQL DB, you've been in the awkward situation of telling some of your visitors that their browser doesn't support those features. But you can't just recommend they get a browser with those features; for example, "Get a WebRTC capable browser" is pretty much useless to everyone.
The HTML5 Please API translates developer language (features) to user language (browsers). Call the API and you get back some HTML to show the user or a JSON object of the relevant data (with browser logos and all), so you can customize what you show to users.
Are you using HTML5 features that are not available in all browsers and want to tell visitors with incompatible browers which browser to use to get the best experience of your site?
The User's browser User Agent information is matched against this list of UAs and then based on the information collated from caniuse's data feed. If it supports the required features, we return a JSON object but no HTML, no message is displayed.
If so, the message links to the newer version of the user's browser asking them to view the page in the newer version of their current browser.
If so, the widget links to all these stable browsers. If the user is viewing the page on desktop, it returns only desktop browsers. If user is viewing the page on mobile devices, it returns only mobile browsers that support these features.
In addition, for desktop browsers, if the user is on a non-windows machine, no IE recommendations will appear even if IE supports the required HTML5 features (as there is no supported version of IE on these platforms).
API Reference: Explanation of all the options you can use to make this API call.
Data Object Reference: Explanation of all the data returned by a call to this API.
This is a community project. You can help by forking html5please-api and making it better. Please also file a ticket to start a discussion.