Merge branch 'master' of github.com:kamranahmedse/developer-roadmap

pull/2830/head
Kamran Ahmed 2 years ago
commit b96665c358
  1. 8
      content/guides/proxy-servers.md
  2. 2
      content/roadmaps/100-frontend/content/101-html/100-learn-the-basics.md
  3. 4
      content/roadmaps/100-frontend/content/101-html/101-writing-semantic-html.md
  4. 10
      content/roadmaps/100-frontend/content/101-html/104-accessibility.md
  5. 1
      content/roadmaps/100-frontend/content/101-html/readme.md
  6. 2
      content/roadmaps/100-frontend/content/102-css/101-making-layouts.md
  7. 2
      content/roadmaps/100-frontend/content/102-css/readme.md
  8. 1
      content/roadmaps/100-frontend/content/103-javascript/103-es6-and-modular-javascript.md
  9. 1
      content/roadmaps/100-frontend/content/103-javascript/104-concepts.md
  10. 2
      content/roadmaps/100-frontend/content/103-javascript/readme.md
  11. 1
      content/roadmaps/100-frontend/content/104-version-control-systems/100-basic-usage-of-git.md
  12. 2
      content/roadmaps/100-frontend/content/104-version-control-systems/readme.md
  13. 1
      content/roadmaps/100-frontend/content/110-build-tools/101-module-bundlers/100-webpack.md
  14. 1
      content/roadmaps/101-backend/content/100-internet/101-what-is-http.md
  15. 1
      content/roadmaps/101-backend/content/101-basic-frontend/readme.md
  16. 2
      content/roadmaps/101-backend/content/103-learn-a-language/100-go.md
  17. 2
      content/roadmaps/101-backend/content/103-learn-a-language/101-rust.md
  18. 1
      content/roadmaps/101-backend/content/103-learn-a-language/103-php.md
  19. 2
      content/roadmaps/101-backend/content/103-learn-a-language/106-python.md
  20. 1
      content/roadmaps/101-backend/content/103-learn-a-language/107-ruby.md
  21. 2
      content/roadmaps/101-backend/content/107-nosql-databases/103-realtime-databases.md
  22. 1
      content/roadmaps/101-backend/content/112-testing/100-integration-testing.md
  23. 3
      content/roadmaps/101-backend/content/113-ci-cd.md
  24. 3
      content/roadmaps/101-backend/content/115-architectural-patterns/101-microservices.md
  25. 7
      content/roadmaps/101-backend/content/115-architectural-patterns/readme.md
  26. 1
      content/roadmaps/102-devops/content/101-os-concepts/100-networking.md
  27. 1
      content/roadmaps/102-devops/content/102-managing-servers/101-live-in-terminal/104-bash-scripting.md
  28. 5
      content/roadmaps/102-devops/content/103-networking-protocols/103-emails/readme.md
  29. 4
      content/roadmaps/102-devops/content/104-setting-up-x/104-firewall.md
  30. 1
      content/roadmaps/102-devops/content/105-infrastructure-as-code/readme.md
  31. 1
      content/roadmaps/103-react/content/100-react-fundamental-topics/101-jsx.md
  32. 3
      content/roadmaps/103-react/content/100-react-fundamental-topics/108-basic-hooks/readme.md
  33. 1
      content/roadmaps/103-react/content/102-react-ecosystem/103-api-calls/104-axios.md
  34. 1
      content/roadmaps/103-react/content/102-react-ecosystem/103-api-calls/readme.md
  35. 1
      content/roadmaps/103-react/content/102-react-ecosystem/106-testing/103-vitest.md
  36. 3
      content/roadmaps/103-react/content/102-react-ecosystem/107-state-management/101-redux.md
  37. 3
      content/roadmaps/104-angular/content/102-angular-basics/105-services.md
  38. 1
      content/roadmaps/105-vue/content/101-advanced-topics/112-plugins.md
  39. 11
      content/roadmaps/106-javascript/content/101-javascript-variables/103-scopes/readme.md
  40. 4
      content/roadmaps/106-javascript/content/105-javascript-equality-comparisons/100-equality-algorithms/readme.md
  41. 2
      content/roadmaps/106-javascript/content/109-javascript-functions/readme.md
  42. 2
      content/roadmaps/106-javascript/content/112-javascript-asynchronous-javascript/100-event-loop.md
  43. 2
      content/roadmaps/107-nodejs/content/107-nodejs-apis/102-nest-js.md
  44. 2
      content/roadmaps/107-nodejs/content/110-nodejs-databases/101-document/100-mongoose.md
  45. 3
      content/roadmaps/108-python/content/102-python-advanced-topics/100-oop/readme.md
  46. 1
      content/roadmaps/108-python/content/102-python-advanced-topics/102-decorators.md
  47. 1
      content/roadmaps/110-java/content/103-java-web-frameworks/100-spring.md
  48. 9
      content/roadmaps/110-java/content/103-java-web-frameworks/103-spark.md
  49. 2
      content/roadmaps/110-java/content/104-java-orm/102-hibernate.md
  50. 3
      content/roadmaps/110-java/content/107-testing-java-apps/104-junit.md
  51. 2
      content/roadmaps/113-qa/content/100-qa-basics/107-testing-techniques/100-functional-testing/exploratory-testing.md
  52. 2
      content/roadmaps/113-qa/content/100-qa-basics/107-testing-techniques/101-non-functional-testing/load-testing.md
  53. 1
      content/roadmaps/113-qa/content/101-qa-sdlc/102-agile-model/readme.md
  54. 17
      content/roadmaps/113-qa/content/103-qa-automated-testing/100-frontend-automation/100-basic-introduction/responsive-vs-adaptive.md
  55. 8
      content/roadmaps/113-qa/content/103-qa-automated-testing/100-frontend-automation/101-ghost-inspector.md
  56. 10
      content/roadmaps/113-qa/content/103-qa-automated-testing/100-frontend-automation/102-automation-frameworks/qa-wolf.md
  57. 12
      content/roadmaps/113-qa/content/103-qa-automated-testing/100-frontend-automation/102-automation-frameworks/webdriver-io.md
  58. 7
      content/roadmaps/113-qa/content/103-qa-automated-testing/100-frontend-automation/103-check-my-links.md
  59. 6
      content/roadmaps/113-qa/content/103-qa-automated-testing/102-backend-automation/102-soap-ui.md
  60. 2
      content/roadmaps/113-qa/content/104-qa-non-functional-testing/101-accessibility-testing/101-wave.md
  61. 2
      content/roadmaps/113-qa/content/104-qa-non-functional-testing/readme.md
  62. 6
      content/roadmaps/113-qa/content/105-qa-email-testing/100-mailinator.md
  63. 2
      content/roadmaps/114-software-architect/content/111-web-and-mobile/105-w3c-and-whatwg-standards.md
  64. 2
      readme.md
  65. 4
      scripts/readme.md

