Move live-preview to separate package