diff --git a/18_Fetch_And_Axios/18_fetch_axios.md b/18_Fetch_And_Axios/18_fetch_axios.md index f1c0399..c50e674 100644 --- a/18_Fetch_And_Axios/18_fetch_axios.md +++ b/18_Fetch_And_Axios/18_fetch_axios.md @@ -23,7 +23,8 @@ - [Axios](#axios) - [Exercises](#exercises) - [Exercises: Level 1](#exercises-level-1) - - [Exercises: Level 1](#exercises-level-1-1) + - [Exercises: Level 2](#exercises-level-2) + - [Exercises: Level 3](#exercises-level-3) # Fetch and Axios @@ -487,11 +488,17 @@ As you have seen, there is no much difference between fetch and axios. But I rec 5. What is the difference between fetch and axios? 6. Do you prefer fetch to axios for make HTTP requests? -## Exercises: Level 1 +## Exercises: Level 2 1. Find the average metric weight and life span of cats in the following [API](https://api.thecatapi.com/v1/breeds). There are 67 breeds of cats in the API. - -  + + + +## Exercises: Level 3 + +1. How many countries do have cat breeds? +2. Which country has the highest number of cat breeds? +3. Arrange countries in ascending order based on the number of cat breeds they have? đ CONGRATULATIONS ! đ diff --git a/20_projects/20_projects.md b/20_projects/20_projects.md new file mode 100644 index 0000000..91e2e3d --- /dev/null +++ b/20_projects/20_projects.md @@ -0,0 +1,38 @@ +
+ +[<< Day 19](../19_projects/19_projects.md) | [Day 21>>]() + + + +- [Projects](#projects) +- [Exercises](#exercises) + - [Exercises: Level 1](#exercises-level-1) + +# Projects + +Congratulations for making it to this far. Now, you have a solid understanding of React. I believe we have covered most important features of React and your are ready to work on projects. What we have covered so far is the old version of React. Starting from Day 20, we will learn React Hooks. In the next three days you will work on projects only. + +# Exercises + +## Exercises: Level 1 + +Use the following two APIs, [all cats](https://api.thecatapi.com/v1/breeds) and [a single cat][https://api.thecatapi.com/v1/images/search?breed_id=abys]. In the single cat API, you can get url property which is the image of the cat. +Your result should look like this [demo](https://thirty-days-of-react-cat.herokuapp.com/day-20). + +đ CONGRATULATIONS ! đ + +[<< Day 19](../19_projects/19_projects.md) | [Day 21>>]() diff --git a/20_projects/20_projects_boilerplate/.gitignore b/20_projects/20_projects_boilerplate/.gitignore new file mode 100644 index 0000000..4d29575 --- /dev/null +++ b/20_projects/20_projects_boilerplate/.gitignore @@ -0,0 +1,23 @@ +# See https://help.github.com/articles/ignoring-files/ for more about ignoring files. + +# dependencies +/node_modules +/.pnp +.pnp.js + +# testing +/coverage + +# production +/build + +# misc +.DS_Store +.env.local +.env.development.local +.env.test.local +.env.production.local + +npm-debug.log* +yarn-debug.log* +yarn-error.log* diff --git a/20_projects/20_projects_boilerplate/README.md b/20_projects/20_projects_boilerplate/README.md new file mode 100644 index 0000000..134ed54 --- /dev/null +++ b/20_projects/20_projects_boilerplate/README.md @@ -0,0 +1,5 @@ +# 30 Days of React App: Day 17 + +In the project directory, you can run to start the project + +### `npm start` diff --git a/20_projects/20_projects_boilerplate/package.json b/20_projects/20_projects_boilerplate/package.json new file mode 100644 index 0000000..e04beab --- /dev/null +++ b/20_projects/20_projects_boilerplate/package.json @@ -0,0 +1,34 @@ +{ + "name": "30-days-of-react", + "version": "0.1.0", + "private": true, + "dependencies": { + "@testing-library/jest-dom": "^4.2.4", + "@testing-library/react": "^9.3.2", + "@testing-library/user-event": "^7.1.2", + "react": "^16.13.1", + "react-dom": "^16.13.1", + "react-scripts": "3.4.3" + }, + "scripts": { + "start": "react-scripts start", + "build": "react-scripts build", + "test": "react-scripts test", + "eject": "react-scripts eject" + }, + "eslintConfig": { + "extends": "react-app" + }, + "browserslist": { + "production": [ + ">0.2%", + "not dead", + "not op_mini all" + ], + "development": [ + "last 1 chrome version", + "last 1 firefox version", + "last 1 safari version" + ] + } +} diff --git a/20_projects/20_projects_boilerplate/public/index.html b/20_projects/20_projects_boilerplate/public/index.html new file mode 100644 index 0000000..44fa1f3 --- /dev/null +++ b/20_projects/20_projects_boilerplate/public/index.html @@ -0,0 +1,111 @@ + + + + + + + + +{formatedCapital}
++ {formatLanguage}: + {languages.map((language) => language.name).join(', ')} +
++ Population: + {population.toLocaleString()} +
++ Currency: + {currency} +
+There are {this.state.data.length} countries in the api
+