@ -16,21 +16,21 @@ Proxy servers serve as a single point of control making it easier to enforce sec
## Forward Proxy Server
A forward proxy is generally implemented on the client side and **sits in front of multiple clients** or client sources. Forward proxy servers are mainly used by companies to **manage internet usage** of their employees and **restrict content**. It is also used as a **firewall** to secure the company's network by blocking any request which would pose threat to the companies's network. Proxy servers are also used to **bypass geo-restriction** and browse content that might be blocked in the user's country. It enables users to **browse anonymously**, as the proxy server masks their details from the website's servers.
A forward proxy is generally implemented on the client side and **sits in front of multiple clients** or client sources. Forward proxy servers are mainly used by companies to **manage the internet usage** of their employees and **restrict content**. It is also used as a **firewall** to secure the company's network by blocking any request which would pose threat to the company's network. Proxy servers are also used to **bypass geo-restriction** and browse content that might be blocked in the user's country. It enables users to **browse anonymously**, as the proxy server masks their details from the website's servers.
![Forward Proxy Description](/guides/proxy/forward-proxy.png)
> NOTE: This is not an accurate description but rather just an illustration
## Reverse Proxy Server
Reverse proxy servers are implemented on the **server side** instead of the client side. It **sits in front of multiple webservers** and manages the incoming requests by forwarding them to the web servers. It provides anonymity for the **back-end web servers and not the client**. Reverse proxy servers are generally used to perform tasks such as **authentication, content caching, and encryption/decryption** on behalf of the web server. These tasks would **hog CPU cycles** on the web server and degrade the performance of the website by introducing a high amount of delay in loading the webpage. Reverse proxies are also used as **load balancers** to distribute the incoming traffic efficiently among the web servers but it is **not optimized** for this task. In essence, a reverse proxy server is a gateway to a web-server or group of web-servers.
Reverse proxy servers are implemented on the **server side** instead of the client side. It **sits in front of multiple webservers** and manages incoming requests by forwarding them to the web servers. It provides anonymity for the **back-end web servers and not the client**. Reverse proxy servers are generally used to perform tasks such as **authentication, content caching, and encryption/decryption** on behalf of the web server. These tasks would **hog CPU cycles** on the web server and degrade the performance of the website by introducing a high amount of delay in loading the webpage. Reverse proxies are also used as **load balancers** to distribute the incoming traffic efficiently among the web servers but it is **not optimized** for this task. In essence, a reverse proxy server is a gateway to a web-server or group of web-servers.
![Reverse Proxy Description](/guides/proxy/reverse-proxy.png)
> NOTE: This is not an accurate description but rather just an illustration. Red lines represent server's response and black lines represent initial request from client(s).
> NOTE: This is not an accurate description but rather just an illustration. Red lines represent the server's response and black lines represent the initial request from client(s).
## Summary
A proxy server acts as a gateway between client *(you)* and the internet and separates end-users from the websites you browse. ***The position of the proxy server on the network determines whether it is a forward or a reverse proxy server***. A Forward proxy is implemented on the client side and **sits in front of multiple clients** or client sources and forwards requests to the web server. Reverse proxy servers are implemented on the **server side** it **sits in front of multiple webservers** and manages the incoming requests by forwarding them to the web servers.
A proxy server acts as a gateway between client *(you)* and the internet and separates end-users from the websites you browse. ***The position of the proxy server on the network determines whether it is a forward or a reverse proxy server***. A Forward proxy is implemented on the client side and **sits in front of multiple clients** or client sources and forwards requests to the web server. Reverse proxy servers are implemented on the **server side** it **sits in front of multiple webservers** and manage the incoming requests by forwarding them to the web servers.
If all this was too much to take in, I have a simple analogy for you.

@ -7,3 +7,5 @@ HTML stands for HyperText Markup Language. It is used on the frontend and gives
<BadgeLink badgeText='Read' colorScheme='yellow' href='https://developer.mozilla.org/en-US/docs/Learn/HTML/Introduction_to_HTML/Getting_started'>MDN Docs: Getting Started with HTML </BadgeLink>
<BadgeLink badgeText='Watch' href='https://www.youtube.com/watch?v=pQN-pnXPaVg'>HTML Full Course - Build a Website Tutorial</BadgeLink>
<BadgeLink badgeText='Watch' href='https://www.youtube.com/watch?v=qz0aGYrrlhU'>HTML Tutorial for Beginners: HTML Crash Course</BadgeLink>
<BadgeLink badgeText='Read' colorScheme='yellow' href='https://htmlcheatsheet.com'>HTML Cheatsheet</BadgeLink>
<BadgeLink badgeText='Course' colorScheme='green' href='https://www.scaler.com/topics/html'>Scaler: HTML</BadgeLink>

@ -1,6 +1,6 @@
# Semantic HTML
Semantic element clearly describes its meaning to both the browser and the developer. In HTML,semantic element are the type of elements that can be used to define different parts of a web page such as `<form>`, `<table>`, `<article>`, `<header>`, `<footer>`, etc.
Semantic element clearly describes its meaning to both the browser and the developer. In HTML, semantic element are the type of elements that can be used to define different parts of a web page such as `<form>`, `<table>`, `<article>`, `<header>`, `<footer>`, etc.
<ResourceGroupTitle>Free Content</ResourceGroupTitle>
<BadgeLink badgeText='Read' colorScheme='yellow' href='https://developer.mozilla.org/en-US/docs/Glossary/Semantics'>Semantics - MDN Web Docs Glossary: Definitions of Web-related terms | MDN</BadgeLink>
@ -9,4 +9,4 @@ Semantic element clearly describes its meaning to both the browser and the devel
<BadgeLink badgeText='Read' colorScheme='yellow' href='https://www.freecodecamp.org/news/html-best-practices/'>HTML Best Practices – How to Build a Better HTML-Based Website</BadgeLink>
<BadgeLink badgeText='Read' colorScheme='yellow' href='https://blog.hubspot.com/website/semantic-html'>Semantic HTML: What It Is and How It Improves Your Site</BadgeLink>
<BadgeLink badgeText='Read' colorScheme='yellow' href='https://hackernoon.com/how-to-write-semantic-html-dkq3ulo'>How To Write Semantic HTML</BadgeLink>
<BadgeLink badgeText='Read' colorScheme='yellow' href='https://html.com/semantic-markup'>Semantic Markup</BadgeLink>

@ -1,10 +1,12 @@
# Accessibility
Web accessibility means that websites, tools, and technologies are designed and developed in such a way that people with disabilities can use them easily.
<ResourceGroupTitle>Free Content</ResourceGroupTitle>
<BadgeLink badgeText='Read' colorScheme='yellow' href='https://www.w3.org/WAI/tips/developing/'>Developing for Web Accessibility by W3C WAI
</BadgeLink>
<BadgeLink badgeText='Read' colorScheme='yellow' href='https://www.w3schools.com/accessibility/index.php'>Accessibility Tutorial
</BadgeLink>
<BadgeLink badgeText='Read' colorScheme='yellow' href='https://www.w3.org/WAI/tips/developing/'>Developing for Web Accessibility by W3C WAI</BadgeLink>
<BadgeLink badgeText='Read' colorScheme='yellow' href='https://www.w3schools.com/accessibility/index.php'>Accessibility Tutorial</BadgeLink>
<BadgeLink badgeText='Read' colorScheme='yellow' href='https://www.smashingmagazine.com/2021/03/complete-guide-accessible-front-end-components/'>A Complete Guide To Accessible Front-End Components</BadgeLink>
<BadgeLink badgeText='Watch' href='https://youtube.com/playlist?list=PLNYkxOF6rcICWx0C9LVWWVqvHlYJyqw7g'>Complete Playlist on Accessibility</BadgeLink>
<BadgeLink badgeText='Read' colorScheme='yellow' href='https://developer.mozilla.org/en-US/docs/Web/Accessibility'>MDN Accessibility</BadgeLink>
<BadgeLink badgeText='Read' colorScheme='yellow' href='https://web.dev/accessibility'>Accessibility for Developers by Google</BadgeLink>
<BadgeLink badgeText='Course' colorScheme='green' href='https://www.udacity.com/course/web-accessibility--ud891'>Web Accessibility by Udacity</BadgeLink>

@ -10,3 +10,4 @@ HTML stands for HyperText Markup Language. It is used on the frontend and gives
<BadgeLink badgeText='Course' colorScheme='green' href='https://github.com/denysdovhan/learnyouhtml'>Interactive HTML Course</BadgeLink>
<BadgeLink badgeText='Watch' href='https://www.youtube.com/watch?v=pQN-pnXPaVg'>HTML Full Course - Build a Website Tutorial</BadgeLink>
<BadgeLink badgeText='Watch' href='https://www.youtube.com/watch?v=qz0aGYrrlhU'>HTML Tutorial for Beginners: HTML Crash Course</BadgeLink>
<BadgeLink badgeText='Read' colorScheme='yellow' href='https://html.com'>HTML For Beginners The Easy Way</BadgeLink>

@ -12,3 +12,5 @@ Float, grid, flexbox, positioning, display and box model are some of the key top
<BadgeLink colorScheme='yellow' badgeText='Read' href='https://css-tricks.com/absolute-relative-fixed-positioining-how-do-they-differ/'>Positioning Types: How Do They Differ?</BadgeLink>
<BadgeLink colorScheme='yellow' badgeText='Read' href='https://developer.mozilla.org/en-US/docs/Learn/CSS/Building_blocks/The_box_model'>The Box Model</BadgeLink>
<BadgeLink colorScheme='yellow' badgeText='Read' href='https://www.freecodecamp.org/news/the-css-display-property-display-none-display-table-inline-block-and-more/'>The CSS Display Property</BadgeLink>
<BadgeLink colorScheme='yellow' badgeText='Read' href='https://css-tricks.com/snippets/css/a-guide-to-flexbox'>A Complete Guide to Flexbox</BadgeLink>
<BadgeLink colorScheme='yellow' badgeText='Read' href='https://css-tricks.com/snippets/css/complete-guide-grid'>A Complete Guide to Grid</BadgeLink>

