What is the end-to-end (E2E) flow of a MiniApp?