updated the project to templatize it