directory structure init
gitignore
require external libraries