build basic framework