@ -15,3 +15,5 @@ CSS or Cascading Style Sheets is the language used to style the frontend of any
<BadgeLink colorScheme='green' badgeText='Course' href='https://flexbox.io/'>What The Flexbox!</BadgeLink>
<BadgeLink colorScheme='green' badgeText='Course' href='https://www.codecademy.com/learn/learn-css'>Learn CSS | Codecademy</BadgeLink>
<BadgeLink colorScheme='green' badgeText='Course' href='https://www.codecademy.com/learn/learn-intermediate-css'>Learn Intermediate CSS | Codecademy</BadgeLink>
<BadgeLink colorScheme='yellow' badgeText='Read' href='https://100dayscss.com'>100 Days CSS Challenge</BadgeLink>
<BadgeLink colorScheme='yellow' badgeText='Read' href='https://www.scaler.com/topics/css'>CSS Tutorial | Scaler</BadgeLink>

@ -8,3 +8,4 @@ ECMAScript 2015 or ES2015 is a significant update to the JavaScript programming
<BadgeLink badgeText='Watch' href='https://www.youtube.com/watch?v=NCwa_xi0Uuc'>Learn Modern JavaScript in 1 Hour</BadgeLink>
<BadgeLink badgeText='Watch' href='https://www.youtube.com/watch?v=nZ1DMMsyVyI'>JavaScript ES6, ES7, ES8</BadgeLink>
<BadgeLink badgeText='Watch' href='https://www.youtube.com/watch?v=3PHXvlpOkf4'>Build 15 JavaScript Projects - Vanilla JavaScript</BadgeLink>
<BadgeLink badgeText='Read' colorScheme="yellow" href='https://codeloop.org/learn-modern-javascript-es6-es7-es8'>Modern JavaScript ES6, ES7 & ES8</BadgeLink>

@ -11,3 +11,4 @@ Learn and understand the concepts such as Hoisting, Event Bubbling, Scope, Proto
<BadgeLink badgeText='Read' colorScheme="yellow" href='https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Strict_mode'>JavaScript Strict Mode</BadgeLink>
<BadgeLink badgeText='Read' colorScheme="yellow" href='https://dev.to/lydiahallie/javascript-visualized-event-loop-3dif'>JavaScript Visualized (7 Part Series)</BadgeLink>
<BadgeLink badgeText='Watch' href='https://www.youtube.com/watch?v=7Tok22qxPzQ'>DOM vs Shadow DOM vs Virtual DOM</BadgeLink>
<BadgeLink badgeText='Read' colorScheme="yellow" href='https://blog.greenroots.info/series/javascript-promises'>Demystifying JavaScript Promises</BadgeLink>

@ -16,4 +16,6 @@ JavaScript allows you to add interactivity to your pages. Common examples that y
<BadgeLink badgeText='Read' colorScheme="yellow" href='https://github.com/getify/You-Dont-Know-JS'>You Don't Know JS Yet (book series) </BadgeLink>
<BadgeLink badgeText='Watch' href='https://youtu.be/hdI2bqOjy3c?t=2'>JavaScript Crash Course for Beginners</BadgeLink>
<BadgeLink badgeText='Watch' href='https://youtu.be/P7t13SGytRk?t=22'>Build a Netflix Landing Page Clone with HTML, CSS & JS</BadgeLink>
<BadgeLink badgeText='Watch' href='https://javascript30.com/'>Build 30 Javascript projects in 30 days</BadgeLink>
<BadgeLink badgeText='Course' colorScheme='green' href='https://github.com/workshopper/javascripting'>Learn the basics of JavaScript</BadgeLink>
<BadgeLink badgeText='Course' colorScheme="green" href='https://www.scaler.com/topics/course/javascript-beginners'>JavaScript for Beginners </BadgeLink>

