Project layout and base implementation