refactored  client side project structure