add cacheId
add cache middleware
update cache library
update frontend javascript
update some css