updated demo project, refactored FramePage