@ -3,6 +3,7 @@
[Git](https://git-scm.com/) is a free and open source distributed version control system designed to handle everything from small to very large projects with speed and efficiency.
<ResourceGroupTitle>Free Content</ResourceGroupTitle>
<BadgeLink badgeText='Read' colorScheme='yellow' href='https://marklodato.github.io/visual-git-guide/index-en.html'>Visual Git Guide</BadgeLink>
<BadgeLink badgeText='Watch' href='https://www.youtube.com/watch?v=zbKdDsNNOhg'>Version Control System Introduction</BadgeLink>
<BadgeLink badgeText='Watch' href='https://www.youtube.com/watch?v=SWYqp7iY_Tc'>Git & GitHub Crash Course For Beginners</BadgeLink>
<BadgeLink badgeText='Watch' href='https://youtu.be/Y9XZQO1n_7c?t=21'>Learn Git in 20 Minutes</BadgeLink>

@ -6,3 +6,5 @@ Version control systems allow you to track changes to your codebase/files over t
<BadgeLink badgeText='Watch' href='https://www.youtube.com/watch?v=zbKdDsNNOhg'>Version Control System Introduction</BadgeLink>
<BadgeLink badgeText='Watch' href='https://www.youtube.com/watch?v=SWYqp7iY_Tc'>Git & GitHub Crash Course For Beginners</BadgeLink>
<BadgeLink badgeText='Watch' href='https://youtu.be/Y9XZQO1n_7c?t=21'>Learn Git in 20 Minutes</BadgeLink>
<BadgeLink colorScheme='blue' badgeText='Official Website' href='https://git-scm.com/docs'>Git Documentation</BadgeLink>
<BadgeLink colorScheme='yellow' badgeText='Read' href='https://www.atlassian.com/git'>Learn Git by Atlassian</BadgeLink>

@ -6,3 +6,4 @@ Webpack is a module bundler. Its main purpose is to bundle JavaScript files for
<BadgeLink colorScheme='blue' badgeText='Official Website' href='https://webpack.js.org/'>Webpack Official Website</BadgeLink>
<BadgeLink colorScheme='blue' badgeText='Official Documentation' href='https://webpack.js.org/concepts/'>Webpack Documentation</BadgeLink>
<BadgeLink colorScheme='blue' badgeText='Official Documentation' href='https://www.valentinog.com/blog/webpack'>A Complete Guide to Webpack 5</BadgeLink>

@ -7,4 +7,5 @@ HTTP is the `TCP/IP` based application layer communication protocol which standa
<BadgeLink colorScheme='yellow' badgeText='Read' href='https://developer.mozilla.org/en-US/docs/Web/HTTP/Overview'>An overview of HTTP</BadgeLink>
<BadgeLink colorScheme='yellow' badgeText='Read' href='https://kamranahmed.info/blog/2016/08/13/http-in-depth'>Journey to HTTP/2</BadgeLink>
<BadgeLink colorScheme='yellow' badgeText='Read' href='https://www.smashingmagazine.com/2021/08/http3-core-concepts-part1/'>HTTP/3 From A To Z: Core Concepts</BadgeLink>
<BadgeLink badgeText='Watch' href='https://www.youtube.com/watch?v=a-sBfyiXysI'>HTTP/1 to HTTP/2 to HTTP/3</BadgeLink>
<BadgeLink badgeText='Watch' href='https://www.youtube.com/watch?v=iYM2zFP3Zn0'>HTTP Crash Course & Exploration</BadgeLink>

@ -6,3 +6,4 @@ As a backend developer, you may not need to have proficient knowledge of the fro
<BadgeLink badgeText='Read' colorScheme='yellow' href='https://www.w3schools.com/html/html_intro.asp'>W3Schools: Learn HTML</BadgeLink>
<BadgeLink colorScheme='yellow' badgeText='Read' href='https://www.w3schools.com/css/'>W3Schools: Learn CSS</BadgeLink>
<BadgeLink badgeText='Read' colorScheme="yellow" href='https://www.w3schools.com/js/'>W3Schools: JavaScript Tutorial</BadgeLink>
<BadgeLink badgeText='Read' colorScheme="yellow" href='https://thenewstack.io/category/frontend-dev/'>Articles about Frontend Development</BadgeLink>

@ -16,3 +16,5 @@ Go is an open source programming language supported by Google. Go can be used to
<BadgeLink colorScheme='green' badgeText='Course' href='https://boot.dev/learn/learn-golang'>Learn Go | Boot.dev </BadgeLink>
<BadgeLink colorScheme='green' badgeText='Course' href='https://www.codecademy.com/learn/learn-go'>Learn Go | Codecademy</BadgeLink>
<BadgeLink colorScheme='green' badgeText='Course' href='https://www.w3schools.com/go/'>W3Schools Go Tutorial </BadgeLink>
<BadgeLink badgeText='Read' colorScheme="yellow" href='https://thenewstack.io/make-a-restful-json-api-go/'>Making a RESTful JSON API in Go</BadgeLink>
<BadgeLink badgeText='Read' colorScheme="yellow" href='https://thenewstack.io/go-the-programming-language-of-the-cloud/'>Go, the Programming Language of the Cloud</BadgeLink>

@ -5,3 +5,5 @@ Rust is a modern systems programming language focusing on safety, speed, and con
<ResourceGroupTitle>Free Content</ResourceGroupTitle>
<BadgeLink badgeText='Read' colorScheme="yellow" href='https://doc.rust-lang.org/book/'>The Rust Programming Language - online book</BadgeLink>
<BadgeLink badgeText='Read' colorScheme="yellow" href='https://doc.rust-lang.org/stable/rust-by-example/index.html'>Rust by Example - collection of runnable examples</BadgeLink>
<BadgeLink badgeText='Read' colorScheme="yellow" href='https://thenewstack.io/rust-vs-go-why-theyre-better-together/'>Rust vs. Go: Why They’re Better Together</BadgeLink>
<BadgeLink badgeText='Read' colorScheme="yellow" href='https://thenewstack.io/rust-by-the-numbers-the-rust-programming-language-in-2021/'>Rust by the Numbers: The Rust Programming Language in 2021</BadgeLink>

@ -6,5 +6,6 @@ PHP is a general purpose scripting language often used for making dynamic and in
<BadgeLink colorScheme='blue' badgeText='Official Website' href='https://php.org/'>PHP Website</BadgeLink>
<BadgeLink colorScheme='yellow' badgeText='Read' href='https://www.w3schools.com/php/'>Learn PHP - W3Schools</BadgeLink>
<BadgeLink colorScheme='yellow' badgeText='Read' href='https://phptherightway.com/'>PHP - The Right Way</BadgeLink>
<BadgeLink badgeText='Watch' href='https://www.youtube.com/watch?v=U2lQWR6uIuo&list=PL3VM-unCzF8ipG50KDjnzhugceoSG3RTC'>PHP for Beginners</BadgeLink>
<BadgeLink badgeText='Watch' href='https://www.youtube.com/watch?v=2eebptXfEvw'>PHP For Absolute Beginners</BadgeLink>
<BadgeLink badgeText='Watch' href='https://www.youtube.com/watch?v=sVbEyFZKgqk&list=PLr3d3QYzkw2xabQRUpcZ_IBk9W50M9pe-'>Full PHP 8 Tutorial - Learn PHP The Right Way In 2022</BadgeLink>

@ -17,3 +17,5 @@ Python is a well known programming language which is both a strongly typed and a
<BadgeLink badgeText='Course' colorScheme='green' href='https://www.w3schools.com/python/'>W3Schools - Python Tutorial </BadgeLink>
<BadgeLink badgeText='Course' colorScheme='green' href='https://ehmatthes.github.io/pcc/'>Python Crash Course</BadgeLink>
<BadgeLink badgeText='Course' colorScheme='green' href='https://www.codecademy.com/learn/learn-python'>Codecademy - Learn Python 2</BadgeLink>
<BadgeLink colorScheme='yellow' badgeText='Read' href='https://thenewstack.io/an-introduction-to-python-for-non-programmers/'>An Introduction to Python for Non-Programmers</BadgeLink>
<BadgeLink colorScheme='yellow' badgeText='Read' href='https://thenewstack.io/getting-started-with-python-and-influxdb/'>Getting Started with Python and InfluxDB</BadgeLink>

@ -6,3 +6,4 @@ Ruby is a high-level, interpreted programming language that blends Perl, Smallta
<BadgeLink colorScheme='blue' badgeText='Official Website' href='https://www.ruby-lang.org/en/'>Ruby Website</BadgeLink>
<BadgeLink badgeText='Course' colorScheme='green' href='https://www.ruby-lang.org/en/documentation/quickstart/'>Learn Ruby in 20 minutes</BadgeLink>
<BadgeLink badgeText='Course' colorScheme='green' href='https://www.codecademy.com/learn/learn-ruby'>Learn Ruby | Codecademy</BadgeLink>
<BadgeLink badgeText='Read' colorScheme='yellow' href='https://thenewstack.io/ruby-a-programmers-best-friend/'>Ruby, An Introduction to a Programmer’s Best Friend</BadgeLink>

@ -1 +1,3 @@
# Realtime databases
A real-time database is broadly defined as a data store designed to collect, process, and/or enrich an incoming series of data points (i.e., a data stream) in real time, typically immediately after the data is created.

@ -4,4 +4,5 @@ Integration testing is a broad category of tests where multiple software modules
<ResourceGroupTitle>Free Content</ResourceGroupTitle>
<BadgeLink colorScheme='yellow' badgeText='Read' href='https://www.guru99.com/integration-testing.html'>Integration Testing</BadgeLink>
<BadgeLink colorScheme='yellow' badgeText='Read' href='https://thenewstack.io/how-to-integrate-and-test-your-tech-stack/'>How to Integrate and Test Your Tech Stack</BadgeLink>
<BadgeLink badgeText='Watch' href='https://youtu.be/QYCaaNz8emY'>What is Integration Testing?</BadgeLink>

@ -6,3 +6,6 @@ CI/CD (Continuous Integration/Continuous Deployment) is the practice of automati
<BadgeLink badgeText='Watch' href='https://www.youtube.com/watch?v=scEDHsr3APg'>DevOps CI/CD Explained in 100 Seconds by Fireship</BadgeLink>
<BadgeLink badgeText='Watch' href='https://www.youtube.com/watch?v=nyKZTKQS_EQ'>Automate your Workflows with GitHub Actions</BadgeLink>
<BadgeLink colorScheme='yellow' badgeText='Read' href='https://about.gitlab.com/topics/ci-cd/'>What is CI/CD?</BadgeLink>
<BadgeLink colorScheme='yellow' badgeText='Read' href='https://thenewstack.io/a-primer-continuous-integration-and-continuous-delivery-ci-cd/'>A Primer: Continuous Integration and Continuous Delivery (CI/CD)</BadgeLink>
<BadgeLink colorScheme='yellow' badgeText='Read' href='https://thenewstack.io/3-ways-to-use-automation-in-ci-cd-pipelines/'>3 Ways to Use Automation in CI/CD Pipelines</BadgeLink>
<BadgeLink colorScheme='yellow' badgeText='Read' href='https://thenewstack.io/category/ci-cd/'>Articles about CI/CD</BadgeLink>

@ -5,3 +5,6 @@ Microservice architecture is a pattern in which highly cohesive, loosely coupled
<ResourceGroupTitle>Free Content</ResourceGroupTitle>
<BadgeLink colorScheme='yellow' badgeText='Read' href='https://microservices.io/patterns/microservices.html'>Pattern: Microservice Architecture</BadgeLink>
<BadgeLink colorScheme='yellow' badgeText='Read' href='https://smartbear.com/solutions/microservices/'>What is Microservices?</BadgeLink>
<BadgeLink colorScheme='yellow' badgeText='Read' href='https://thenewstack.io/microservices-101/'>Microservices 101</BadgeLink>
<BadgeLink colorScheme='yellow' badgeText='Read' href='https://thenewstack.io/primer-microservices-explained/'>Primer: Microservices Explained</BadgeLink>
<BadgeLink colorScheme='yellow' badgeText='Read' href='https://thenewstack.io/category/microservices/'>Articles about Microservices</BadgeLink>

@ -1 +1,6 @@
# Architectural patterns
# Architectural Patterns
An architectural pattern is a general, reusable solution to a commonly occurring problem in software architecture within a given context.The architectural patterns address various issues in software engineering, such as computer hardware performance limitations, high availability and minimization of a business risk.
<ResourceGroupTitle>Reference Resource</ResourceGroupTitle>
<BadgeLink colorScheme='yellow' badgeText='Read' href='https://towardsdatascience.com/10-common-software-architectural-patterns-in-a-nutshell-a0b47a1e9013'>Architectural Patterns in a nutshell</BadgeLink>

@ -6,4 +6,5 @@ Begin by studying the [OSI Model](https://en.wikipedia.org/wiki/OSI_model). This
<ResourceGroupTitle>Free Content</ResourceGroupTitle>
<BadgeLink colorScheme='yellow' badgeText='Read' href='https://aws.amazon.com/what-is/computer-networking/'>What is Computer Networking?</BadgeLink>
<BadgeLink badgeText='Watch' href='https://youtu.be/IPvYjXCsTg8'>Full Networking Course</BadgeLink>
<BadgeLink badgeText='Watch' href='https://www.youtube.com/watch?v=dV8mjZd1OtU'>OSI Model Explained</BadgeLink>

@ -14,4 +14,5 @@ With a CLI shell like Bash, you type commands into the program to directly contr
<BadgeLink colorScheme='yellow' badgeText='Read' href='https://www.freecodecamp.org/news/shell-scripting-crash-course-how-to-write-bash-scripts-in-linux/'>Shell Scripting for Beginners</BadgeLink>
<BadgeLink colorScheme='yellow' badgeText='Read' href='https://www.gnu.org/savannah-checkouts/gnu/bash/manual/bash.html'>A guide to Bash</BadgeLink>
<BadgeLink colorScheme='yellow' badgeText='Read' href='https://wiki.bash-hackers.org/'>The Bash Hackers Wiki</BadgeLink>
<BadgeLink colorScheme='yellow' badgeText='Read' href='https://rudrakshi.hashnode.dev/bash-shell-scripting-guide'>Bash Shell Scripting Guide</BadgeLink>
<BadgeLink badgeText='Course' colorScheme='green' href='https://www.codecademy.com/learn/bash-scripting'>Codecademy - Learn Bash Scripting</BadgeLink>

@ -1 +1,6 @@
# Emails
Electronic mail, commonly shortened to “email,” is a communication method that uses electronic devices to deliver messages across computer networks. "Email" refers to both the delivery system and individual messages that are sent and received.
<ResourceGroupTitle>Reference Resource</ResourceGroupTitle>
<BadgeLink colorScheme='yellow' badgeText='Read' href='https://www.cloudflare.com/learning/email-security/what-is-email/'>What is an email?</BadgeLink>

@ -5,3 +5,7 @@ Firewall is a **network security device** that monitors and filters incoming and
<ResourceGroupTitle>Free Content</ResourceGroupTitle>
<BadgeLink colorScheme='yellow' badgeText='Read' href='https://www.checkpoint.com/cyber-hub/network-security/what-is-firewall/'>What is Firewall?</BadgeLink>
<BadgeLink colorScheme='yellow' badgeText='Read' href='https://www.cisco.com/c/en_in/products/security/firewalls/what-is-a-firewall.html'>Types of Firewall</BadgeLink>
<BadgeLink colorScheme='yellow' badgeText='Read' href='https://www.geeksforgeeks.org/introduction-of-firewall-in-computer-network/'> Introduction of Firewall in Computer Network</BadgeLink>
<BadgeLink colorScheme='yellow' badgeText='Read' href='https://www.geeksforgeeks.org/introduction-of-firewall-in-computer-network/'> What is Firewall in Computer Network?</BadgeLink>
<BadgeLink colorScheme='yellow' badgeText='Read' href='https://www.tutorialspoint.com/what-is-a-firewall-and-why-do-you-need-one'>Why do we need Firewalls?</BadgeLink>
<BadgeLink colorScheme='blue' badgeText='Watch' href='https://www.youtube.com/watch?v=9GZlVOafYTg'> Firewalls and Network Security - SimpliLearn</BadgeLink>

@ -8,3 +8,4 @@ The term Infrastructure as Code encompasses everything from bootstrapping to con
<BadgeLink badgeText='Watch' href='https://www.youtube.com/watch?v=zWw2wuiKd5o'>What is Infrastructure as Code?</BadgeLink>
<BadgeLink badgeText='Watch' href='https://www.youtube.com/watch?v=POPP2WTJ8es'>What is Infrastructure as Code? Difference of Infrastructure as Code Tools</BadgeLink>
<BadgeLink colorScheme='yellow' badgeText='Read' href='https://thenewstack.io/guis-cli-apis-learn-basic-terms-of-infrastructure-as-code/'>GUIs, CLI, APIs: Learn Basic Terms of Infrastructure-as-Code</BadgeLink>
<BadgeLink colorScheme='yellow' badgeText='Read' href='https://www.novatec-gmbh.de/en/blog/understanding-infrastructure-as-code-iac-in-less-than-10-minutes/'>Understanding Infrastructure as Code (IaC) in less than 10 minutes</BadgeLink>

@ -5,3 +5,4 @@ JSX stands for JavaScript XML. It allows writing HTML in JavaScript and converts
<ResourceGroupTitle>Free Content</ResourceGroupTitle>
<BadgeLink colorScheme='blue' badgeText='Official Introduction' href='https://reactjs.org/docs/introducing-jsx.html'>Introduction to JSX</BadgeLink>
<BadgeLink colorScheme='yellow' badgeText='Read' href='https://www.freecodecamp.org/news/jsx-in-react-introduction/'>JSX in React – Explained with Examples</BadgeLink>
<BadgeLink colorScheme='yellow' badgeText='Read' href='https://www.w3schools.com/react/react_jsx.asp'>JSX in React on w3school</BadgeLink>

@ -1,6 +1,7 @@
# Hooks
Hooks were introduced in React 16.8 and they let us use state and other React features without writing a class
Hooks were introduced in React 16.8 and they let us use React's features-like managing your component's state and or performing an after effect when certain changes occur in state(s) without writing a class.
<ResourceGroupTitle>Free Content</ResourceGroupTitle>
<BadgeLink colorScheme='blue' badgeText='Official Docs' href='https://reactjs.org/docs/hooks-intro.html'>Introduction to Hooks</BadgeLink>

@ -6,4 +6,5 @@ Axios is a client HTTP API based on the XMLHttpRequest interface provided by bro
<ResourceGroupTitle>Free Content</ResourceGroupTitle>
<BadgeLink colorScheme='blue' badgeText='Official Docs' href='https://axios-http.com/docs/intro'>Axios Getting Started</BadgeLink>
<BadgeLink colorScheme='yellow' badgeText='Read' href='https://www.freecodecamp.org/news/how-to-use-axios-with-react/'>How To Use Axios With React: The Definitive Guide</BadgeLink>
<BadgeLink colorScheme='yellow' badgeText='Read' href='https://blog.logrocket.com/how-to-make-http-requests-like-a-pro-with-axios/#why'>How to make HTTP requests with Axios</BadgeLink>

@ -1,5 +1,6 @@
# API Calls
APIs, short for Application Programming Interfaces, are software-to-software interfaces. Meaning, they allow different applications to talk to each other and exchange information or functionality. This allows businesses to access another business’s data, piece of code, software, or services in order to extend the functionality of their own products — all while saving time and money.
There are several options available to make API calls from your React.js applications.
<ResourceGroupTitle>Free Content</ResourceGroupTitle>

@ -5,3 +5,4 @@ Works on React, Vue, Svelte and more projects created with Vite
<ResourceGroupTitle>Free Content</ResourceGroupTitle>
<BadgeLink colorScheme='blue' badgeText='Official Website' href='https://vitest.dev/'>Vitest Website</BadgeLink>
<BadgeLink colorScheme='green' badgeText='Course' href='https://www.youtube.com/watch?v=cM_AeQHzlGg'>Testing with Vitest</BadgeLink>

@ -3,7 +3,10 @@
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).
<ResourceGroupTitle>Free Content</ResourceGroupTitle>
<BadgeLink colorScheme='yellow' badgeText='Read' href='https://redux.js.org/'>Official Website</BadgeLink>
<BadgeLink colorScheme='yellow' badgeText='Read' href='https://redux.js.org/introduction/getting-started'>Official Getting Started to Redux</BadgeLink>
<BadgeLink colorScheme='blue' badgeText='Official Website' href='https://redux-toolkit.js.org'>Redux Toolkit Official Website</BadgeLink>
<BadgeLink colorScheme='green' badgeText='Course' href='https://redux.js.org/tutorials/essentials/part-1-overview-concepts'>Official Tutorial to Learn Redux</BadgeLink>
<BadgeLink colorScheme='green' badgeText='Course' href='https://egghead.io/courses/fundamentals-of-redux-course-from-dan-abramov-bd5cc867'>Fundamentals of Redux Course from Dan Abramov</BadgeLink>
<BadgeLink colorScheme='green' badgeText='Course' href='https://youtube.com/watch?v=zrs7u6bdbUw'>Redux Tutorial - Beginner to Advanced</BadgeLink>

@ -4,3 +4,6 @@ Services let you define code or functionalities that are then accessible and reu
<ResourceGroupTitle>Free Content</ResourceGroupTitle>
<BadgeLink colorScheme='blue' badgeText='Official Website' href='https://angular.io/tutorial/toh-pt4'>Services</BadgeLink>
<BadgeLink colorScheme='yellow' badgeText='Read' href='https://www.javatpoint.com/what-is-an-angular-service'>What is an Angular Service</BadgeLink>
<BadgeLink colorScheme='yellow' badgeText='Read' href='https://www.knowledgehut.com/blog/web-development/make-api-calls-angular'>Service for API Calls</BadgeLink>
<BadgeLink colorScheme='yellow' badgeText='Read' href='https://www.positronx.io/angular-service-tutorial-with-example/'>Service Tutorial with Example</BadgeLink>

@ -4,3 +4,4 @@ Plugins are self-contained code that usually add app-level functionality to Vue.
<ResourceGroupTitle>Free Content</ResourceGroupTitle>
<BadgeLink colorScheme='blue' badgeText='Official Docs' href='https://vuejs.org/guide/reusability/plugins.html'>Plugins in Vue.js</BadgeLink>
<BadgeLink colorScheme='yellow' badgeText='Read' href='https://www.linode.com/docs/guides/how-to-write-vue-js-plugins/'>How to Write Your Own Vue.js Plugin</BadgeLink>

@ -1,6 +1,15 @@
# Scopes
Before ES6 (2015), JavaScript had only Global Scope and Function Scope. ES6 introduced two important new JavaScript keywords: `let` and `const`. These two keywords provide Block Scope in JavaScript.
In JavaScript, scope refers to the visibility of a variable or how it can be used after it is declared. The scope of a variable depends on the keyword that was used to declare it.
The three types of Scope are Global Scope, Function Scope, and Block Scope. Before ES6 (2015), JavaScript had only Global Scope and Function Scope with the `var` keyword. ES6 introduced `let` and `const` which allow Block Scope in JavaScript.
Global Scope: Variables declared outside any function or curly braces '{}' have Global Scope, and can be accessed from anywhere within the same Javascript code. `var`, `let` and `const` all provide this Scope.
Function Scope: Variables declared within a function can only be used within that same function. Outside that function, they are undefined. `var`, `let` and `const` all provide this Scope.
Block Scope: A block is any part of JavaScript code bounded by '{}'. Variables declared within a block can not be accessed outside that block. This Scope is only provided by the `let` and `const` keywords. If you declare a variable within a block using the `var` keyword, it will NOT have Block Scope.
<ResourceGroupTitle>Free Content</ResourceGroupTitle>
<BadgeLink colorScheme='yellow' badgeText='Read' href='https://www.w3schools.com/js/js_scope.asp'>JavaScript Scope</BadgeLink>

@ -1 +1,5 @@
# Equality algorithms
Equality algorithms are used to perform equality comparisons of values or variables in JavaScript. Each equality algorithm works slightly differently, and the one you use depends on the type of comparison you want to make.
<BadgeLink colorScheme='yellow' badgeText='Read' href='https://developer.mozilla.org/en-US/docs/Web/JavaScript/Equality_comparisons_and_sameness'>Which JavaScript equality algorithm should you use?</BadgeLink>

@ -1,6 +1,6 @@
# Functions
Functions are blocks of code that execute whenever they are invoked. They are useful for placing code snippets executed in different places in the code.
Functions exist so we can reuse code. They are blocks of code that execute whenever they are invoked. Each function is typically written to perform a particular task, like an addition function used to find the sum of two or more numbers. When numbers need to be added anywhere within your code, the addition function can be invoked as many times as necessary.
<ResourceGroupTitle>Free Content</ResourceGroupTitle>
<BadgeLink colorScheme="yellow" badgeText="Read" href="https://developer.mozilla.org/en-US/docs/Web/JavaScript/Guide/Functions">Functions - MDN Docs</BadgeLink>

@ -2,6 +2,6 @@
The Event Loop is one of the most important aspects to understand about Node.js. Why is this so important? Because it explains how Node.js can be asynchronous and have non-blocking I/O, it explains the "killer feature" of Node.js, which made it this successful.
<BadgeLink colorScheme="yellow" badgeText="Read" href="https://nodejs.dev/en/learn/the-nodejs-event-loop/">The Node.Js Event Loop</BadgeLink>
<BadgeLink colorScheme="yellow" badgeText="Read" href="https://nodejs.org/en/docs/guides/event-loop-timers-and-nexttick/#what-is-the-event-loop">The Node.Js Event Loop</BadgeLink>
<BadgeLink colorScheme="yellow" badgeText="Read" href="https://dev.to/lydiahallie/javascript-visualized-event-loop-3dif">JavaScript Visualized: Event Loop</BadgeLink>
<BadgeLink badgeText='Watch' href='https://www.youtube.com/watch?v=8aGhZQkoFbQ'>What the heck is the event loop anyway?</BadgeLink>

@ -5,4 +5,4 @@ NestJS is a progressive Node.js framework for creating efficient and scalable se
<ResourceGroupTitle>Free Content</ResourceGroupTitle>
<BadgeLink colorScheme='blue' badgeText='Official Website' href='https://nestjs.com'>NestJS Website</BadgeLink>
<BadgeLink colorScheme='blue' badgeText='Official Documentation' href='https://docs.nestjs.com'>NestJS Official Documentations</BadgeLink>
<BadgeLink badgeText='Watch' href='https://www.youtube.com/watch?v=i793Qm6kv3U'>Beginner NestJS Tutorial</BadgeLink>
<BadgeLink badgeText='Watch' href='https://www.youtube.com/watch?v=GHTA143_b-s'>Beginner NestJS Tutorial</BadgeLink>

@ -4,3 +4,5 @@ Mongoose is an Object Data Modeling (ODM) library for MongoDB and Node.js. Mongo
<ResourceGroupTitle>Free Content</ResourceGroupTitle>
<BadgeLink colorScheme='blue' badgeText='Official Website' href='https://mongoosejs.com'>Mongoose Website</BadgeLink>
<BadgeLink colorScheme='yellow' badgeText='Read' href='https://www.freecodecamp.org/news/introduction-to-mongoose-for-mongodb-d2a7aa593c57'>Introduction to Mongoose for MongoDB</BadgeLink>
<BadgeLink colorScheme='yellow' badgeText='Read' href='https://www.mongodb.com/developer/languages/javascript/getting-started-with-mongodb-and-mongoose/'>Getting Started with MongoDB and Mongoose</BadgeLink>

@ -5,4 +5,5 @@ In Python, object-oriented Programming (OOPs) is a programming paradigm that use
<ResourceGroupTitle>Free Content</ResourceGroupTitle>
<BadgeLink colorScheme='yellow' badgeText='Read' href='https://realpython.com/python3-object-oriented-programming/'>Object Oriented Programming in Python</BadgeLink>
<BadgeLink colorScheme='yellow' badgeText='Read' href='https://www.geeksforgeeks.org/python-oops-concepts/'>Python OOP Concepts</BadgeLink>
<BadgeLink colorScheme='red' badgeText='Watch' href='https://www.youtube.com/watch?v=-pEs-Bss8Wc/'>Object Oriented Programming (OOP) In Python - Beginner Crash Course</BadgeLink>
<BadgeLink colorScheme='red' badgeText='Watch' href='https://www.youtube.com/watch?v=Ej_02ICOIgs'>OOP in Python One Shot</BadgeLink>

@ -5,3 +5,4 @@ decorator is a design pattern in Python that allows a user to add new functional
<ResourceGroupTitle>Free Content</ResourceGroupTitle>
<BadgeLink colorScheme='yellow' badgeText='Read' href='https://www.datacamp.com/tutorial/decorators-python'>Python Decorators</BadgeLink>
<BadgeLink colorScheme='yellow' badgeText='Read' href='https://www.geeksforgeeks.org/decorators-in-python/'>Decorators in Python</BadgeLink>
<BadgeLink colorScheme='red' badgeText='Watch' href='https://www.youtube.com/watch?v=FXUUSfJO_J4'>Decorators in Python</BadgeLink>

@ -6,4 +6,5 @@ Spring is a powerful open-source Java platform (framework), that is used to crea
<BadgeLink colorScheme='blue' badgeText='Official Site' href='https://spring.io/'>Official Site</BadgeLink>
<BadgeLink colorScheme='blue' badgeText='Official Site' href='https://spring.io/quickstart'>Quickstart guide</BadgeLink>
<BadgeLink colorScheme='blue' badgeText='Official Site' href='https://spring.io/guides'>Official guides</BadgeLink>
<BadgeLink colorScheme='blue' badgeText='Official Site' href='https://docs.spring.io/spring-framework/docs/current/reference/html/'>Spring Framework Documentation</BadgeLink>
<BadgeLink colorScheme='yellow' badgeText='Read' href='https://www.baeldung.com/spring-boot'>Different Spring tutorials</BadgeLink>

@ -2,10 +2,7 @@
Spark is a micro framework for creating web applications in Kotlin and Java 8. Sinatra, a popular Ruby micro framework, was the inspiration for it.
<ResourceGroupTitle>Reference Resource</ResourceGroupTitle>
<BadgeLink colorScheme='blue' badgeText='Official Website' href='https://www.playframework.com/'>Play Framework Website</BadgeLink>
<BadgeLink colorScheme='yellow' badgeText='Read' href='https://www.baeldung.com/spark-framework-rest-api'>Intro to Spark framework</BadgeLink>
<ResourceGroupTitle>Free Content</ResourceGroupTitle>
<BadgeLink colorScheme='blue' badgeText='Official Site' href='https://sparkjava.com/'>Spark Java</BadgeLink>
<BadgeLink colorScheme='yellow' badgeText='Read' href='https://www.baeldung.com/spark-framework-rest-api'>Intro to Spark Java Framework</BadgeLink>
<BadgeLink colorScheme='yellow' badgeText='Read' href='https://www.javatpoint.com/spark-java'>What is Spark java?</BadgeLink>
<BadgeLink colorScheme='yellow' badgeText='Read' href='https://aws.amazon.com/big-data/what-is-spark/'>What is Apache spark?</BadgeLink>
<BadgeLink badgeText='Watch' href='https://youtu.be/znBa13Earms'>Apache Spark Tutorial</BadgeLink>
<BadgeLink badgeText='Watch' href='https://youtu.be/F8pyaR4uQ2g'>Apache Spark Full Course</BadgeLink>

@ -1,6 +1,6 @@
# Hibernate
Hibernate is an open source object-relational mapping ([ORM](https://theserverside.techtarget.com/definition/object-relational-mapping)) tool that provides a framework to map object-oriented domain models to relational databases for web applications.
Hibernate is an open source object-relational mapping tool that provides a framework to map object-oriented domain models to relational databases for web applications.
<ResourceGroupTitle>Free Content</ResourceGroupTitle>
<BadgeLink colorScheme='blue' badgeText='Official Site' href='https://hibernate.org/'>Hibernate</BadgeLink>

@ -3,7 +3,8 @@
JUnit is a testing framework for Java.
<ResourceGroupTitle>Free Content</ResourceGroupTitle>
<BadgeLink colorScheme='blue' badgeText='Official Site' href='https://junit.org/junit5/docs/current/user-guide/'>Official Documentation</BadgeLink>
<BadgeLink colorScheme='blue' badgeText='Official Site' href='https://junit.org/junit5'>JUnit</BadgeLink>
<BadgeLink colorScheme='blue' badgeText='Official Documentation' href='https://junit.org/junit5/docs/current/user-guide/'>JUnit Documentation</BadgeLink>
<BadgeLink colorScheme='yellow' badgeText='Read' href='https://www.guru99.com/junit-tutorial.html'>JUnit tutorial</BadgeLink>
<BadgeLink colorScheme='yellow' badgeText='Read' href='https://www.baeldung.com/junit-5'>Basic JUnit tutorial</BadgeLink>
<BadgeLink badgeText='Watch' href='https://www.youtube.com/watch?v=flpmSXVTqBI'>Testing with JUnit crash course</BadgeLink>

@ -1,6 +1,6 @@
# Exploratory testing
Exploratory testing is evaluating a product by learning about it through exploration and experimentation, including to some degree: questioning, study, modeling, observation, inference, etc.)
Exploratory testing is evaluating a product by learning about it through exploration and experimentation, including to some degree: questioning, study, modeling, observation, inference, etc.
<ResourceGroupTitle>Free Content</ResourceGroupTitle>
<BadgeLink colorScheme='yellow' badgeText='Read' href='https://www.satisfice.com/exploratory-testing'>Exploratory Testing</BadgeLink>

@ -4,4 +4,4 @@ Load Testing is a type of Performance Testing that determines the performance of
<ResourceGroupTitle>Free Content</ResourceGroupTitle>
<BadgeLink colorScheme='yellow' badgeText='Read' href='https://www.geeksforgeeks.org/software-testing-load-testing/'>Software Testing: Load Testing</BadgeLink>
<BadgeLink colorScheme='yellow' badgeText='Read' href='https://loadninja.com/load-testing/'>Load testing and Best Practises</BadgeLink>
<BadgeLink colorScheme='yellow' badgeText='Read' href='https://loadninja.com/load-testing/'>Load testing and Best Practices</BadgeLink>

@ -7,3 +7,4 @@ The Agile software development methodology is one of the simplest and most effec
<ResourceGroupTitle>Free Content</ResourceGroupTitle>
<BadgeLink colorScheme='yellow' badgeText='Read' href='https://www.guru99.com/agile-scrum-extreme-testing.html'>Agile Methodology: What is Agile Model in Software Testing?</BadgeLink>
<BadgeLink colorScheme='yellow' badgeText='Read' href='https://www.javatpoint.com/software-engineering-agile-model'>Agile Model</BadgeLink>
<BadgeLink colorScheme='yellow' badgeText='Read' href='https://agilemanifesto.org/'>Manifesto for Agile Software Development</BadgeLink>

@ -1 +1,18 @@
# Responsive vs adaptive
There are two approaches to ensuring a website is optimized for mobile, tablet, laptop and PC screens: responsive design and adaptive design. While both are intended to solve the same problem, they use different strategies.
# What is responsive design?
A website created with responsive design serves up the same site to every device, but that site is fluid and will change its layout and appearance based on the size and orientation of the device.
Developers use CSS to ensure each page of the site can reformat based on the size of the user's viewport and only need to create one codebase for the site. They use something called breakpoints to tell the site when to adjust to accommodate different screen sizes.
The majority of new sites now use responsive, which has been made easier for less experienced designers and developers, thanks to the availability of themes accessible through CMS systems such as WordPress, Joomla, and Drupal.
Responsive design does not offer as much control as adaptive, but takes much less work to both build and maintain. Responsive layouts are also fluid, and whilst adaptive can and do use percentages to give a more fluid feel when scaling, these can again cause a jump when a window is resized.
# What is adaptive design?
In adaptive design, a different website layout is created for each device's screen. As it loads, the site recognizes the size of the screen and serves up the layout that was made for that viewport. In fact, you can create a different user experience for each of six common screen sizes from very small to very large: 320px, 480px, 760px, 960px, 1200px and 1600px.
Adaptive is useful for retrofitting an existing site in order to make it more suitable for mobile phones. This allows you to take control of the design and web development for specific, multiple viewports. The number of viewports that you choose to design for is entirely up to you, your company, and your overall budget. It does, however, afford you a certain amount of control (for example over content and layout) that you will not necessarily have using responsive design.

@ -1 +1,7 @@
# Ghost inspector
# Ghost Inspector
Ghost Inspector is a codeless automated testing tool that allows you to easily create and run automated browser tests for websites and web applications. These tests carry out actions in a web browser the same way a real user would to ensure that everything is working properly.
<ResourceGroupTitle>Free Content</ResourceGroupTitle>
<BadgeLink colorScheme='blue' badgeText='Official Website' href='https://ghostinspector.com/'>Ghost Inspector Website</BadgeLink>
<BadgeLink colorScheme='yellow' badgeText='Read' href='https://theqalead.com/test-management/what-is-ghost-inspector-overview-tour-of-features/'>What Is Ghost Inspector? Overview & Tour Of Features</BadgeLink>

@ -1 +1,9 @@
# Qa wolf
# QA Wolf
QA Wolf is a hybrid platform & service that helps software teams ship better software faster by taking QA completely off their plate.
<ResourceGroupTitle>Free Content</ResourceGroupTitle>
<BadgeLink colorScheme='blue' badgeText='Official Website' href='https://www.qawolf.com/'>QA Wolf</BadgeLink>
<BadgeLink colorScheme='blue' badgeText='Official Docs' href='https://app.qawolf.com/docs/why-qa-wolf'>QA Wolf Official Docs</BadgeLink>
<BadgeLink badgeText='Guide' colorScheme='green' href='https://app.qawolf.com/docs/create-a-test'>Getting started with QA Wolf</BadgeLink>
<BadgeLink badgeText='Watch' href='https://www.youtube.com/watch?v=BRxVu0De-4k&list=PL33T95M59Kkg1zKCU5NHc2g2XYXOs3-DU'>QA Wolf Tutorial</BadgeLink>

@ -1 +1,13 @@
# Webdriver io
WebdriverIO is a progressive automation framework built to automate modern web and mobile applications. It simplifies the interaction with your app and provides a set of plugins that help you create a scalable, robust and stable test suite.
WebdriverIO leverages the power of the WebDriver protocol that is developed and supported by all browser vendors and guarantees a true cross-browser testing experience. While other automation tools require you to download modified browser that aren't used by actual users or emulate user behavior by injecting JavaScript, WebdriverIO relies on a common agreed standard for automation that is properly tested and ensures compatibility for decades to come.
During the development of this automation standard the web has changed a lot and many of the requirements that developers have today to test their web application can not be fulfilled using WebDriver anymore. While some of the core contributors of this project help support the next generation of the WebDriver protocol, WebdriverIO provides an alternative automation solution based on the Chrome DevTools protocol. This allows the user to seamlessly switch between conventional commands based on WebDriver and powerful browser interactions through Puppeteer.
<ResourceGroupTitle>Free Content</ResourceGroupTitle>
<BadgeLink colorScheme='blue' badgeText='Bitbucket Website' href='https://webdriver.io/'>WebdriverIO Website</BadgeLink>
<BadgeLink colorScheme='blue' badgeText='Read' href='https://webdriver.io/docs/what-is-webdriverio'>A brief overview of WebdriverIO</BadgeLink>
<BadgeLink badgeText='Guide' colorScheme='green' href='https://webdriver.io/docs/gettingstarted'>Getting started with WebdriverIO</BadgeLink>
<BadgeLink badgeText='Watch' href='https://www.youtube.com/watch?v=e8goAKb6CC0&list=PL6AdzyjjD5HBbt9amjf3wIVMaobb28ZYN'>WebdriverIO Tutorial</BadgeLink>

@ -1 +1,6 @@
# Check my links
# Check My Links
Check My Links is a link checker that crawls through your webpage and looks for broken links. Is an extension developed primarily for web designers, developers and content editors.
<ResourceGroupTitle>Free Content</ResourceGroupTitle>
<BadgeLink colorScheme='blue' badgeText='Official Docs' href='https://github.com/PageModifiedOfficial/Check-My-Links'>Check My Links Official Docs</BadgeLink>

@ -1,7 +1,7 @@
# Soap ui
# SoapUI
SoapUI is the world's leading Functional Testing tool for SOAP and REST testing. With its easy-to-use graphical interface, and enterprise-class features, SoapUI allows you to easily and rapidly create and execute automated functional, regression, and load tests.
<ResourceGroupTitle>Free Content</ResourceGroupTitle>
<BadgeLink colorScheme='yellow' badgeText='Official Website' href='https://www.soapui.org/'>Soap UI Official Website</BadgeLink>
<BadgeLink colorScheme='yellow' badgeText='Official Docs' href='https://www.soapui.org/getting-started/'>Soap UI Docs</BadgeLink>
<BadgeLink colorScheme='yellow' badgeText='Official Website' href='https://www.soapui.org/'>SoapUI Official Website</BadgeLink>
<BadgeLink colorScheme='yellow' badgeText='Official Docs' href='https://www.soapui.org/getting-started/'>SoapUI Docs</BadgeLink>

@ -1 +1,3 @@
# Wave
Wave is a suite of evaluation tools that helps authors make their web content more accessible to individuals with disabilities. WAVE can identify many accessibility and Web Content Accessibility Guideline (WCAG) errors, but also facilitates human evaluation of web content.

@ -1,3 +1,3 @@
# Non Functional Testing
In the process of Software testing, testing and analyzing only software’s functions doesn't complete the testing process. There are some other attributes which will demonstrate the entire software quality, they are known as quality characteristics. These characteristics includes performance, security, usability, and reliability. Also not testing and analyzing the report of these characterisitics will not affect the function of software, it will work to a degree of extent,but testing of these quality characteristics are referred to as Qa non-functional testing.
In the process of Software testing, testing and analyzing only software’s functions doesn't complete the testing process. There are some other attributes which will demonstrate the entire software quality, they are known as quality characteristics. These characteristics include performance, security, usability, and reliability. Also not testing and analyzing the report of these characteristics will not affect the function of software, it will work to a degree of extent, but testing of these quality characteristics are referred to as QA non-functional testing.

@ -1 +1,7 @@
# Mailinator
Mailinator allows Developers and QA Testing teams to automatically test their SMS and Email workflows like 2FA verifications, sign-ups, and password resets with trillions of inboxes at your fingertips. Whether you do Manual Testing, use an API, or a framework like Selenium, Cypress, Playwright, or Puppeteer - Mailinator will close the loop on email/SMS testing.
<ResourceGroupTitle>Free Content</ResourceGroupTitle>
<BadgeLink colorScheme='blue' badgeText='Official Website' href='https://www.mailinator.com/'>Mailinator</BadgeLink>
<BadgeLink colorScheme='blue' badgeText='Official Docs' href='https://www.mailinator.com/docs/index.html#mailinator'>Mailinator Official Docs</BadgeLink>

@ -1,6 +1,6 @@
# W3c and WHATWG Standards
World Wide Web Consortium (W3C) standards define the best practises for web development to enable developers to build rich interactive experiences that are available on any device. Theses standards range from recommended web technologies such as HTML, CSS, XML to the generally accepted principles of web architecture, semantics and services.
World Wide Web Consortium (W3C) standards define the best practices for web development to enable developers to build rich interactive experiences that are available on any device. Theses standards range from recommended web technologies such as HTML, CSS, XML to the generally accepted principles of web architecture, semantics and services.
Web Hypertext Application Technology Working Group (WHATWG) is another set of web standards that came into existence after W3C announced that it was going to be focusing on XHTML over HTML.

@ -1,6 +1,6 @@
<p align="center">
<img src="public/brand.png" height="128">
<h2 align="center">roadmap.sh</h2>
<h2 align="center"><a href="https://roadmap.sh">roadmap.sh</a></h2>
<p align="center">Community driven roadmaps, articles and resources for developers<p>
<p align="center">
<a href="https://roadmap.sh/roadmaps">

@ -8,7 +8,7 @@ Here is the list of scripts available:
## Sitemap
Generates the sitemap with all the pages and guides
The below mentioned command generates the sitemap with all the pages and guides
```shell
npm run meta:sitemap
@ -16,7 +16,7 @@ npm run meta:sitemap
## Roadmaps Meta
Generates the `content/roadmaps.json` file by combining the `content/raodmaps/**/meta.json` content in each roadmap
The below mentioned command generates the `content/roadmaps.json` file by combining the `content/raodmaps/**/meta.json` content in each roadmap
```shell
npm run meta:roadmaps

Loading…
Cancel
Save