Weather Typescript
Log
- `npx create-react-app . --template typescript`
- `yarn add react-router-dom styled-components axios`
- `yarn add @types/styled-components @types/react-router-dom gh-pages --dev`
```
"compilerOptions": {
...
"baseUrl": "src"
},
```
- `git commit -am "Project Started based on CRA-emel and typescript"`
- `git commit -am "Absolute path configured at tsconfig.json"`
- `git commit -am "Helper packages installed: react-router styled-components axios"`
- `git commit -am "devDependencies installed"`
- `git commit -am "Router Structured"`
- `git commit -am "Common components build"`
- `git commit -am "Weather context implemented"`
- `git commit -am "README updated"`
Task Detail
# Coding Task
Your primary task is to build an app to retrieve weather information from a public weather API(https://rapidapi.com/weatherbit/api/weather/endpoints).
In this task, as in our business, performance, security and good code practices are key. It would be great if the architecture
of the application reflected these constraints.
The app should have 2 pages:
- The first page should give me the current weather for one of the below locations
- The second page should give me the weather extended(16 days) forcast for the locations below.
This page also should give me a search area where I can filter the results down by:
_ Min Temperature, where the results should match any min temperature lower or equals than the value provided
_ Max Temperature, where the results should match any max temperature higher or equals than the value provided
Locations: (London, New York, Mumbai, Sydney, Tokyo)
## Requirements
- React and Typescript must be used
- A README file should be supplied to explain how to run the application and any other information
relating to the code that you feel would be valuable to share. Please try to add as much detail as you can.
- The application should be responsive (desktop, tablet and mobile).
## Notes
- Feel free to choose the technologies/tools/Frameworks you want to choose.
- The focus should be on the quality of the source code.
- It may be easier to give us a link to a git repo when you're done, otherwise a compressed git archive would be fine.
- The front end should be simple, no need for elaborate UI,
a simple display of some data in a creative way will suffice.
How to Run ?
This project was bootstrapped with [Create React App](https://github.com/facebook/create-react-app).
## Available Scripts
In the project directory, you can run:
### `yarn start`
Runs the app in the development mode.
Open [http://localhost:3000](http://localhost:3000) to view it in the browser.
The page will reload if you make edits.
You will also see any lint errors in the console.
### `yarn test`
Launches the test runner in the interactive watch mode.
See the section about [running tests](https://facebook.github.io/create-react-app/docs/running-tests) for more information.
### `yarn build`
Builds the app for production to the `build` folder.
It correctly bundles React in production mode and optimizes the build for the best performance.
The build is minified and the filenames include the hashes.
Your app is ready to be deployed!
See the section about [deployment](https://facebook.github.io/create-react-app/docs/deployment) for more information.
### `yarn eject`
**Note: this is a one-way operation. Once you `eject`, you can’t go back!**
If you aren’t satisfied with the build tool and configuration choices, you can `eject` at any time. This command will remove the single build dependency from your project.
Instead, it will copy all the configuration files and the transitive dependencies (webpack, Babel, ESLint, etc) right into your project so you have full control over them. All of the commands except `eject` will still work, but they will point to the copied scripts so you can tweak them. At this point you’re on your own.
You don’t have to ever use `eject`. The curated feature set is suitable for small and middle deployments, and you shouldn’t feel obligated to use this feature. However we understand that this tool wouldn’t be useful if you couldn’t customize it when you are ready for it.
## Learn More
You can learn more in the [Create React App documentation](https://facebook.github.io/create-react-app/docs/getting-started).
To learn React, check out the [React documentation](https://reactjs.org/).