initial structure api + gitignore