change projects structure and made portable