initial project + basic API