basic framework

begin to write basic framework