basic framework for codelog