updated as per yaml project
ignore generated files
main refactored to run from base directory