initial commit as a complete project