1. rebuild the structure of demo
2. update ui
3. fix some bugs