Skip to content
Optimize your Ember apps based on the user's device and network constraints. #BuildForAll
JavaScript HTML CSS
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Type Name Latest commit message Commit time
Failed to load latest commit information.

ember-device 📱

Build Status

Web apps are built with rich content and powerful web experiences these days utilizing the possible device resources. These rich features will lead to better user experiences in high-end devices with sophisticated network bandwidth. However, in mid and low range devices like feature phones, the resource might not be sufficient to drive all the content of our website. Thus it'll be smart to target the low-end device with a minimal and usable feature set and progressively add rich experience as the device and the related metrics become sophisticated.

This package will expose properties to target feature based on the user's device and enhance or gracefully degrade as the device and network constraints change. This will ensure best experience for all of our users irrespective of their device.

There is a well structured blog post by @astronomersiva that explains the implementation of such adaptive fetching techniques in Ember apps. I'd recommend giving it a read to know about the actual implementation. This add-on aims to bring those techniques/utils one more step near to your app so that it'll be one less thing you'd worry about and you can start to optimize your apps right away.

NOTE: Most of the native features utilized in this package is still Experimental with limited browser support. Hence, it is recommended to use it with proper fallbacks.

Here is the Documentation site


This package was inspired by react-adaptive-hooks by Google Chrome Labs Team and it's the wrapper around the bare JS libs to be more operable with Ember ecosystem.


  • Ember.js v3.4 or above
  • Ember CLI v2.13 or above
  • Node.js v8 or above


See the Contributing guide for details.


This project is licensed under the MIT License.

You can’t perform that action at this time.