Code Monkey home page Code Monkey logo

react_assessment_1's Introduction

Hilton Dev Assessment

For this code assessment, we expect you to make the changes listed in the Deliverables sections and then email us the link to your codesandbox instance that has your changes. (As soon as you make a change and save it, it will fork this project and create a unique url for you).

Setup

You need to sign up for an OpenWeather API key. Instructions are here: https://openweathermap.org/appid

After you get your API, add that as API_KEY in city-weather.tsx

Mock bug report

Steps to reproduce:

  1. Type a valid US city in the "Weather Search" box
  2. Press {enter}

Expected results User should see the current weather results for that city

Actual Results: App crashes

Deliverable 1:

  1. Fix the bug
    • Treating this like a bug ticket, identify the bug in the application and provide a fix.
  2. Talk about your changes
    • Write a short description about what was the underlying cause of the bug and how you fixed it

Deliverable 2:

  1. Create a city-weather-refactor.tsx file, in which you refactor the city-weather component to use react hooks rather than React.Component. Incorporate the following:

    1. Match the design
      • A designer has provided a comp on how this app should look (see design.png)
        • To match the design you may need to use different fields that are retuned from teh openweathermap API. For example, the weather condition three digit code can be mapped to the icons here
      • Tailwindcss is installed and configured for you
    2. Improve web accessibility
      • Ensure that clicking on the label "Weather Search" puts focus into the text-input.
      • Make sure any loading states are correctly announced to a screen reader
    3. Make the tests better
      • There was a test written for this feature but it clearly didn't catch the bug, make the test better (you can open a new terminal in the bottom right of code sandbox and yarn test)
  2. Talk about your changes

    • For the refactor and other accompanying tasks, include any other thoughts, assumptions, or known compromises in how you approached the work.

react_assessment_1's People

Contributors

jarred28 avatar

Watchers

James Cloos avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.