Biblioteca Javacript para Crop, Transforma e Rotate Image

Estou com um problema Preciso de alguma biblioteca ou alguma dica de como carregar uma imagem na web e permitir que o usuário possa “enquadrar” essa imagem ajustando a rotação, fazendo o crop da image e em alguns fazer o transform de perspectiva da imagem.

Alguem já teve algum problema parecido para fazer isso?

Obrigado