add initial code for the framework