@feng19 - this looks really nice, and perhaps is something that could be used inside LiveView - have you thought about releasing a kino package to use this as a plugin?
kino