Recruitment-frontend

Tasks

  1. Clone repository

  2. Install dependencies, run dev server

  3. Fix potential errors during start

  4. Implement login method to /users/login

    • request body should have form:
    {
      "username": "username",
      "password": "password"
    }
    
  5. Get data from /areas/data using token authorization and render on map in Data component using scatterplot method

    • /login endpoint should return token, which should be next passed in header in form:
    Authorization: Token token_string
    
    • similiar effect should be achieved:

scatterplot

  1. Get data from /areas/secondary using token authorization and render on map as polygon in Secondary component
    • similiar effect should be achieved:

polygon

  1. Use loading spinner after login, there can be some demo delay used.

loading

  1. Implement styles to list in Home component according to visualization below:
    • view should be responsive and UX-reactive (hover, click effects, transitions etc.)
    • avatars can be any sample images from web

home_preview

  1. Add navigation button over the map in lower left corner to go back to the home list:

back_button

  1. Use Redux-toolkit to handle global application state

  2. Use Redux-Saga to handle fetching data from API

  3. Create test suite (units/integrations) for Login view

Additional remarks

  • commits should be done after every particular change, names should be self-explanatory
  • it's possible to use additional libraries in order to complete tasks