initial repo: api and domain