Drag-based JavaScript component, embracing endless UI solutions