Skip to content

yawningvoid/coding-challenge-frontend

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

12 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Commutifi coding challenge frontend

Your challenge is to build a responsive microsite that display the weather forecast at the locations given in the white text box.

Functional requirements

  • Has a simple onboarding screen that will trigger the weather forecast base on the geolocation API of the browser.
  • Provide an user input where the user can change the location.
  • Forecasts for: today, tomorrow and the day after tomorrow should be shown.
  • For temperatures below 15ºC, blue color should be used, for temperatures above 35ºC, red should be used and yellow should be used for other temperatures.
  • When there is no chosen location, gray should be used . If the user clicks on any temperature, the temperatures should be changed from Celsius to Fahrenheit or from Fahrenheit to Celsius.
  • The color defined here can be use for the text color or the background, be creative.
  • Components should flexible enough to display the day above or under the temperature.

Non-functional requirements

  • Challenge is submitted as pull request against this repo (fork it and create a pull request).
  • The microsite should be deployed and usable.

Bonus

  • Localization: support for multiple languages (English, French, ...)
  • Backend: proxy the request, handle better the quota (cache?)
  • Features: any extra features, you think use full for the user

Remarks

  • You can setup your microsite any way you like; but you should use the stack Node JS and React
  • CSS can be written using SASS, LESS or similar higher-level language

Things that are important to us

  • Code quality, maintainability and readability
  • Attention to the User Experience

Things you'll not be evaluated on

  • Features we didn't list in this README
  • The quantity of code you write

Documentation

Supporting API

  • To consult the weather forecast, you can use OpenWeather using the API key b81cd1a66eaee287ea9830aa66250511. If necessary, create a new account.
  • To convert latitude and longitude to a location use OpenCage using the API key 066c930b1b9f4d9bb89733fb93e9827b. If necessary, create a new account.

Evaluation criteria

  • Organization of code
  • Clarity: Does the README explain briefly what the problem is and how can I run the application?
  • Assertiveness: Is the application doing what is expected?
  • Code readability
  • Security: Are there any clear vulnerabilities?
  • Test coverage
  • History of commits (structure and quality)
  • UX: Is the interface user-friendly and self-explanatory? Is the API intuitive?
  • Technical choices

Doubts

Any questions you may have, open an issue. But take time to think before :)

Releases

No releases published

Packages

No packages published

Languages

  • JavaScript 60.4%
  • HTML 21.5%
  • SCSS 18.1%