add caching in SESSION..
add frontend JS screen/viewport dimension sniffing with callback.. first draft..