diff --git a/content/roadmaps.json b/content/roadmaps.json
index 3059cbdd6..fdcf056ce 100644
--- a/content/roadmaps.json
+++ b/content/roadmaps.json
@@ -29,9 +29,9 @@
]
},
"title": "Frontend Developer",
- "description": "Step by step guide to becoming a modern frontend developer in 2021",
+ "description": "Step by step guide to becoming a modern frontend developer in 2022",
"featuredTitle": "Frontend",
- "featuredDescription": "Step by step guide to becoming a frontend developer in 2021",
+ "featuredDescription": "Step by step guide to becoming a frontend developer in 2022",
"author": {
"name": "Kamran Ahmed",
"url": "https://twitter.com/kamranahmedse"
@@ -76,9 +76,9 @@
]
},
"title": "Backend Developer",
- "description": "Step by step guide to becoming a modern backend developer in 2021",
+ "description": "Step by step guide to becoming a modern backend developer in 2022",
"featuredTitle": "Backend",
- "featuredDescription": "Step by step guide to becoming a backend developer in 2021",
+ "featuredDescription": "Step by step guide to becoming a backend developer in 2022",
"featured": true,
"imageUrl": "/roadmaps/backend.png",
"jsonUrl": "/project/frontend.json",
@@ -115,9 +115,9 @@
]
},
"title": "DevOps Roadmap",
- "description": "Step by step guide for DevOps, SRE or any other Operations Role in 2021",
+ "description": "Step by step guide for DevOps, SRE or any other Operations Role in 2022",
"featuredTitle": "DevOps",
- "featuredDescription": "Step by step guide for DevOps or operations role in 2021",
+ "featuredDescription": "Step by step guide for DevOps or operations role in 2022",
"featured": true,
"imageUrl": "/roadmaps/devops.png",
"jsonUrl": "/project/devops.json",
@@ -155,9 +155,9 @@
]
},
"title": "React Developer",
- "description": "Everything that is there to learn about React and the ecosystem in 2021.",
+ "description": "Everything that is there to learn about React and the ecosystem in 2022.",
"featuredTitle": "React",
- "featuredDescription": "Step by step guide to become a React Developer in 2021",
+ "featuredDescription": "Step by step guide to become a React Developer in 2022",
"isTextHeavy": false,
"isCommunity": false,
"featured": true,
@@ -197,9 +197,9 @@
]
},
"title": "Angular Developer",
- "description": "Everything that is there to learn about Angular and the ecosystem in 2021.",
+ "description": "Everything that is there to learn about Angular and the ecosystem in 2022.",
"featuredTitle": "Angular",
- "featuredDescription": "Step by step guide to become a Angular Developer in 2021",
+ "featuredDescription": "Step by step guide to become a Angular Developer in 2022",
"isTextHeavy": false,
"isCommunity": false,
"featured": true,
@@ -239,9 +239,9 @@
]
},
"title": "Android Developer",
- "description": "Step by step guide to becoming an Android developer in 2021",
+ "description": "Step by step guide to becoming an Android developer in 2022",
"featuredTitle": "Android",
- "featuredDescription": "Step by step guide to becoming an Android Developer in 2021",
+ "featuredDescription": "Step by step guide to becoming an Android Developer in 2022",
"isTextHeavy": true,
"isCommunity": false,
"featured": true,
@@ -280,9 +280,9 @@
]
},
"title": "Python Developer",
- "description": "Step by step guide to becoming a Python developer in 2021",
+ "description": "Step by step guide to becoming a Python developer in 2022",
"featuredTitle": "Python",
- "featuredDescription": "Step by step guide to becoming a Python Developer in 2021",
+ "featuredDescription": "Step by step guide to becoming a Python Developer in 2022",
"isTextHeavy": true,
"isCommunity": false,
"featured": true,
@@ -330,9 +330,9 @@
]
},
"title": "Go Developer",
- "description": "Step by step guide to becoming a Go developer in 2021",
+ "description": "Step by step guide to becoming a Go developer in 2022",
"featuredTitle": "Go",
- "featuredDescription": "Step by step guide to becoming a Go developer in 2021",
+ "featuredDescription": "Step by step guide to becoming a Go developer in 2022",
"isTextHeavy": false,
"isCommunity": false,
"isUpcoming": false,
@@ -381,9 +381,9 @@
]
},
"title": "Java Developer",
- "description": "Step by step guide to becoming a Java developer in 2021",
+ "description": "Step by step guide to becoming a Java developer in 2022",
"featuredTitle": "Java",
- "featuredDescription": "Step by step guide to becoming a Java Developer in 2021",
+ "featuredDescription": "Step by step guide to becoming a Java Developer in 2022",
"isTextHeavy": false,
"isCommunity": false,
"isUpcoming": false,
@@ -430,9 +430,9 @@
]
},
"title": "PostgreSQL DBA",
- "description": "Step by step guide to becoming a modern PostgreSQL DB Administrator in 2021",
+ "description": "Step by step guide to becoming a modern PostgreSQL DB Administrator in 2022",
"featuredTitle": "DBA",
- "featuredDescription": "Step by step guide to become a PostgreSQL DBA in 2021",
+ "featuredDescription": "Step by step guide to become a PostgreSQL DBA in 2022",
"landingPath": "/roadmaps/109-postgresql-dba/landscape.md",
"resourcesPath": "/roadmaps/109-postgresql-dba/resources.md",
"author": {
@@ -465,9 +465,9 @@
]
},
"title": "AWS",
- "description": "Everything that is there to learn about AWS and the ecosystem in 2021.",
+ "description": "Everything that is there to learn about AWS and the ecosystem in 2022.",
"featuredTitle": "AWS",
- "featuredDescription": "Step by step guide to learn AWS in 2021",
+ "featuredDescription": "Step by step guide to learn AWS in 2022",
"isTextHeavy": false,
"isCommunity": false,
"isUpcoming": true,
@@ -506,9 +506,9 @@
]
},
"title": "QA Engineer",
- "description": "Steps to follow in order to become a modern QA Engineer in 2021",
+ "description": "Steps to follow in order to become a modern QA Engineer in 2022",
"featuredTitle": "QA",
- "featuredDescription": "Step by step guide to becoming a modern QA Engineer in 2021",
+ "featuredDescription": "Step by step guide to becoming a modern QA Engineer in 2022",
"isUpcoming": true,
"featured": true,
"landingPath": "/roadmaps/111-qa/landscape.md",
@@ -520,4 +520,4 @@
"id": "qa",
"metaPath": "/roadmaps/111-qa/meta.json"
}
-]
\ No newline at end of file
+]
diff --git a/content/roadmaps/100-frontend/content-paths.json b/content/roadmaps/100-frontend/content-paths.json
index e1a93b701..503f905bf 100644
--- a/content/roadmaps/100-frontend/content-paths.json
+++ b/content/roadmaps/100-frontend/content-paths.json
@@ -93,6 +93,10 @@
"testing-your-apps:cypress": "/roadmaps/100-frontend/content/115-testing-your-apps/102-cypress.md",
"testing-your-apps:enzyme": "/roadmaps/100-frontend/content/115-testing-your-apps/103-enzyme.md",
"testing-your-apps:other-options": "/roadmaps/100-frontend/content/115-testing-your-apps/104-other-options.md",
+ "testing-your-apps:mocha": "/roadmaps/100-frontend/content/115-testing-your-apps/105-mocha.md",
+ "testing-your-apps:chai": "/roadmaps/100-frontend/content/115-testing-your-apps/106-chai.md",
+ "testing-your-apps:ava": "/roadmaps/100-frontend/content/115-testing-your-apps/107-ava.md",
+ "testing-your-apps:jasmine": "/roadmaps/100-frontend/content/115-testing-your-apps/108-jasmine.md",
"type-checkers": "/roadmaps/100-frontend/content/116-type-checkers/readme.md",
"type-checkers:typescript": "/roadmaps/100-frontend/content/116-type-checkers/100-typescript.md",
"type-checkers:flow": "/roadmaps/100-frontend/content/116-type-checkers/101-flow.md",
diff --git a/content/roadmaps/100-frontend/content/102-css/readme.md b/content/roadmaps/100-frontend/content/102-css/readme.md
index a741f9425..6cc746a03 100644
--- a/content/roadmaps/100-frontend/content/102-css/readme.md
+++ b/content/roadmaps/100-frontend/content/102-css/readme.md
@@ -9,3 +9,4 @@ CSS or Cascading Style Sheets is the language used to style the frontend of any
CSS Crash Course For Absolute Beginners
HTML and CSS Tutorial
CSS Masterclass - Tutorial & Course for Beginners
+What The Flexbox!
diff --git a/content/roadmaps/100-frontend/content/109-css-preprocessors/readme.md b/content/roadmaps/100-frontend/content/109-css-preprocessors/readme.md
index 107291cf1..689a71c56 100644
--- a/content/roadmaps/100-frontend/content/109-css-preprocessors/readme.md
+++ b/content/roadmaps/100-frontend/content/109-css-preprocessors/readme.md
@@ -1 +1,7 @@
-# Css preprocessors
\ No newline at end of file
+# CSS Preprocessors
+
+CSS Preprocessors are scripting languages that extend the default capabilities of CSS. They enable us to use logic in our CSS code, such as variables, nesting, inheritance, mixins, functions, and mathematical operations.
+
+Free Content
+CSS Preprocessors Explained
+Why Use Preprocessors?
diff --git a/content/roadmaps/100-frontend/content/111-pick-a-framework/100-react-js/100-redux.md b/content/roadmaps/100-frontend/content/111-pick-a-framework/100-react-js/100-redux.md
index 8e47cde66..673e1ed90 100644
--- a/content/roadmaps/100-frontend/content/111-pick-a-framework/100-react-js/100-redux.md
+++ b/content/roadmaps/100-frontend/content/111-pick-a-framework/100-react-js/100-redux.md
@@ -1 +1,9 @@
-# Redux
\ No newline at end of file
+# Redux
+
+Redux is a predictable state container for JavaScript apps. It helps you write applications that behave consistently, run in different environments (client, server, and native), and are easy to test. On top of that, it provides a great developer experience, such as [live code editing combined with a time traveling debugger](https://github.com/reduxjs/redux-devtools).
+
+Free Content
+Official Website
+Official Getting Started to Redux
+Official Tutorial to Learn Redux
+Fundamentals of Redux Course from Dan Abramov
diff --git a/content/roadmaps/100-frontend/content/111-pick-a-framework/102-vue-js/100-vuex.md b/content/roadmaps/100-frontend/content/111-pick-a-framework/102-vue-js/100-vuex.md
index 20f77cb31..88280e6cb 100644
--- a/content/roadmaps/100-frontend/content/111-pick-a-framework/102-vue-js/100-vuex.md
+++ b/content/roadmaps/100-frontend/content/111-pick-a-framework/102-vue-js/100-vuex.md
@@ -1 +1,7 @@
-# Vuex
\ No newline at end of file
+# Vuex
+
+Vuex is a state management pattern + library for Vue.js applications. It serves as a centralized store for all the components in an application, with rules ensuring that the state can only be mutated in a predictable fashion.
+
+Free Content
+Official Documentation
+Vuex Crash Course
diff --git a/content/roadmaps/100-frontend/content/115-testing-your-apps/105-mocha.md b/content/roadmaps/100-frontend/content/115-testing-your-apps/105-mocha.md
new file mode 100644
index 000000000..276bde099
--- /dev/null
+++ b/content/roadmaps/100-frontend/content/115-testing-your-apps/105-mocha.md
@@ -0,0 +1 @@
+# Mocha
\ No newline at end of file
diff --git a/content/roadmaps/100-frontend/content/115-testing-your-apps/106-chai.md b/content/roadmaps/100-frontend/content/115-testing-your-apps/106-chai.md
new file mode 100644
index 000000000..908162bed
--- /dev/null
+++ b/content/roadmaps/100-frontend/content/115-testing-your-apps/106-chai.md
@@ -0,0 +1 @@
+# Chai
\ No newline at end of file
diff --git a/content/roadmaps/100-frontend/content/115-testing-your-apps/107-ava.md b/content/roadmaps/100-frontend/content/115-testing-your-apps/107-ava.md
new file mode 100644
index 000000000..6195efe56
--- /dev/null
+++ b/content/roadmaps/100-frontend/content/115-testing-your-apps/107-ava.md
@@ -0,0 +1 @@
+# Ava
\ No newline at end of file
diff --git a/content/roadmaps/100-frontend/content/115-testing-your-apps/108-jasmine.md b/content/roadmaps/100-frontend/content/115-testing-your-apps/108-jasmine.md
new file mode 100644
index 000000000..49050a4de
--- /dev/null
+++ b/content/roadmaps/100-frontend/content/115-testing-your-apps/108-jasmine.md
@@ -0,0 +1 @@
+# Jasmine
\ No newline at end of file
diff --git a/content/roadmaps/100-frontend/content/116-type-checkers/100-typescript.md b/content/roadmaps/100-frontend/content/116-type-checkers/100-typescript.md
index 721c9655c..d84078de2 100644
--- a/content/roadmaps/100-frontend/content/116-type-checkers/100-typescript.md
+++ b/content/roadmaps/100-frontend/content/116-type-checkers/100-typescript.md
@@ -1 +1,10 @@
-# Typescript
\ No newline at end of file
+# TypeScript
+
+TypeScript is a strongly typed programming language that builds on JavaScript, giving you better tooling at any scale.
+
+Free Resources
+Official Website
+Official Docs for Deep Dives
+The TypeScript Handbook
+TypeScript Tutorial
+TypeScript for Beginners
diff --git a/content/roadmaps/100-frontend/content/118-server-side-rendering/100-react-js/100-next-js.md b/content/roadmaps/100-frontend/content/118-server-side-rendering/100-react-js/100-next-js.md
index f0d7ab1b8..8022bce3b 100644
--- a/content/roadmaps/100-frontend/content/118-server-side-rendering/100-react-js/100-next-js.md
+++ b/content/roadmaps/100-frontend/content/118-server-side-rendering/100-react-js/100-next-js.md
@@ -1 +1,12 @@
-# Next js
\ No newline at end of file
+# Next.js
+
+Next.js is an open-source development framework built on top of Node.js
+enabling React based web applications functionalities such as server-side
+rendering and generating static websites.
+
+Free Resources
+Official Website
+Official Docs for Getting Started
+Mastering Next.js
+Next.js for Beginners - freeCodeCamp
+The Next.js Handbook — freeCodeCamp
diff --git a/content/roadmaps/100-frontend/content/120-static-site-generators/100-next-js.md b/content/roadmaps/100-frontend/content/120-static-site-generators/100-next-js.md
index f0d7ab1b8..776a225f2 100644
--- a/content/roadmaps/100-frontend/content/120-static-site-generators/100-next-js.md
+++ b/content/roadmaps/100-frontend/content/120-static-site-generators/100-next-js.md
@@ -1 +1,12 @@
-# Next js
\ No newline at end of file
+# Next.js
+
+Next.js is an open-source development framework built on top of Node.js
+enabling React based web applications functionalities such as server-side
+rendering and generating static websites.
+
+Free Resources
+Official Website
+Official Docs for Getting Started
+Mastering Next.js
+Next.js for Beginners - Full Course at freeCodeCamp YouTube Channel
+The Next.js Handbook — FreeCodeCamp
diff --git a/content/roadmaps/100-frontend/content/122-desktop-applications/100-electron.md b/content/roadmaps/100-frontend/content/122-desktop-applications/100-electron.md
index 633bbe8f2..cb0633171 100644
--- a/content/roadmaps/100-frontend/content/122-desktop-applications/100-electron.md
+++ b/content/roadmaps/100-frontend/content/122-desktop-applications/100-electron.md
@@ -1 +1,3 @@
-# Electron
\ No newline at end of file
+# Electron
+
+Electron allows you to build cross-platform desktop applications with HTML, CSS, and Javascript/Typescript. It uses Chromium and Node.js, so essentially it is a "Browser" like application that is compatbile with Mac, Windows, and Linux.
diff --git a/content/roadmaps/100-frontend/meta.json b/content/roadmaps/100-frontend/meta.json
index e885a65db..84ea4ed9b 100644
--- a/content/roadmaps/100-frontend/meta.json
+++ b/content/roadmaps/100-frontend/meta.json
@@ -3,9 +3,9 @@
"title": "Frontend Developer Roadmap: Learn to become a modern frontend developer",
"description": "Learn to become a modern frontend developer using this roadmap. Community driven, articles, resources, guides, interview questions, quizzes for modern frontend development.",
"keywords": [
- "javascript roadmap 2021",
- "frontend roadmap 2021",
- "frontend developer roadmap 2021",
+ "javascript roadmap 2022",
+ "frontend roadmap 2022",
+ "frontend developer roadmap 2022",
"guide to becoming a developer",
"guide to becoming a frontend developer",
"frontend developer",
@@ -31,9 +31,9 @@
]
},
"title": "Frontend Developer",
- "description": "Step by step guide to becoming a modern frontend developer in 2021",
+ "description": "Step by step guide to becoming a modern frontend developer in 2022",
"featuredTitle": "Frontend",
- "featuredDescription": "Step by step guide to becoming a frontend developer in 2021",
+ "featuredDescription": "Step by step guide to becoming a frontend developer in 2022",
"author": {
"name": "Kamran Ahmed",
"url": "https://twitter.com/kamranahmedse"
diff --git a/content/roadmaps/101-backend/meta.json b/content/roadmaps/101-backend/meta.json
index 62fb90641..5af244713 100644
--- a/content/roadmaps/101-backend/meta.json
+++ b/content/roadmaps/101-backend/meta.json
@@ -3,8 +3,8 @@
"title": "Backend Developer Roadmap: Learn to become a modern backend developer",
"description": "Learn to become a modern backend developer using this roadmap. Community driven, articles, resources, guides, interview questions, quizzes for modern backend development.",
"keywords": [
- "backend roadmap 2021",
- "backend developer roadmap 2021",
+ "backend roadmap 2022",
+ "backend developer roadmap 2022",
"guide to becoming a developer",
"guide to becoming a backend developer",
"backend roadmap",
@@ -30,9 +30,9 @@
]
},
"title": "Backend Developer",
- "description": "Step by step guide to becoming a modern backend developer in 2021",
+ "description": "Step by step guide to becoming a modern backend developer in 2022",
"featuredTitle": "Backend",
- "featuredDescription": "Step by step guide to becoming a backend developer in 2021",
+ "featuredDescription": "Step by step guide to becoming a backend developer in 2022",
"featured": true,
"imageUrl": "/roadmaps/backend.png",
"jsonUrl": "/project/frontend.json",
diff --git a/content/roadmaps/102-devops/meta.json b/content/roadmaps/102-devops/meta.json
index 8de513807..7584ffb33 100644
--- a/content/roadmaps/102-devops/meta.json
+++ b/content/roadmaps/102-devops/meta.json
@@ -3,9 +3,9 @@
"title": "DevOps Roadmap: Learn to become a DevOps Engineer or SRE",
"description": "Community driven, articles, resources, guides, interview questions, quizzes for DevOps. Learn to become a modern DevOps engineer by following the steps, skills, resources and guides listed in this roadmap.",
"keywords": [
- "devops roadmap 2021",
- "sre roadmap 2021",
- "operations roadmap 2021",
+ "devops roadmap 2022",
+ "sre roadmap 2022",
+ "operations roadmap 2022",
"guide to becoming a devops enginer",
"devops roadmap",
"sre roadmap",
@@ -24,9 +24,9 @@
]
},
"title": "DevOps Roadmap",
- "description": "Step by step guide for DevOps, SRE or any other Operations Role in 2021",
+ "description": "Step by step guide for DevOps, SRE or any other Operations Role in 2022",
"featuredTitle": "DevOps",
- "featuredDescription": "Step by step guide for DevOps or operations role in 2021",
+ "featuredDescription": "Step by step guide for DevOps or operations role in 2022",
"featured": true,
"imageUrl": "/roadmaps/devops.png",
"jsonUrl": "/project/devops.json",
diff --git a/content/roadmaps/103-react/meta.json b/content/roadmaps/103-react/meta.json
index fa810b7d4..d0a865de2 100644
--- a/content/roadmaps/103-react/meta.json
+++ b/content/roadmaps/103-react/meta.json
@@ -3,8 +3,8 @@
"title": "React Developer Roadmap: Learn to become a React developer",
"description": "Community driven, articles, resources, guides, interview questions, quizzes for react development. Learn to become a modern React developer by following the steps, skills, resources and guides listed in this roadmap.",
"keywords": [
- "react roadmap 2021",
- "react developer roadmap 2021",
+ "react roadmap 2022",
+ "react developer roadmap 2022",
"guide to becoming a react developer",
"react developer roadmap",
"react roadmap",
@@ -19,9 +19,9 @@
]
},
"title": "React Developer",
- "description": "Everything that is there to learn about React and the ecosystem in 2021.",
+ "description": "Everything that is there to learn about React and the ecosystem in 2022.",
"featuredTitle": "React",
- "featuredDescription": "Step by step guide to become a React Developer in 2021",
+ "featuredDescription": "Step by step guide to become a React Developer in 2022",
"isTextHeavy": false,
"isCommunity": false,
"featured": true,
diff --git a/content/roadmaps/104-angular/meta.json b/content/roadmaps/104-angular/meta.json
index 8a2023a15..32a35a48f 100644
--- a/content/roadmaps/104-angular/meta.json
+++ b/content/roadmaps/104-angular/meta.json
@@ -17,9 +17,9 @@
]
},
"title": "Angular Developer",
- "description": "Everything that is there to learn about Angular and the ecosystem in 2021.",
+ "description": "Everything that is there to learn about Angular and the ecosystem in 2022.",
"featuredTitle": "Angular",
- "featuredDescription": "Step by step guide to become a Angular Developer in 2021",
+ "featuredDescription": "Step by step guide to become a Angular Developer in 2022",
"isTextHeavy": false,
"isCommunity": false,
"featured": true,
diff --git a/content/roadmaps/105-android/meta.json b/content/roadmaps/105-android/meta.json
index 04c0eece5..96946d227 100644
--- a/content/roadmaps/105-android/meta.json
+++ b/content/roadmaps/105-android/meta.json
@@ -17,9 +17,9 @@
]
},
"title": "Android Developer",
- "description": "Step by step guide to becoming an Android developer in 2021",
+ "description": "Step by step guide to becoming an Android developer in 2022",
"featuredTitle": "Android",
- "featuredDescription": "Step by step guide to becoming an Android Developer in 2021",
+ "featuredDescription": "Step by step guide to becoming an Android Developer in 2022",
"isTextHeavy": true,
"isCommunity": false,
"featured": true,
diff --git a/content/roadmaps/106-python/meta.json b/content/roadmaps/106-python/meta.json
index 5da02b579..58ada4239 100644
--- a/content/roadmaps/106-python/meta.json
+++ b/content/roadmaps/106-python/meta.json
@@ -17,9 +17,9 @@
]
},
"title": "Python Developer",
- "description": "Step by step guide to becoming a Python developer in 2021",
+ "description": "Step by step guide to becoming a Python developer in 2022",
"featuredTitle": "Python",
- "featuredDescription": "Step by step guide to becoming a Python Developer in 2021",
+ "featuredDescription": "Step by step guide to becoming a Python Developer in 2022",
"isTextHeavy": true,
"isCommunity": false,
"featured": true,
diff --git a/content/roadmaps/107-golang/meta.json b/content/roadmaps/107-golang/meta.json
index 593224935..3a2375c0c 100644
--- a/content/roadmaps/107-golang/meta.json
+++ b/content/roadmaps/107-golang/meta.json
@@ -27,9 +27,9 @@
]
},
"title": "Go Developer",
- "description": "Step by step guide to becoming a Go developer in 2021",
+ "description": "Step by step guide to becoming a Go developer in 2022",
"featuredTitle": "Go",
- "featuredDescription": "Step by step guide to becoming a Go developer in 2021",
+ "featuredDescription": "Step by step guide to becoming a Go developer in 2022",
"isTextHeavy": false,
"isCommunity": false,
"isUpcoming": false,
diff --git a/content/roadmaps/108-java/meta.json b/content/roadmaps/108-java/meta.json
index f2a84bba6..0b52b70fe 100644
--- a/content/roadmaps/108-java/meta.json
+++ b/content/roadmaps/108-java/meta.json
@@ -26,9 +26,9 @@
]
},
"title": "Java Developer",
- "description": "Step by step guide to becoming a Java developer in 2021",
+ "description": "Step by step guide to becoming a Java developer in 2022",
"featuredTitle": "Java",
- "featuredDescription": "Step by step guide to becoming a Java Developer in 2021",
+ "featuredDescription": "Step by step guide to becoming a Java Developer in 2022",
"isTextHeavy": false,
"isCommunity": false,
"isUpcoming": false,
diff --git a/content/roadmaps/109-postgresql-dba/meta.json b/content/roadmaps/109-postgresql-dba/meta.json
index 26be38bbf..0c30d2a5e 100644
--- a/content/roadmaps/109-postgresql-dba/meta.json
+++ b/content/roadmaps/109-postgresql-dba/meta.json
@@ -24,9 +24,9 @@
]
},
"title": "PostgreSQL DBA",
- "description": "Step by step guide to becoming a modern PostgreSQL DB Administrator in 2021",
+ "description": "Step by step guide to becoming a modern PostgreSQL DB Administrator in 2022",
"featuredTitle": "DBA",
- "featuredDescription": "Step by step guide to become a PostgreSQL DBA in 2021",
+ "featuredDescription": "Step by step guide to become a PostgreSQL DBA in 2022",
"landingPath": "./landscape.md",
"resourcesPath": "./resources.md",
"author": {
diff --git a/content/roadmaps/110-aws/meta.json b/content/roadmaps/110-aws/meta.json
index a9734d6da..0d2e310ca 100644
--- a/content/roadmaps/110-aws/meta.json
+++ b/content/roadmaps/110-aws/meta.json
@@ -15,9 +15,9 @@
]
},
"title": "AWS",
- "description": "Everything that is there to learn about AWS and the ecosystem in 2021.",
+ "description": "Everything that is there to learn about AWS and the ecosystem in 2022.",
"featuredTitle": "AWS",
- "featuredDescription": "Step by step guide to learn AWS in 2021",
+ "featuredDescription": "Step by step guide to learn AWS in 2022",
"isTextHeavy": false,
"isCommunity": false,
"isUpcoming": true,
diff --git a/content/roadmaps/111-qa/meta.json b/content/roadmaps/111-qa/meta.json
index 492b716d8..c8cc92d9a 100644
--- a/content/roadmaps/111-qa/meta.json
+++ b/content/roadmaps/111-qa/meta.json
@@ -18,9 +18,9 @@
]
},
"title": "QA Engineer",
- "description": "Steps to follow in order to become a modern QA Engineer in 2021",
+ "description": "Steps to follow in order to become a modern QA Engineer in 2022",
"featuredTitle": "QA",
- "featuredDescription": "Step by step guide to becoming a modern QA Engineer in 2021",
+ "featuredDescription": "Step by step guide to becoming a modern QA Engineer in 2022",
"isUpcoming": true,
"featured": true,
"landingPath": "./landscape.md",
diff --git a/license b/license
index c76d897f0..f13896e7b 100644
--- a/license
+++ b/license
@@ -9,7 +9,7 @@ posts, articles, newsletters, you must get prior consent from the understated. T
conditions do not apply to the readonly GitHub forks created using the Fork button on
GitHub with the whole purpose of contributing to the project.
-Copyright © 2021 Kamran Ahmed
+Copyright © 2022 Kamran Ahmed
Please note that I am really flexible with allowing the usage of the content in this
repository. If you reach out to me with a brief detail of why and how you would like
diff --git a/package-lock.json b/package-lock.json
index 7a7379380..51b6a5632 100644
--- a/package-lock.json
+++ b/package-lock.json
@@ -12,15 +12,15 @@
"dependencies": {
"@chakra-ui/icons": "^1.1.1",
"@chakra-ui/react": "^1.7.3",
- "@emotion/react": "^11.7.0",
+ "@emotion/react": "^11.7.1",
"@emotion/styled": "^11.6.0",
"@mapbox/rehype-prism": "^0.8.0",
"@mdx-js/loader": "^1.6.22",
"@next/mdx": "^12.0.7",
- "@svgr/webpack": "^6.1.1",
+ "@svgr/webpack": "^6.1.2",
"date-fns": "^2.27.0",
"focus-visible": "^5.2.0",
- "framer-motion": "^5.4.5",
+ "framer-motion": "^5.5.5",
"next": "^12.0.7",
"prism-themes": "^1.9.0",
"react": "17.0.2",
@@ -33,18 +33,18 @@
"@types/eslint": "8.2.1",
"@types/gh-pages": "^3.2.0",
"@types/glob": "^7.2.0",
- "@types/react": "17.0.37",
+ "@types/react": "17.0.38",
"@types/react-dom": "17.0.11",
- "@types/styled-components": "^5.1.17",
+ "@types/styled-components": "^5.1.19",
"eslint-config-next": "12.0.7",
"eslint-config-prettier": "^8.3.0",
"gh-pages": "^3.2.3",
"glob": "^7.2.0",
"husky": "^7.0.4",
- "pretty-quick": "^3.1.2",
+ "pretty-quick": "^3.1.3",
"serve": "^13.0.2",
"ts-node": "^10.4.0",
- "typescript": "4.5.3"
+ "typescript": "4.5.4"
}
},
"node_modules/@babel/code-frame": {
@@ -2691,15 +2691,15 @@
}
},
"node_modules/@emotion/cache": {
- "version": "11.6.0",
- "resolved": "https://registry.npmjs.org/@emotion/cache/-/cache-11.6.0.tgz",
- "integrity": "sha512-ElbsWY1KMwEowkv42vGo0UPuLgtPYfIs9BxxVrmvsaJVvktknsHYYlx5NQ5g6zLDcOTyamlDc7FkRg2TAcQDKQ==",
+ "version": "11.7.1",
+ "resolved": "https://registry.npmjs.org/@emotion/cache/-/cache-11.7.1.tgz",
+ "integrity": "sha512-r65Zy4Iljb8oyjtLeCuBH8Qjiy107dOYC6SJq7g7GV5UCQWMObY4SJDPGFjiiVpPrOJ2hmJOoBiYTC7hwx9E2A==",
"dependencies": {
"@emotion/memoize": "^0.7.4",
"@emotion/sheet": "^1.1.0",
"@emotion/utils": "^1.0.0",
"@emotion/weak-memoize": "^0.2.5",
- "stylis": "^4.0.10"
+ "stylis": "4.0.13"
}
},
"node_modules/@emotion/hash": {
@@ -2721,12 +2721,12 @@
"integrity": "sha512-igX9a37DR2ZPGYtV6suZ6whr8pTFtyHL3K/oLUotxpSVO2ASaprmAe2Dkq7tBo7CRY7MMDrAa9nuQP9/YG8FxQ=="
},
"node_modules/@emotion/react": {
- "version": "11.7.0",
- "resolved": "https://registry.npmjs.org/@emotion/react/-/react-11.7.0.tgz",
- "integrity": "sha512-WL93hf9+/2s3cA1JVJlz8+Uy6p6QWukqQFOm2OZO5ki51hfucHMOmbSjiyC3t2Y4RI8XUmBoepoc/24ny/VBbA==",
+ "version": "11.7.1",
+ "resolved": "https://registry.npmjs.org/@emotion/react/-/react-11.7.1.tgz",
+ "integrity": "sha512-DV2Xe3yhkF1yT4uAUoJcYL1AmrnO5SVsdfvu+fBuS7IbByDeTVx9+wFmvx9Idzv7/78+9Mgx2Hcmr7Fex3tIyw==",
"dependencies": {
"@babel/runtime": "^7.13.10",
- "@emotion/cache": "^11.6.0",
+ "@emotion/cache": "^11.7.1",
"@emotion/serialize": "^1.0.2",
"@emotion/sheet": "^1.1.0",
"@emotion/utils": "^1.0.0",
@@ -3619,11 +3619,11 @@
}
},
"node_modules/@svgr/core": {
- "version": "6.1.1",
- "resolved": "https://registry.npmjs.org/@svgr/core/-/core-6.1.1.tgz",
- "integrity": "sha512-/NP+24cQmcEdJYptoFWO34SHkNx2x4KOGAMcnTpzOPQifvb1ecupWNEPeHBDY18utd0OMpl2kWf0ZnyN5VsVlg==",
+ "version": "6.1.2",
+ "resolved": "https://registry.npmjs.org/@svgr/core/-/core-6.1.2.tgz",
+ "integrity": "sha512-G1UVZcPS5R+HfBG5QC7n2ibkax8RXki2sbKHySTTnajeNXbzriBJcpF4GpYzWptfvD2gmqTDY9XaX+x08TUyGQ==",
"dependencies": {
- "@svgr/plugin-jsx": "^6.1.0",
+ "@svgr/plugin-jsx": "^6.1.2",
"camelcase": "^6.2.0",
"cosmiconfig": "^7.0.1"
},
@@ -3652,9 +3652,9 @@
}
},
"node_modules/@svgr/plugin-jsx": {
- "version": "6.1.0",
- "resolved": "https://registry.npmjs.org/@svgr/plugin-jsx/-/plugin-jsx-6.1.0.tgz",
- "integrity": "sha512-grAeVnwjr4eyzzscX6d5dK202nQcKGt5STry3BrCNuw8RZkMVFYumjH/qLnInO2ugc0ESSo8eCkb+30vXVxSTg==",
+ "version": "6.1.2",
+ "resolved": "https://registry.npmjs.org/@svgr/plugin-jsx/-/plugin-jsx-6.1.2.tgz",
+ "integrity": "sha512-K/w16g3BznTjVjLyUyV0fE7LLl1HSq5KJjvczFVVvx9QG0+3xtU7RX6gvoVnTvYlrNo8QxxqLWVAU3HQm68Eew==",
"dependencies": {
"@babel/core": "^7.15.5",
"@svgr/babel-preset": "^6.1.0",
@@ -3669,13 +3669,13 @@
"url": "https://github.com/sponsors/gregberge"
},
"peerDependencies": {
- "@svgr/core": "^6.0.0-alpha.0"
+ "@svgr/core": "^6.0.0"
}
},
"node_modules/@svgr/plugin-svgo": {
- "version": "6.1.0",
- "resolved": "https://registry.npmjs.org/@svgr/plugin-svgo/-/plugin-svgo-6.1.0.tgz",
- "integrity": "sha512-NQtYlvPg6yk3wxm1EeeI3kNh/NoSxwW/Zjkvy3vf4CJJHKryB3TnkLsY8Z5hDOERT3Hadksh9RyZnSszEG7q5w==",
+ "version": "6.1.2",
+ "resolved": "https://registry.npmjs.org/@svgr/plugin-svgo/-/plugin-svgo-6.1.2.tgz",
+ "integrity": "sha512-UHVSRZV3RdaggDT60OMIEmhskN736DOF6PuBcCaql6jBDA9+SZkA5ZMEw73ZLAlwdOAmw+0Gi4vx/xvAfnmerw==",
"dependencies": {
"cosmiconfig": "^7.0.1",
"deepmerge": "^4.2.2",
@@ -3689,22 +3689,22 @@
"url": "https://github.com/sponsors/gregberge"
},
"peerDependencies": {
- "@svgr/core": "^6.0.0-alpha.0"
+ "@svgr/core": "^6.0.0"
}
},
"node_modules/@svgr/webpack": {
- "version": "6.1.1",
- "resolved": "https://registry.npmjs.org/@svgr/webpack/-/webpack-6.1.1.tgz",
- "integrity": "sha512-22Ba6/9u/7UHnnwWQBDEIy3GrKbacMHUfS1+0XO1sjiEwQFV+eoJnnwnNX5PVS3pEx0srIKhaCCs9RtUrsM8+w==",
+ "version": "6.1.2",
+ "resolved": "https://registry.npmjs.org/@svgr/webpack/-/webpack-6.1.2.tgz",
+ "integrity": "sha512-5RzzWxFquywENwvnsiGjZ7IED+0l2lnICR3OKQ6OUyGgxlu+ac73NmDSXp6EPBz/ZTArpMZtug7jiPMUkXxnlg==",
"dependencies": {
"@babel/core": "^7.15.5",
"@babel/plugin-transform-react-constant-elements": "^7.14.5",
"@babel/preset-env": "^7.15.6",
"@babel/preset-react": "^7.14.5",
"@babel/preset-typescript": "^7.15.0",
- "@svgr/core": "^6.1.1",
- "@svgr/plugin-jsx": "^6.1.0",
- "@svgr/plugin-svgo": "^6.1.0"
+ "@svgr/core": "^6.1.2",
+ "@svgr/plugin-jsx": "^6.1.2",
+ "@svgr/plugin-svgo": "^6.1.2"
},
"engines": {
"node": ">=10"
@@ -3867,9 +3867,9 @@
"integrity": "sha512-rZ5drC/jWjrArrS8BR6SIr4cWpW09RNTYt9AMZo3Jwwif+iacXAqgVjm0B0Bv/S1jhDXKHqRVNCbACkJ89RAnQ=="
},
"node_modules/@types/react": {
- "version": "17.0.37",
- "resolved": "https://registry.npmjs.org/@types/react/-/react-17.0.37.tgz",
- "integrity": "sha512-2FS1oTqBGcH/s0E+CjrCCR9+JMpsu9b69RTFO+40ua43ZqP5MmQ4iUde/dMjWR909KxZwmOQIFq6AV6NjEG5xg==",
+ "version": "17.0.38",
+ "resolved": "https://registry.npmjs.org/@types/react/-/react-17.0.38.tgz",
+ "integrity": "sha512-SI92X1IA+FMnP3qM5m4QReluXzhcmovhZnLNm3pyeQlooi02qI7sLiepEYqT678uNiyc25XfCqxREFpy3W7YhQ==",
"dependencies": {
"@types/prop-types": "*",
"@types/scheduler": "*",
@@ -3891,9 +3891,9 @@
"integrity": "sha512-hppQEBDmlwhFAXKJX2KnWLYu5yMfi91yazPb2l+lbJiwW+wdo1gNeRA+3RgNSO39WYX2euey41KEwnqesU2Jew=="
},
"node_modules/@types/styled-components": {
- "version": "5.1.17",
- "resolved": "https://registry.npmjs.org/@types/styled-components/-/styled-components-5.1.17.tgz",
- "integrity": "sha512-niMaIan3C2LYCGEPntljGrkxLBfz1RZf4WTTv7w9GJygMsCOl226/UoSwXC8dIHCHs4sQKFQUs5JtdL2hj7k0g==",
+ "version": "5.1.19",
+ "resolved": "https://registry.npmjs.org/@types/styled-components/-/styled-components-5.1.19.tgz",
+ "integrity": "sha512-hNj14Oamk7Jhb/fMMQG7TUkd3e8uMMgxsCTH+ueJNGdFo/PuhlGDQTPChqyilpZP0WttgBHkc2YyT5UG+yc6Yw==",
"dev": true,
"dependencies": {
"@types/hoist-non-react-statics": "*",
@@ -5694,15 +5694,15 @@
}
},
"node_modules/css-select": {
- "version": "4.1.3",
- "resolved": "https://registry.npmjs.org/css-select/-/css-select-4.1.3.tgz",
- "integrity": "sha512-gT3wBNd9Nj49rAbmtFHj1cljIAOLYSX1nZ8CB7TBO3INYckygm5B7LISU/szY//YmdiSLbJvDLOx9VnMVpMBxA==",
+ "version": "4.2.0",
+ "resolved": "https://registry.npmjs.org/css-select/-/css-select-4.2.0.tgz",
+ "integrity": "sha512-6YVG6hsH9yIb/si3Th/is8Pex7qnVHO6t7q7U6TIUnkQASGbS8tnUDBftnPynLNnuUl/r2+PTd0ekiiq7R0zJw==",
"dependencies": {
"boolbase": "^1.0.0",
- "css-what": "^5.0.0",
- "domhandler": "^4.2.0",
- "domutils": "^2.6.0",
- "nth-check": "^2.0.0"
+ "css-what": "^5.1.0",
+ "domhandler": "^4.3.0",
+ "domutils": "^2.8.0",
+ "nth-check": "^2.0.1"
},
"funding": {
"url": "https://github.com/sponsors/fb55"
@@ -7240,9 +7240,9 @@
"integrity": "sha1-C+4AUBiusmDQo6865ljdATbsG5k="
},
"node_modules/framer-motion": {
- "version": "5.4.5",
- "resolved": "https://registry.npmjs.org/framer-motion/-/framer-motion-5.4.5.tgz",
- "integrity": "sha512-OjKfSMO22a9bTedhQ4diwZWCcmwoZmfrkalv4adhHTH2/cXa2eoFAmmPzs6aNpENbMrn47YmlWGwZtYNycXFLg==",
+ "version": "5.5.5",
+ "resolved": "https://registry.npmjs.org/framer-motion/-/framer-motion-5.5.5.tgz",
+ "integrity": "sha512-+LPAF5ddo02qKh+MK4h1ChwqUFvrLkK1NDWwrHy+MuCVmQDGgiFNHvwqOSklTDGkEtbio3dCOEDy23+ZyNAa9g==",
"dependencies": {
"framesync": "6.0.1",
"hey-listen": "^1.0.8",
@@ -7256,7 +7256,7 @@
"@emotion/is-prop-valid": "^0.8.2"
},
"peerDependencies": {
- "@react-three/fiber": "^7.0.21",
+ "@react-three/fiber": "*",
"react": ">=16.8 || ^17.0.0",
"react-dom": ">=16.8 || ^17.0.0",
"three": "^0.135.0"
@@ -10605,9 +10605,9 @@
}
},
"node_modules/pretty-quick": {
- "version": "3.1.2",
- "resolved": "https://registry.npmjs.org/pretty-quick/-/pretty-quick-3.1.2.tgz",
- "integrity": "sha512-T+fpTJrDjTzewql4p3lKrRA7z3MrNyjBK1MKeaBm5PpKwATgVm885TpY7TgY8KFt5Q1Qn3QDseRQcyX9AKTKkA==",
+ "version": "3.1.3",
+ "resolved": "https://registry.npmjs.org/pretty-quick/-/pretty-quick-3.1.3.tgz",
+ "integrity": "sha512-kOCi2FJabvuh1as9enxYmrnBC6tVMoVOenMaBqRfsvBHB0cbpYHjdQEpSglpASDFEXVwplpcGR4CLEaisYAFcA==",
"dev": true,
"dependencies": {
"chalk": "^3.0.0",
@@ -12518,9 +12518,9 @@
}
},
"node_modules/stylis": {
- "version": "4.0.10",
- "resolved": "https://registry.npmjs.org/stylis/-/stylis-4.0.10.tgz",
- "integrity": "sha512-m3k+dk7QeJw660eIKRRn3xPF6uuvHs/FFzjX3HQ5ove0qYsiygoAhwn5a3IYKaZPo5LrYD0rfVmtv1gNY1uYwg=="
+ "version": "4.0.13",
+ "resolved": "https://registry.npmjs.org/stylis/-/stylis-4.0.13.tgz",
+ "integrity": "sha512-xGPXiFVl4YED9Jh7Euv2V220mriG9u4B2TA6Ybjc1catrstKD2PpIdU3U0RKpkVBC2EhmL/F0sPCr9vrFTNRag=="
},
"node_modules/supports-color": {
"version": "5.5.0",
@@ -13013,9 +13013,9 @@
}
},
"node_modules/typescript": {
- "version": "4.5.3",
- "resolved": "https://registry.npmjs.org/typescript/-/typescript-4.5.3.tgz",
- "integrity": "sha512-eVYaEHALSt+s9LbvgEv4Ef+Tdq7hBiIZgii12xXJnukryt3pMgJf6aKhoCZ3FWQsu6sydEnkg11fYXLzhLBjeQ==",
+ "version": "4.5.4",
+ "resolved": "https://registry.npmjs.org/typescript/-/typescript-4.5.4.tgz",
+ "integrity": "sha512-VgYs2A2QIRuGphtzFV7aQJduJ2gyfTljngLzjpfW9FoYZF6xuw1W0vW9ghCKLfcWrCFxK81CSGRAvS1pn4fIUg==",
"dev": true,
"bin": {
"tsc": "bin/tsc",
@@ -15936,15 +15936,15 @@
}
},
"@emotion/cache": {
- "version": "11.6.0",
- "resolved": "https://registry.npmjs.org/@emotion/cache/-/cache-11.6.0.tgz",
- "integrity": "sha512-ElbsWY1KMwEowkv42vGo0UPuLgtPYfIs9BxxVrmvsaJVvktknsHYYlx5NQ5g6zLDcOTyamlDc7FkRg2TAcQDKQ==",
+ "version": "11.7.1",
+ "resolved": "https://registry.npmjs.org/@emotion/cache/-/cache-11.7.1.tgz",
+ "integrity": "sha512-r65Zy4Iljb8oyjtLeCuBH8Qjiy107dOYC6SJq7g7GV5UCQWMObY4SJDPGFjiiVpPrOJ2hmJOoBiYTC7hwx9E2A==",
"requires": {
"@emotion/memoize": "^0.7.4",
"@emotion/sheet": "^1.1.0",
"@emotion/utils": "^1.0.0",
"@emotion/weak-memoize": "^0.2.5",
- "stylis": "^4.0.10"
+ "stylis": "4.0.13"
}
},
"@emotion/hash": {
@@ -15966,12 +15966,12 @@
"integrity": "sha512-igX9a37DR2ZPGYtV6suZ6whr8pTFtyHL3K/oLUotxpSVO2ASaprmAe2Dkq7tBo7CRY7MMDrAa9nuQP9/YG8FxQ=="
},
"@emotion/react": {
- "version": "11.7.0",
- "resolved": "https://registry.npmjs.org/@emotion/react/-/react-11.7.0.tgz",
- "integrity": "sha512-WL93hf9+/2s3cA1JVJlz8+Uy6p6QWukqQFOm2OZO5ki51hfucHMOmbSjiyC3t2Y4RI8XUmBoepoc/24ny/VBbA==",
+ "version": "11.7.1",
+ "resolved": "https://registry.npmjs.org/@emotion/react/-/react-11.7.1.tgz",
+ "integrity": "sha512-DV2Xe3yhkF1yT4uAUoJcYL1AmrnO5SVsdfvu+fBuS7IbByDeTVx9+wFmvx9Idzv7/78+9Mgx2Hcmr7Fex3tIyw==",
"requires": {
"@babel/runtime": "^7.13.10",
- "@emotion/cache": "^11.6.0",
+ "@emotion/cache": "^11.7.1",
"@emotion/serialize": "^1.0.2",
"@emotion/sheet": "^1.1.0",
"@emotion/utils": "^1.0.0",
@@ -16535,11 +16535,11 @@
}
},
"@svgr/core": {
- "version": "6.1.1",
- "resolved": "https://registry.npmjs.org/@svgr/core/-/core-6.1.1.tgz",
- "integrity": "sha512-/NP+24cQmcEdJYptoFWO34SHkNx2x4KOGAMcnTpzOPQifvb1ecupWNEPeHBDY18utd0OMpl2kWf0ZnyN5VsVlg==",
+ "version": "6.1.2",
+ "resolved": "https://registry.npmjs.org/@svgr/core/-/core-6.1.2.tgz",
+ "integrity": "sha512-G1UVZcPS5R+HfBG5QC7n2ibkax8RXki2sbKHySTTnajeNXbzriBJcpF4GpYzWptfvD2gmqTDY9XaX+x08TUyGQ==",
"requires": {
- "@svgr/plugin-jsx": "^6.1.0",
+ "@svgr/plugin-jsx": "^6.1.2",
"camelcase": "^6.2.0",
"cosmiconfig": "^7.0.1"
}
@@ -16554,9 +16554,9 @@
}
},
"@svgr/plugin-jsx": {
- "version": "6.1.0",
- "resolved": "https://registry.npmjs.org/@svgr/plugin-jsx/-/plugin-jsx-6.1.0.tgz",
- "integrity": "sha512-grAeVnwjr4eyzzscX6d5dK202nQcKGt5STry3BrCNuw8RZkMVFYumjH/qLnInO2ugc0ESSo8eCkb+30vXVxSTg==",
+ "version": "6.1.2",
+ "resolved": "https://registry.npmjs.org/@svgr/plugin-jsx/-/plugin-jsx-6.1.2.tgz",
+ "integrity": "sha512-K/w16g3BznTjVjLyUyV0fE7LLl1HSq5KJjvczFVVvx9QG0+3xtU7RX6gvoVnTvYlrNo8QxxqLWVAU3HQm68Eew==",
"requires": {
"@babel/core": "^7.15.5",
"@svgr/babel-preset": "^6.1.0",
@@ -16565,9 +16565,9 @@
}
},
"@svgr/plugin-svgo": {
- "version": "6.1.0",
- "resolved": "https://registry.npmjs.org/@svgr/plugin-svgo/-/plugin-svgo-6.1.0.tgz",
- "integrity": "sha512-NQtYlvPg6yk3wxm1EeeI3kNh/NoSxwW/Zjkvy3vf4CJJHKryB3TnkLsY8Z5hDOERT3Hadksh9RyZnSszEG7q5w==",
+ "version": "6.1.2",
+ "resolved": "https://registry.npmjs.org/@svgr/plugin-svgo/-/plugin-svgo-6.1.2.tgz",
+ "integrity": "sha512-UHVSRZV3RdaggDT60OMIEmhskN736DOF6PuBcCaql6jBDA9+SZkA5ZMEw73ZLAlwdOAmw+0Gi4vx/xvAfnmerw==",
"requires": {
"cosmiconfig": "^7.0.1",
"deepmerge": "^4.2.2",
@@ -16575,18 +16575,18 @@
}
},
"@svgr/webpack": {
- "version": "6.1.1",
- "resolved": "https://registry.npmjs.org/@svgr/webpack/-/webpack-6.1.1.tgz",
- "integrity": "sha512-22Ba6/9u/7UHnnwWQBDEIy3GrKbacMHUfS1+0XO1sjiEwQFV+eoJnnwnNX5PVS3pEx0srIKhaCCs9RtUrsM8+w==",
+ "version": "6.1.2",
+ "resolved": "https://registry.npmjs.org/@svgr/webpack/-/webpack-6.1.2.tgz",
+ "integrity": "sha512-5RzzWxFquywENwvnsiGjZ7IED+0l2lnICR3OKQ6OUyGgxlu+ac73NmDSXp6EPBz/ZTArpMZtug7jiPMUkXxnlg==",
"requires": {
"@babel/core": "^7.15.5",
"@babel/plugin-transform-react-constant-elements": "^7.14.5",
"@babel/preset-env": "^7.15.6",
"@babel/preset-react": "^7.14.5",
"@babel/preset-typescript": "^7.15.0",
- "@svgr/core": "^6.1.1",
- "@svgr/plugin-jsx": "^6.1.0",
- "@svgr/plugin-svgo": "^6.1.0"
+ "@svgr/core": "^6.1.2",
+ "@svgr/plugin-jsx": "^6.1.2",
+ "@svgr/plugin-svgo": "^6.1.2"
}
},
"@szmarczak/http-timer": {
@@ -16736,9 +16736,9 @@
"integrity": "sha512-rZ5drC/jWjrArrS8BR6SIr4cWpW09RNTYt9AMZo3Jwwif+iacXAqgVjm0B0Bv/S1jhDXKHqRVNCbACkJ89RAnQ=="
},
"@types/react": {
- "version": "17.0.37",
- "resolved": "https://registry.npmjs.org/@types/react/-/react-17.0.37.tgz",
- "integrity": "sha512-2FS1oTqBGcH/s0E+CjrCCR9+JMpsu9b69RTFO+40ua43ZqP5MmQ4iUde/dMjWR909KxZwmOQIFq6AV6NjEG5xg==",
+ "version": "17.0.38",
+ "resolved": "https://registry.npmjs.org/@types/react/-/react-17.0.38.tgz",
+ "integrity": "sha512-SI92X1IA+FMnP3qM5m4QReluXzhcmovhZnLNm3pyeQlooi02qI7sLiepEYqT678uNiyc25XfCqxREFpy3W7YhQ==",
"requires": {
"@types/prop-types": "*",
"@types/scheduler": "*",
@@ -16760,9 +16760,9 @@
"integrity": "sha512-hppQEBDmlwhFAXKJX2KnWLYu5yMfi91yazPb2l+lbJiwW+wdo1gNeRA+3RgNSO39WYX2euey41KEwnqesU2Jew=="
},
"@types/styled-components": {
- "version": "5.1.17",
- "resolved": "https://registry.npmjs.org/@types/styled-components/-/styled-components-5.1.17.tgz",
- "integrity": "sha512-niMaIan3C2LYCGEPntljGrkxLBfz1RZf4WTTv7w9GJygMsCOl226/UoSwXC8dIHCHs4sQKFQUs5JtdL2hj7k0g==",
+ "version": "5.1.19",
+ "resolved": "https://registry.npmjs.org/@types/styled-components/-/styled-components-5.1.19.tgz",
+ "integrity": "sha512-hNj14Oamk7Jhb/fMMQG7TUkd3e8uMMgxsCTH+ueJNGdFo/PuhlGDQTPChqyilpZP0WttgBHkc2YyT5UG+yc6Yw==",
"dev": true,
"requires": {
"@types/hoist-non-react-statics": "*",
@@ -18148,15 +18148,15 @@
"integrity": "sha1-/qJhbcZ2spYmhrOvjb2+GAskTgU="
},
"css-select": {
- "version": "4.1.3",
- "resolved": "https://registry.npmjs.org/css-select/-/css-select-4.1.3.tgz",
- "integrity": "sha512-gT3wBNd9Nj49rAbmtFHj1cljIAOLYSX1nZ8CB7TBO3INYckygm5B7LISU/szY//YmdiSLbJvDLOx9VnMVpMBxA==",
+ "version": "4.2.0",
+ "resolved": "https://registry.npmjs.org/css-select/-/css-select-4.2.0.tgz",
+ "integrity": "sha512-6YVG6hsH9yIb/si3Th/is8Pex7qnVHO6t7q7U6TIUnkQASGbS8tnUDBftnPynLNnuUl/r2+PTd0ekiiq7R0zJw==",
"requires": {
"boolbase": "^1.0.0",
- "css-what": "^5.0.0",
- "domhandler": "^4.2.0",
- "domutils": "^2.6.0",
- "nth-check": "^2.0.0"
+ "css-what": "^5.1.0",
+ "domhandler": "^4.3.0",
+ "domutils": "^2.8.0",
+ "nth-check": "^2.0.1"
}
},
"css-to-react-native": {
@@ -19335,9 +19335,9 @@
"integrity": "sha1-C+4AUBiusmDQo6865ljdATbsG5k="
},
"framer-motion": {
- "version": "5.4.5",
- "resolved": "https://registry.npmjs.org/framer-motion/-/framer-motion-5.4.5.tgz",
- "integrity": "sha512-OjKfSMO22a9bTedhQ4diwZWCcmwoZmfrkalv4adhHTH2/cXa2eoFAmmPzs6aNpENbMrn47YmlWGwZtYNycXFLg==",
+ "version": "5.5.5",
+ "resolved": "https://registry.npmjs.org/framer-motion/-/framer-motion-5.5.5.tgz",
+ "integrity": "sha512-+LPAF5ddo02qKh+MK4h1ChwqUFvrLkK1NDWwrHy+MuCVmQDGgiFNHvwqOSklTDGkEtbio3dCOEDy23+ZyNAa9g==",
"requires": {
"@emotion/is-prop-valid": "^0.8.2",
"framesync": "6.0.1",
@@ -21787,9 +21787,9 @@
"peer": true
},
"pretty-quick": {
- "version": "3.1.2",
- "resolved": "https://registry.npmjs.org/pretty-quick/-/pretty-quick-3.1.2.tgz",
- "integrity": "sha512-T+fpTJrDjTzewql4p3lKrRA7z3MrNyjBK1MKeaBm5PpKwATgVm885TpY7TgY8KFt5Q1Qn3QDseRQcyX9AKTKkA==",
+ "version": "3.1.3",
+ "resolved": "https://registry.npmjs.org/pretty-quick/-/pretty-quick-3.1.3.tgz",
+ "integrity": "sha512-kOCi2FJabvuh1as9enxYmrnBC6tVMoVOenMaBqRfsvBHB0cbpYHjdQEpSglpASDFEXVwplpcGR4CLEaisYAFcA==",
"dev": true,
"requires": {
"chalk": "^3.0.0",
@@ -23242,9 +23242,9 @@
}
},
"stylis": {
- "version": "4.0.10",
- "resolved": "https://registry.npmjs.org/stylis/-/stylis-4.0.10.tgz",
- "integrity": "sha512-m3k+dk7QeJw660eIKRRn3xPF6uuvHs/FFzjX3HQ5ove0qYsiygoAhwn5a3IYKaZPo5LrYD0rfVmtv1gNY1uYwg=="
+ "version": "4.0.13",
+ "resolved": "https://registry.npmjs.org/stylis/-/stylis-4.0.13.tgz",
+ "integrity": "sha512-xGPXiFVl4YED9Jh7Euv2V220mriG9u4B2TA6Ybjc1catrstKD2PpIdU3U0RKpkVBC2EhmL/F0sPCr9vrFTNRag=="
},
"supports-color": {
"version": "5.5.0",
@@ -23621,9 +23621,9 @@
}
},
"typescript": {
- "version": "4.5.3",
- "resolved": "https://registry.npmjs.org/typescript/-/typescript-4.5.3.tgz",
- "integrity": "sha512-eVYaEHALSt+s9LbvgEv4Ef+Tdq7hBiIZgii12xXJnukryt3pMgJf6aKhoCZ3FWQsu6sydEnkg11fYXLzhLBjeQ==",
+ "version": "4.5.4",
+ "resolved": "https://registry.npmjs.org/typescript/-/typescript-4.5.4.tgz",
+ "integrity": "sha512-VgYs2A2QIRuGphtzFV7aQJduJ2gyfTljngLzjpfW9FoYZF6xuw1W0vW9ghCKLfcWrCFxK81CSGRAvS1pn4fIUg==",
"dev": true
},
"unbox-primitive": {
diff --git a/package.json b/package.json
index 1bc1ce8a8..e6c6cb1ba 100644
--- a/package.json
+++ b/package.json
@@ -20,15 +20,15 @@
"dependencies": {
"@chakra-ui/icons": "^1.1.1",
"@chakra-ui/react": "^1.7.3",
- "@emotion/react": "^11.7.0",
+ "@emotion/react": "^11.7.1",
"@emotion/styled": "^11.6.0",
"@mapbox/rehype-prism": "^0.8.0",
"@mdx-js/loader": "^1.6.22",
"@next/mdx": "^12.0.7",
- "@svgr/webpack": "^6.1.1",
+ "@svgr/webpack": "^6.1.2",
"date-fns": "^2.27.0",
"focus-visible": "^5.2.0",
- "framer-motion": "^5.4.5",
+ "framer-motion": "^5.5.5",
"next": "^12.0.7",
"prism-themes": "^1.9.0",
"react": "17.0.2",
@@ -41,18 +41,18 @@
"@types/eslint": "8.2.1",
"@types/gh-pages": "^3.2.0",
"@types/glob": "^7.2.0",
- "@types/react": "17.0.37",
+ "@types/react": "17.0.38",
"@types/react-dom": "17.0.11",
- "@types/styled-components": "^5.1.17",
+ "@types/styled-components": "^5.1.19",
"eslint-config-next": "12.0.7",
"eslint-config-prettier": "^8.3.0",
"gh-pages": "^3.2.3",
"glob": "^7.2.0",
"husky": "^7.0.4",
- "pretty-quick": "^3.1.2",
+ "pretty-quick": "^3.1.3",
"serve": "^13.0.2",
"ts-node": "^10.4.0",
- "typescript": "4.5.3"
+ "typescript": "4.5.4"
},
"husky": {
"hooks": {
diff --git a/pages/thanks.tsx b/pages/thanks.tsx
index 586269eb4..bc4777d1a 100644
--- a/pages/thanks.tsx
+++ b/pages/thanks.tsx
@@ -84,14 +84,16 @@ export default function Thanks() {
Monthly Sponsors
+ Reset
+ Ricardo Lino
Yan Valuyskiy
Josue V
Novecento88
- Myroslav
Gerald-Markus Zabos
Joseph
Jacks
- Mustafa
- Magdi
Past or One Time Sponsors
+ Myroslav
+ Mustafa
+ Magdi
+ Jacob P Evans
+ Oleg
+ Andy
elzup
+
+ roadmap.sh
+ Community driven roadmaps, articles and resources for developers
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-> Community effort to create roadmaps, guides and structured educational content.
+
+
+
-[![](https://img.shields.io/badge/-Roadmaps%20-0a0a0a.svg?style=flat&colorA=0a0a0a)](http://roadmap.sh)
-[![](https://img.shields.io/badge/-Guides-0a0a0a.svg?style=flat&colorA=0a0a0a)](http://roadmap.sh/guides)
-[![](https://img.shields.io/badge/-Videos-0a0a0a.svg?style=flat&colorA=0a0a0a)](http://roadmap.sh/watch)
-[![](https://img.shields.io/badge/%E2%9D%A4-YouTube%20Channel-0a0a0a.svg?style=flat&colorA=0a0a0a)](https://www.youtube.com/channel/UCA0H2KIWgWTwpTFjSxp0now?sub_confirmation=1)
+
![](https://i.imgur.com/waxVImv.png)
@@ -53,48 +103,6 @@ npm run dev
- Discuss ideas in issues
- Spread the word
-
-
-
-
-
-
-
-
-
## License
Have a look at the [license file](./license) for details