It is possible to create it with angular js but for this kind of work is better to build it on pure js and don't depend on external script. You did not post image of what your page will look like so it can take a little bit more time based on how much elements will be there.