improved view and js