\ No newline at end of file
diff --git a/_next/data/w7DhkIEFFqztYAhhKhFY6/android.json b/_next/data/8K0mB_qvDLRSxoIbV30Xo/android.json
similarity index 100%
rename from _next/data/w7DhkIEFFqztYAhhKhFY6/android.json
rename to _next/data/8K0mB_qvDLRSxoIbV30Xo/android.json
diff --git a/_next/data/w7DhkIEFFqztYAhhKhFY6/android/android.json b/_next/data/8K0mB_qvDLRSxoIbV30Xo/android/android.json
similarity index 100%
rename from _next/data/w7DhkIEFFqztYAhhKhFY6/android/android.json
rename to _next/data/8K0mB_qvDLRSxoIbV30Xo/android/android.json
diff --git a/_next/data/w7DhkIEFFqztYAhhKhFY6/android/interactive.json b/_next/data/8K0mB_qvDLRSxoIbV30Xo/android/interactive.json
similarity index 100%
rename from _next/data/w7DhkIEFFqztYAhhKhFY6/android/interactive.json
rename to _next/data/8K0mB_qvDLRSxoIbV30Xo/android/interactive.json
diff --git a/_next/data/w7DhkIEFFqztYAhhKhFY6/android/resources.json b/_next/data/8K0mB_qvDLRSxoIbV30Xo/android/resources.json
similarity index 100%
rename from _next/data/w7DhkIEFFqztYAhhKhFY6/android/resources.json
rename to _next/data/8K0mB_qvDLRSxoIbV30Xo/android/resources.json
diff --git a/_next/data/w7DhkIEFFqztYAhhKhFY6/angular.json b/_next/data/8K0mB_qvDLRSxoIbV30Xo/angular.json
similarity index 100%
rename from _next/data/w7DhkIEFFqztYAhhKhFY6/angular.json
rename to _next/data/8K0mB_qvDLRSxoIbV30Xo/angular.json
diff --git a/_next/data/w7DhkIEFFqztYAhhKhFY6/angular/angular.json b/_next/data/8K0mB_qvDLRSxoIbV30Xo/angular/angular.json
similarity index 100%
rename from _next/data/w7DhkIEFFqztYAhhKhFY6/angular/angular.json
rename to _next/data/8K0mB_qvDLRSxoIbV30Xo/angular/angular.json
diff --git a/_next/data/w7DhkIEFFqztYAhhKhFY6/angular/interactive.json b/_next/data/8K0mB_qvDLRSxoIbV30Xo/angular/interactive.json
similarity index 100%
rename from _next/data/w7DhkIEFFqztYAhhKhFY6/angular/interactive.json
rename to _next/data/8K0mB_qvDLRSxoIbV30Xo/angular/interactive.json
diff --git a/_next/data/w7DhkIEFFqztYAhhKhFY6/angular/resources.json b/_next/data/8K0mB_qvDLRSxoIbV30Xo/angular/resources.json
similarity index 100%
rename from _next/data/w7DhkIEFFqztYAhhKhFY6/angular/resources.json
rename to _next/data/8K0mB_qvDLRSxoIbV30Xo/angular/resources.json
diff --git a/_next/data/w7DhkIEFFqztYAhhKhFY6/aws.json b/_next/data/8K0mB_qvDLRSxoIbV30Xo/aws.json
similarity index 100%
rename from _next/data/w7DhkIEFFqztYAhhKhFY6/aws.json
rename to _next/data/8K0mB_qvDLRSxoIbV30Xo/aws.json
diff --git a/_next/data/w7DhkIEFFqztYAhhKhFY6/aws/aws.json b/_next/data/8K0mB_qvDLRSxoIbV30Xo/aws/aws.json
similarity index 100%
rename from _next/data/w7DhkIEFFqztYAhhKhFY6/aws/aws.json
rename to _next/data/8K0mB_qvDLRSxoIbV30Xo/aws/aws.json
diff --git a/_next/data/w7DhkIEFFqztYAhhKhFY6/aws/interactive.json b/_next/data/8K0mB_qvDLRSxoIbV30Xo/aws/interactive.json
similarity index 100%
rename from _next/data/w7DhkIEFFqztYAhhKhFY6/aws/interactive.json
rename to _next/data/8K0mB_qvDLRSxoIbV30Xo/aws/interactive.json
diff --git a/_next/data/w7DhkIEFFqztYAhhKhFY6/aws/resources.json b/_next/data/8K0mB_qvDLRSxoIbV30Xo/aws/resources.json
similarity index 100%
rename from _next/data/w7DhkIEFFqztYAhhKhFY6/aws/resources.json
rename to _next/data/8K0mB_qvDLRSxoIbV30Xo/aws/resources.json
diff --git a/_next/data/w7DhkIEFFqztYAhhKhFY6/backend.json b/_next/data/8K0mB_qvDLRSxoIbV30Xo/backend.json
similarity index 100%
rename from _next/data/w7DhkIEFFqztYAhhKhFY6/backend.json
rename to _next/data/8K0mB_qvDLRSxoIbV30Xo/backend.json
diff --git a/_next/data/w7DhkIEFFqztYAhhKhFY6/backend/backend.json b/_next/data/8K0mB_qvDLRSxoIbV30Xo/backend/backend.json
similarity index 100%
rename from _next/data/w7DhkIEFFqztYAhhKhFY6/backend/backend.json
rename to _next/data/8K0mB_qvDLRSxoIbV30Xo/backend/backend.json
diff --git a/_next/data/w7DhkIEFFqztYAhhKhFY6/backend/interactive.json b/_next/data/8K0mB_qvDLRSxoIbV30Xo/backend/interactive.json
similarity index 100%
rename from _next/data/w7DhkIEFFqztYAhhKhFY6/backend/interactive.json
rename to _next/data/8K0mB_qvDLRSxoIbV30Xo/backend/interactive.json
diff --git a/_next/data/w7DhkIEFFqztYAhhKhFY6/backend/resources.json b/_next/data/8K0mB_qvDLRSxoIbV30Xo/backend/resources.json
similarity index 100%
rename from _next/data/w7DhkIEFFqztYAhhKhFY6/backend/resources.json
rename to _next/data/8K0mB_qvDLRSxoIbV30Xo/backend/resources.json
diff --git a/_next/data/w7DhkIEFFqztYAhhKhFY6/devops.json b/_next/data/8K0mB_qvDLRSxoIbV30Xo/devops.json
similarity index 100%
rename from _next/data/w7DhkIEFFqztYAhhKhFY6/devops.json
rename to _next/data/8K0mB_qvDLRSxoIbV30Xo/devops.json
diff --git a/_next/data/w7DhkIEFFqztYAhhKhFY6/devops/devops.json b/_next/data/8K0mB_qvDLRSxoIbV30Xo/devops/devops.json
similarity index 100%
rename from _next/data/w7DhkIEFFqztYAhhKhFY6/devops/devops.json
rename to _next/data/8K0mB_qvDLRSxoIbV30Xo/devops/devops.json
diff --git a/_next/data/w7DhkIEFFqztYAhhKhFY6/devops/interactive.json b/_next/data/8K0mB_qvDLRSxoIbV30Xo/devops/interactive.json
similarity index 100%
rename from _next/data/w7DhkIEFFqztYAhhKhFY6/devops/interactive.json
rename to _next/data/8K0mB_qvDLRSxoIbV30Xo/devops/interactive.json
diff --git a/_next/data/w7DhkIEFFqztYAhhKhFY6/devops/resources.json b/_next/data/8K0mB_qvDLRSxoIbV30Xo/devops/resources.json
similarity index 100%
rename from _next/data/w7DhkIEFFqztYAhhKhFY6/devops/resources.json
rename to _next/data/8K0mB_qvDLRSxoIbV30Xo/devops/resources.json
diff --git a/_next/data/w7DhkIEFFqztYAhhKhFY6/frontend.json b/_next/data/8K0mB_qvDLRSxoIbV30Xo/frontend.json
similarity index 100%
rename from _next/data/w7DhkIEFFqztYAhhKhFY6/frontend.json
rename to _next/data/8K0mB_qvDLRSxoIbV30Xo/frontend.json
diff --git a/_next/data/w7DhkIEFFqztYAhhKhFY6/frontend/build-tools.json b/_next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/build-tools.json
similarity index 100%
rename from _next/data/w7DhkIEFFqztYAhhKhFY6/frontend/build-tools.json
rename to _next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/build-tools.json
diff --git a/_next/data/w7DhkIEFFqztYAhhKhFY6/frontend/build-tools:linters-formatters.json b/_next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/build-tools:linters-formatters.json
similarity index 100%
rename from _next/data/w7DhkIEFFqztYAhhKhFY6/frontend/build-tools:linters-formatters.json
rename to _next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/build-tools:linters-formatters.json
diff --git a/_next/data/w7DhkIEFFqztYAhhKhFY6/frontend/build-tools:linters-formatters:eslint.json b/_next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/build-tools:linters-formatters:eslint.json
similarity index 100%
rename from _next/data/w7DhkIEFFqztYAhhKhFY6/frontend/build-tools:linters-formatters:eslint.json
rename to _next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/build-tools:linters-formatters:eslint.json
diff --git a/_next/data/w7DhkIEFFqztYAhhKhFY6/frontend/build-tools:linters-formatters:prettier.json b/_next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/build-tools:linters-formatters:prettier.json
similarity index 100%
rename from _next/data/w7DhkIEFFqztYAhhKhFY6/frontend/build-tools:linters-formatters:prettier.json
rename to _next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/build-tools:linters-formatters:prettier.json
diff --git a/_next/data/w7DhkIEFFqztYAhhKhFY6/frontend/build-tools:linters-formatters:standardjs.json b/_next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/build-tools:linters-formatters:standardjs.json
similarity index 100%
rename from _next/data/w7DhkIEFFqztYAhhKhFY6/frontend/build-tools:linters-formatters:standardjs.json
rename to _next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/build-tools:linters-formatters:standardjs.json
diff --git a/_next/data/w7DhkIEFFqztYAhhKhFY6/frontend/build-tools:module-bundlers.json b/_next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/build-tools:module-bundlers.json
similarity index 100%
rename from _next/data/w7DhkIEFFqztYAhhKhFY6/frontend/build-tools:module-bundlers.json
rename to _next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/build-tools:module-bundlers.json
diff --git a/_next/data/w7DhkIEFFqztYAhhKhFY6/frontend/build-tools:module-bundlers:esbuild.json b/_next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/build-tools:module-bundlers:esbuild.json
similarity index 100%
rename from _next/data/w7DhkIEFFqztYAhhKhFY6/frontend/build-tools:module-bundlers:esbuild.json
rename to _next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/build-tools:module-bundlers:esbuild.json
diff --git a/_next/data/w7DhkIEFFqztYAhhKhFY6/frontend/build-tools:module-bundlers:parcel.json b/_next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/build-tools:module-bundlers:parcel.json
similarity index 100%
rename from _next/data/w7DhkIEFFqztYAhhKhFY6/frontend/build-tools:module-bundlers:parcel.json
rename to _next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/build-tools:module-bundlers:parcel.json
diff --git a/_next/data/w7DhkIEFFqztYAhhKhFY6/frontend/build-tools:module-bundlers:rollup.json b/_next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/build-tools:module-bundlers:rollup.json
similarity index 100%
rename from _next/data/w7DhkIEFFqztYAhhKhFY6/frontend/build-tools:module-bundlers:rollup.json
rename to _next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/build-tools:module-bundlers:rollup.json
diff --git a/_next/data/w7DhkIEFFqztYAhhKhFY6/frontend/build-tools:module-bundlers:vite.json b/_next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/build-tools:module-bundlers:vite.json
similarity index 100%
rename from _next/data/w7DhkIEFFqztYAhhKhFY6/frontend/build-tools:module-bundlers:vite.json
rename to _next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/build-tools:module-bundlers:vite.json
diff --git a/_next/data/w7DhkIEFFqztYAhhKhFY6/frontend/build-tools:module-bundlers:webpack.json b/_next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/build-tools:module-bundlers:webpack.json
similarity index 100%
rename from _next/data/w7DhkIEFFqztYAhhKhFY6/frontend/build-tools:module-bundlers:webpack.json
rename to _next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/build-tools:module-bundlers:webpack.json
diff --git a/_next/data/w7DhkIEFFqztYAhhKhFY6/frontend/build-tools:task-runners.json b/_next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/build-tools:task-runners.json
similarity index 100%
rename from _next/data/w7DhkIEFFqztYAhhKhFY6/frontend/build-tools:task-runners.json
rename to _next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/build-tools:task-runners.json
diff --git a/_next/data/w7DhkIEFFqztYAhhKhFY6/frontend/build-tools:task-runners:npm-scripts.json b/_next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/build-tools:task-runners:npm-scripts.json
similarity index 100%
rename from _next/data/w7DhkIEFFqztYAhhKhFY6/frontend/build-tools:task-runners:npm-scripts.json
rename to _next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/build-tools:task-runners:npm-scripts.json
diff --git a/_next/data/w7DhkIEFFqztYAhhKhFY6/frontend/css-architecture.json b/_next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/css-architecture.json
similarity index 100%
rename from _next/data/w7DhkIEFFqztYAhhKhFY6/frontend/css-architecture.json
rename to _next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/css-architecture.json
diff --git a/_next/data/w7DhkIEFFqztYAhhKhFY6/frontend/css-architecture:bem.json b/_next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/css-architecture:bem.json
similarity index 100%
rename from _next/data/w7DhkIEFFqztYAhhKhFY6/frontend/css-architecture:bem.json
rename to _next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/css-architecture:bem.json
diff --git a/_next/data/w7DhkIEFFqztYAhhKhFY6/frontend/css-architecture:oocss.json b/_next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/css-architecture:oocss.json
similarity index 100%
rename from _next/data/w7DhkIEFFqztYAhhKhFY6/frontend/css-architecture:oocss.json
rename to _next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/css-architecture:oocss.json
diff --git a/_next/data/w7DhkIEFFqztYAhhKhFY6/frontend/css-architecture:smacss.json b/_next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/css-architecture:smacss.json
similarity index 100%
rename from _next/data/w7DhkIEFFqztYAhhKhFY6/frontend/css-architecture:smacss.json
rename to _next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/css-architecture:smacss.json
diff --git a/_next/data/w7DhkIEFFqztYAhhKhFY6/frontend/css-frameworks.json b/_next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/css-frameworks.json
similarity index 100%
rename from _next/data/w7DhkIEFFqztYAhhKhFY6/frontend/css-frameworks.json
rename to _next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/css-frameworks.json
diff --git a/_next/data/w7DhkIEFFqztYAhhKhFY6/frontend/css-frameworks:css-first.json b/_next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/css-frameworks:css-first.json
similarity index 100%
rename from _next/data/w7DhkIEFFqztYAhhKhFY6/frontend/css-frameworks:css-first.json
rename to _next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/css-frameworks:css-first.json
diff --git a/_next/data/w7DhkIEFFqztYAhhKhFY6/frontend/css-frameworks:css-first:bootstrap.json b/_next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/css-frameworks:css-first:bootstrap.json
similarity index 100%
rename from _next/data/w7DhkIEFFqztYAhhKhFY6/frontend/css-frameworks:css-first:bootstrap.json
rename to _next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/css-frameworks:css-first:bootstrap.json
diff --git a/_next/data/w7DhkIEFFqztYAhhKhFY6/frontend/css-frameworks:css-first:bulma.json b/_next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/css-frameworks:css-first:bulma.json
similarity index 100%
rename from _next/data/w7DhkIEFFqztYAhhKhFY6/frontend/css-frameworks:css-first:bulma.json
rename to _next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/css-frameworks:css-first:bulma.json
diff --git a/_next/data/w7DhkIEFFqztYAhhKhFY6/frontend/css-frameworks:js-first.json b/_next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/css-frameworks:js-first.json
similarity index 100%
rename from _next/data/w7DhkIEFFqztYAhhKhFY6/frontend/css-frameworks:js-first.json
rename to _next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/css-frameworks:js-first.json
diff --git a/_next/data/w7DhkIEFFqztYAhhKhFY6/frontend/css-frameworks:js-first:chakra-ui.json b/_next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/css-frameworks:js-first:chakra-ui.json
similarity index 100%
rename from _next/data/w7DhkIEFFqztYAhhKhFY6/frontend/css-frameworks:js-first:chakra-ui.json
rename to _next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/css-frameworks:js-first:chakra-ui.json
diff --git a/_next/data/w7DhkIEFFqztYAhhKhFY6/frontend/css-frameworks:js-first:material-ui.json b/_next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/css-frameworks:js-first:material-ui.json
similarity index 100%
rename from _next/data/w7DhkIEFFqztYAhhKhFY6/frontend/css-frameworks:js-first:material-ui.json
rename to _next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/css-frameworks:js-first:material-ui.json
diff --git a/_next/data/w7DhkIEFFqztYAhhKhFY6/frontend/css-frameworks:js-first:radix-ui.json b/_next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/css-frameworks:js-first:radix-ui.json
similarity index 100%
rename from _next/data/w7DhkIEFFqztYAhhKhFY6/frontend/css-frameworks:js-first:radix-ui.json
rename to _next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/css-frameworks:js-first:radix-ui.json
diff --git a/_next/data/w7DhkIEFFqztYAhhKhFY6/frontend/css-frameworks:js-first:tailwind-css.json b/_next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/css-frameworks:js-first:tailwind-css.json
similarity index 100%
rename from _next/data/w7DhkIEFFqztYAhhKhFY6/frontend/css-frameworks:js-first:tailwind-css.json
rename to _next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/css-frameworks:js-first:tailwind-css.json
diff --git a/_next/data/w7DhkIEFFqztYAhhKhFY6/frontend/css-preprocessors.json b/_next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/css-preprocessors.json
similarity index 100%
rename from _next/data/w7DhkIEFFqztYAhhKhFY6/frontend/css-preprocessors.json
rename to _next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/css-preprocessors.json
diff --git a/_next/data/w7DhkIEFFqztYAhhKhFY6/frontend/css-preprocessors:less.json b/_next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/css-preprocessors:less.json
similarity index 100%
rename from _next/data/w7DhkIEFFqztYAhhKhFY6/frontend/css-preprocessors:less.json
rename to _next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/css-preprocessors:less.json
diff --git a/_next/data/w7DhkIEFFqztYAhhKhFY6/frontend/css-preprocessors:postcss.json b/_next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/css-preprocessors:postcss.json
similarity index 100%
rename from _next/data/w7DhkIEFFqztYAhhKhFY6/frontend/css-preprocessors:postcss.json
rename to _next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/css-preprocessors:postcss.json
diff --git a/_next/data/w7DhkIEFFqztYAhhKhFY6/frontend/css-preprocessors:sass.json b/_next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/css-preprocessors:sass.json
similarity index 100%
rename from _next/data/w7DhkIEFFqztYAhhKhFY6/frontend/css-preprocessors:sass.json
rename to _next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/css-preprocessors:sass.json
diff --git a/_next/data/w7DhkIEFFqztYAhhKhFY6/frontend/css.json b/_next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/css.json
similarity index 100%
rename from _next/data/w7DhkIEFFqztYAhhKhFY6/frontend/css.json
rename to _next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/css.json
diff --git a/_next/data/w7DhkIEFFqztYAhhKhFY6/frontend/css:learn-the-basics.json b/_next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/css:learn-the-basics.json
similarity index 100%
rename from _next/data/w7DhkIEFFqztYAhhKhFY6/frontend/css:learn-the-basics.json
rename to _next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/css:learn-the-basics.json
diff --git a/_next/data/w7DhkIEFFqztYAhhKhFY6/frontend/css:making-layouts.json b/_next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/css:making-layouts.json
similarity index 100%
rename from _next/data/w7DhkIEFFqztYAhhKhFY6/frontend/css:making-layouts.json
rename to _next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/css:making-layouts.json
diff --git a/_next/data/w7DhkIEFFqztYAhhKhFY6/frontend/css:responsive-design-and-media-queries.json b/_next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/css:responsive-design-and-media-queries.json
similarity index 100%
rename from _next/data/w7DhkIEFFqztYAhhKhFY6/frontend/css:responsive-design-and-media-queries.json
rename to _next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/css:responsive-design-and-media-queries.json
diff --git a/_next/data/w7DhkIEFFqztYAhhKhFY6/frontend/desktop-applications.json b/_next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/desktop-applications.json
similarity index 100%
rename from _next/data/w7DhkIEFFqztYAhhKhFY6/frontend/desktop-applications.json
rename to _next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/desktop-applications.json
diff --git a/_next/data/w7DhkIEFFqztYAhhKhFY6/frontend/desktop-applications:carlo.json b/_next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/desktop-applications:carlo.json
similarity index 100%
rename from _next/data/w7DhkIEFFqztYAhhKhFY6/frontend/desktop-applications:carlo.json
rename to _next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/desktop-applications:carlo.json
diff --git a/_next/data/w7DhkIEFFqztYAhhKhFY6/frontend/desktop-applications:electron.json b/_next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/desktop-applications:electron.json
similarity index 100%
rename from _next/data/w7DhkIEFFqztYAhhKhFY6/frontend/desktop-applications:electron.json
rename to _next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/desktop-applications:electron.json
diff --git a/_next/data/w7DhkIEFFqztYAhhKhFY6/frontend/desktop-applications:proton-native.json b/_next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/desktop-applications:proton-native.json
similarity index 100%
rename from _next/data/w7DhkIEFFqztYAhhKhFY6/frontend/desktop-applications:proton-native.json
rename to _next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/desktop-applications:proton-native.json
diff --git a/_next/data/w7DhkIEFFqztYAhhKhFY6/frontend/graphql.json b/_next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/graphql.json
similarity index 100%
rename from _next/data/w7DhkIEFFqztYAhhKhFY6/frontend/graphql.json
rename to _next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/graphql.json
diff --git a/_next/data/w7DhkIEFFqztYAhhKhFY6/frontend/graphql:apollo.json b/_next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/graphql:apollo.json
similarity index 100%
rename from _next/data/w7DhkIEFFqztYAhhKhFY6/frontend/graphql:apollo.json
rename to _next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/graphql:apollo.json
diff --git a/_next/data/w7DhkIEFFqztYAhhKhFY6/frontend/graphql:relay-modern.json b/_next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/graphql:relay-modern.json
similarity index 100%
rename from _next/data/w7DhkIEFFqztYAhhKhFY6/frontend/graphql:relay-modern.json
rename to _next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/graphql:relay-modern.json
diff --git a/_next/data/w7DhkIEFFqztYAhhKhFY6/frontend/home.json b/_next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/home.json
similarity index 100%
rename from _next/data/w7DhkIEFFqztYAhhKhFY6/frontend/home.json
rename to _next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/home.json
diff --git a/_next/data/w7DhkIEFFqztYAhhKhFY6/frontend/html.json b/_next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/html.json
similarity index 100%
rename from _next/data/w7DhkIEFFqztYAhhKhFY6/frontend/html.json
rename to _next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/html.json
diff --git a/_next/data/w7DhkIEFFqztYAhhKhFY6/frontend/html:accessibility.json b/_next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/html:accessibility.json
similarity index 100%
rename from _next/data/w7DhkIEFFqztYAhhKhFY6/frontend/html:accessibility.json
rename to _next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/html:accessibility.json
diff --git a/_next/data/w7DhkIEFFqztYAhhKhFY6/frontend/html:conventions-and-best-practices.json b/_next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/html:conventions-and-best-practices.json
similarity index 100%
rename from _next/data/w7DhkIEFFqztYAhhKhFY6/frontend/html:conventions-and-best-practices.json
rename to _next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/html:conventions-and-best-practices.json
diff --git a/_next/data/w7DhkIEFFqztYAhhKhFY6/frontend/html:forms-and-validations.json b/_next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/html:forms-and-validations.json
similarity index 100%
rename from _next/data/w7DhkIEFFqztYAhhKhFY6/frontend/html:forms-and-validations.json
rename to _next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/html:forms-and-validations.json
diff --git a/_next/data/w7DhkIEFFqztYAhhKhFY6/frontend/html:learn-the-basics.json b/_next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/html:learn-the-basics.json
similarity index 100%
rename from _next/data/w7DhkIEFFqztYAhhKhFY6/frontend/html:learn-the-basics.json
rename to _next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/html:learn-the-basics.json
diff --git a/_next/data/w7DhkIEFFqztYAhhKhFY6/frontend/html:seo-basics.json b/_next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/html:seo-basics.json
similarity index 100%
rename from _next/data/w7DhkIEFFqztYAhhKhFY6/frontend/html:seo-basics.json
rename to _next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/html:seo-basics.json
diff --git a/_next/data/w7DhkIEFFqztYAhhKhFY6/frontend/html:writing-semantic-html.json b/_next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/html:writing-semantic-html.json
similarity index 100%
rename from _next/data/w7DhkIEFFqztYAhhKhFY6/frontend/html:writing-semantic-html.json
rename to _next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/html:writing-semantic-html.json
diff --git a/_next/data/w7DhkIEFFqztYAhhKhFY6/frontend/interactive.json b/_next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/interactive.json
similarity index 100%
rename from _next/data/w7DhkIEFFqztYAhhKhFY6/frontend/interactive.json
rename to _next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/interactive.json
diff --git a/_next/data/w7DhkIEFFqztYAhhKhFY6/frontend/internet.json b/_next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/internet.json
similarity index 100%
rename from _next/data/w7DhkIEFFqztYAhhKhFY6/frontend/internet.json
rename to _next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/internet.json
diff --git a/_next/data/w7DhkIEFFqztYAhhKhFY6/frontend/internet:browsers-and-how-they-work.json b/_next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/internet:browsers-and-how-they-work.json
similarity index 100%
rename from _next/data/w7DhkIEFFqztYAhhKhFY6/frontend/internet:browsers-and-how-they-work.json
rename to _next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/internet:browsers-and-how-they-work.json
diff --git a/_next/data/w7DhkIEFFqztYAhhKhFY6/frontend/internet:dns-and-how-it-works.json b/_next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/internet:dns-and-how-it-works.json
similarity index 100%
rename from _next/data/w7DhkIEFFqztYAhhKhFY6/frontend/internet:dns-and-how-it-works.json
rename to _next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/internet:dns-and-how-it-works.json
diff --git a/_next/data/w7DhkIEFFqztYAhhKhFY6/frontend/internet:how-does-the-internet-work.json b/_next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/internet:how-does-the-internet-work.json
similarity index 100%
rename from _next/data/w7DhkIEFFqztYAhhKhFY6/frontend/internet:how-does-the-internet-work.json
rename to _next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/internet:how-does-the-internet-work.json
diff --git a/_next/data/w7DhkIEFFqztYAhhKhFY6/frontend/internet:what-is-domain-name.json b/_next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/internet:what-is-domain-name.json
similarity index 100%
rename from _next/data/w7DhkIEFFqztYAhhKhFY6/frontend/internet:what-is-domain-name.json
rename to _next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/internet:what-is-domain-name.json
diff --git a/_next/data/w7DhkIEFFqztYAhhKhFY6/frontend/internet:what-is-hosting.json b/_next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/internet:what-is-hosting.json
similarity index 100%
rename from _next/data/w7DhkIEFFqztYAhhKhFY6/frontend/internet:what-is-hosting.json
rename to _next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/internet:what-is-hosting.json
diff --git a/_next/data/w7DhkIEFFqztYAhhKhFY6/frontend/internet:what-is-http.json b/_next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/internet:what-is-http.json
similarity index 100%
rename from _next/data/w7DhkIEFFqztYAhhKhFY6/frontend/internet:what-is-http.json
rename to _next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/internet:what-is-http.json
diff --git a/_next/data/w7DhkIEFFqztYAhhKhFY6/frontend/javascript.json b/_next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/javascript.json
similarity index 100%
rename from _next/data/w7DhkIEFFqztYAhhKhFY6/frontend/javascript.json
rename to _next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/javascript.json
diff --git a/_next/data/w7DhkIEFFqztYAhhKhFY6/frontend/javascript:concepts.json b/_next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/javascript:concepts.json
similarity index 100%
rename from _next/data/w7DhkIEFFqztYAhhKhFY6/frontend/javascript:concepts.json
rename to _next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/javascript:concepts.json
diff --git a/_next/data/w7DhkIEFFqztYAhhKhFY6/frontend/javascript:es6-and-modular-javascript.json b/_next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/javascript:es6-and-modular-javascript.json
similarity index 100%
rename from _next/data/w7DhkIEFFqztYAhhKhFY6/frontend/javascript:es6-and-modular-javascript.json
rename to _next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/javascript:es6-and-modular-javascript.json
diff --git a/_next/data/w7DhkIEFFqztYAhhKhFY6/frontend/javascript:learn-dom-manipulation.json b/_next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/javascript:learn-dom-manipulation.json
similarity index 100%
rename from _next/data/w7DhkIEFFqztYAhhKhFY6/frontend/javascript:learn-dom-manipulation.json
rename to _next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/javascript:learn-dom-manipulation.json
diff --git a/_next/data/w7DhkIEFFqztYAhhKhFY6/frontend/javascript:learn-fetch-api-ajax-xhr.json b/_next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/javascript:learn-fetch-api-ajax-xhr.json
similarity index 100%
rename from _next/data/w7DhkIEFFqztYAhhKhFY6/frontend/javascript:learn-fetch-api-ajax-xhr.json
rename to _next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/javascript:learn-fetch-api-ajax-xhr.json
diff --git a/_next/data/w7DhkIEFFqztYAhhKhFY6/frontend/javascript:syntax-and-basic-constructs.json b/_next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/javascript:syntax-and-basic-constructs.json
similarity index 100%
rename from _next/data/w7DhkIEFFqztYAhhKhFY6/frontend/javascript:syntax-and-basic-constructs.json
rename to _next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/javascript:syntax-and-basic-constructs.json
diff --git a/_next/data/w7DhkIEFFqztYAhhKhFY6/frontend/mobile-applications.json b/_next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/mobile-applications.json
similarity index 100%
rename from _next/data/w7DhkIEFFqztYAhhKhFY6/frontend/mobile-applications.json
rename to _next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/mobile-applications.json
diff --git a/_next/data/w7DhkIEFFqztYAhhKhFY6/frontend/mobile-applications:flutter.json b/_next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/mobile-applications:flutter.json
similarity index 100%
rename from _next/data/w7DhkIEFFqztYAhhKhFY6/frontend/mobile-applications:flutter.json
rename to _next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/mobile-applications:flutter.json
diff --git a/_next/data/w7DhkIEFFqztYAhhKhFY6/frontend/mobile-applications:ionic.json b/_next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/mobile-applications:ionic.json
similarity index 100%
rename from _next/data/w7DhkIEFFqztYAhhKhFY6/frontend/mobile-applications:ionic.json
rename to _next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/mobile-applications:ionic.json
diff --git a/_next/data/w7DhkIEFFqztYAhhKhFY6/frontend/mobile-applications:nativescript.json b/_next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/mobile-applications:nativescript.json
similarity index 100%
rename from _next/data/w7DhkIEFFqztYAhhKhFY6/frontend/mobile-applications:nativescript.json
rename to _next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/mobile-applications:nativescript.json
diff --git a/_next/data/w7DhkIEFFqztYAhhKhFY6/frontend/mobile-applications:react-native.json b/_next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/mobile-applications:react-native.json
similarity index 100%
rename from _next/data/w7DhkIEFFqztYAhhKhFY6/frontend/mobile-applications:react-native.json
rename to _next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/mobile-applications:react-native.json
diff --git a/_next/data/w7DhkIEFFqztYAhhKhFY6/frontend/modern-css.json b/_next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/modern-css.json
similarity index 100%
rename from _next/data/w7DhkIEFFqztYAhhKhFY6/frontend/modern-css.json
rename to _next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/modern-css.json
diff --git a/_next/data/w7DhkIEFFqztYAhhKhFY6/frontend/modern-css:css-modules.json b/_next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/modern-css:css-modules.json
similarity index 100%
rename from _next/data/w7DhkIEFFqztYAhhKhFY6/frontend/modern-css:css-modules.json
rename to _next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/modern-css:css-modules.json
diff --git a/_next/data/w7DhkIEFFqztYAhhKhFY6/frontend/modern-css:emotion.json b/_next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/modern-css:emotion.json
similarity index 100%
rename from _next/data/w7DhkIEFFqztYAhhKhFY6/frontend/modern-css:emotion.json
rename to _next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/modern-css:emotion.json
diff --git a/_next/data/w7DhkIEFFqztYAhhKhFY6/frontend/modern-css:styled-components.json b/_next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/modern-css:styled-components.json
similarity index 100%
rename from _next/data/w7DhkIEFFqztYAhhKhFY6/frontend/modern-css:styled-components.json
rename to _next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/modern-css:styled-components.json
diff --git a/_next/data/w7DhkIEFFqztYAhhKhFY6/frontend/modern-css:styled-jsx.json b/_next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/modern-css:styled-jsx.json
similarity index 100%
rename from _next/data/w7DhkIEFFqztYAhhKhFY6/frontend/modern-css:styled-jsx.json
rename to _next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/modern-css:styled-jsx.json
diff --git a/_next/data/w7DhkIEFFqztYAhhKhFY6/frontend/package-managers.json b/_next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/package-managers.json
similarity index 100%
rename from _next/data/w7DhkIEFFqztYAhhKhFY6/frontend/package-managers.json
rename to _next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/package-managers.json
diff --git a/_next/data/w7DhkIEFFqztYAhhKhFY6/frontend/package-managers:npm.json b/_next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/package-managers:npm.json
similarity index 100%
rename from _next/data/w7DhkIEFFqztYAhhKhFY6/frontend/package-managers:npm.json
rename to _next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/package-managers:npm.json
diff --git a/_next/data/w7DhkIEFFqztYAhhKhFY6/frontend/package-managers:yarn.json b/_next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/package-managers:yarn.json
similarity index 100%
rename from _next/data/w7DhkIEFFqztYAhhKhFY6/frontend/package-managers:yarn.json
rename to _next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/package-managers:yarn.json
diff --git a/_next/data/w7DhkIEFFqztYAhhKhFY6/frontend/pick-a-framework.json b/_next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/pick-a-framework.json
similarity index 100%
rename from _next/data/w7DhkIEFFqztYAhhKhFY6/frontend/pick-a-framework.json
rename to _next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/pick-a-framework.json
diff --git a/_next/data/w7DhkIEFFqztYAhhKhFY6/frontend/pick-a-framework:angular.json b/_next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/pick-a-framework:angular.json
similarity index 100%
rename from _next/data/w7DhkIEFFqztYAhhKhFY6/frontend/pick-a-framework:angular.json
rename to _next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/pick-a-framework:angular.json
diff --git a/_next/data/w7DhkIEFFqztYAhhKhFY6/frontend/pick-a-framework:angular:ngrx.json b/_next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/pick-a-framework:angular:ngrx.json
similarity index 100%
rename from _next/data/w7DhkIEFFqztYAhhKhFY6/frontend/pick-a-framework:angular:ngrx.json
rename to _next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/pick-a-framework:angular:ngrx.json
diff --git a/_next/data/w7DhkIEFFqztYAhhKhFY6/frontend/pick-a-framework:angular:rxjs.json b/_next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/pick-a-framework:angular:rxjs.json
similarity index 100%
rename from _next/data/w7DhkIEFFqztYAhhKhFY6/frontend/pick-a-framework:angular:rxjs.json
rename to _next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/pick-a-framework:angular:rxjs.json
diff --git a/_next/data/w7DhkIEFFqztYAhhKhFY6/frontend/pick-a-framework:react-js.json b/_next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/pick-a-framework:react-js.json
similarity index 100%
rename from _next/data/w7DhkIEFFqztYAhhKhFY6/frontend/pick-a-framework:react-js.json
rename to _next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/pick-a-framework:react-js.json
diff --git a/_next/data/w7DhkIEFFqztYAhhKhFY6/frontend/pick-a-framework:react-js:mobx.json b/_next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/pick-a-framework:react-js:mobx.json
similarity index 100%
rename from _next/data/w7DhkIEFFqztYAhhKhFY6/frontend/pick-a-framework:react-js:mobx.json
rename to _next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/pick-a-framework:react-js:mobx.json
diff --git a/_next/data/w7DhkIEFFqztYAhhKhFY6/frontend/pick-a-framework:react-js:recoil.json b/_next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/pick-a-framework:react-js:recoil.json
similarity index 100%
rename from _next/data/w7DhkIEFFqztYAhhKhFY6/frontend/pick-a-framework:react-js:recoil.json
rename to _next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/pick-a-framework:react-js:recoil.json
diff --git a/_next/data/w7DhkIEFFqztYAhhKhFY6/frontend/pick-a-framework:react-js:redux.json b/_next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/pick-a-framework:react-js:redux.json
similarity index 100%
rename from _next/data/w7DhkIEFFqztYAhhKhFY6/frontend/pick-a-framework:react-js:redux.json
rename to _next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/pick-a-framework:react-js:redux.json
diff --git a/_next/data/w7DhkIEFFqztYAhhKhFY6/frontend/pick-a-framework:vue-js.json b/_next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/pick-a-framework:vue-js.json
similarity index 100%
rename from _next/data/w7DhkIEFFqztYAhhKhFY6/frontend/pick-a-framework:vue-js.json
rename to _next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/pick-a-framework:vue-js.json
diff --git a/_next/data/w7DhkIEFFqztYAhhKhFY6/frontend/pick-a-framework:vue-js:vuex.json b/_next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/pick-a-framework:vue-js:vuex.json
similarity index 100%
rename from _next/data/w7DhkIEFFqztYAhhKhFY6/frontend/pick-a-framework:vue-js:vuex.json
rename to _next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/pick-a-framework:vue-js:vuex.json
diff --git a/_next/data/w7DhkIEFFqztYAhhKhFY6/frontend/progressive-web-apps.json b/_next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/progressive-web-apps.json
similarity index 100%
rename from _next/data/w7DhkIEFFqztYAhhKhFY6/frontend/progressive-web-apps.json
rename to _next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/progressive-web-apps.json
diff --git a/_next/data/w7DhkIEFFqztYAhhKhFY6/frontend/progressive-web-apps:apis.json b/_next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/progressive-web-apps:apis.json
similarity index 100%
rename from _next/data/w7DhkIEFFqztYAhhKhFY6/frontend/progressive-web-apps:apis.json
rename to _next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/progressive-web-apps:apis.json
diff --git a/_next/data/w7DhkIEFFqztYAhhKhFY6/frontend/progressive-web-apps:performance.json b/_next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/progressive-web-apps:performance.json
similarity index 100%
rename from _next/data/w7DhkIEFFqztYAhhKhFY6/frontend/progressive-web-apps:performance.json
rename to _next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/progressive-web-apps:performance.json
diff --git a/_next/data/w7DhkIEFFqztYAhhKhFY6/frontend/repo-hosting-services.json b/_next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/repo-hosting-services.json
similarity index 100%
rename from _next/data/w7DhkIEFFqztYAhhKhFY6/frontend/repo-hosting-services.json
rename to _next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/repo-hosting-services.json
diff --git a/_next/data/w7DhkIEFFqztYAhhKhFY6/frontend/repo-hosting-services:bitbucket.json b/_next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/repo-hosting-services:bitbucket.json
similarity index 100%
rename from _next/data/w7DhkIEFFqztYAhhKhFY6/frontend/repo-hosting-services:bitbucket.json
rename to _next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/repo-hosting-services:bitbucket.json
diff --git a/_next/data/w7DhkIEFFqztYAhhKhFY6/frontend/repo-hosting-services:github.json b/_next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/repo-hosting-services:github.json
similarity index 100%
rename from _next/data/w7DhkIEFFqztYAhhKhFY6/frontend/repo-hosting-services:github.json
rename to _next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/repo-hosting-services:github.json
diff --git a/_next/data/w7DhkIEFFqztYAhhKhFY6/frontend/repo-hosting-services:gitlab.json b/_next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/repo-hosting-services:gitlab.json
similarity index 100%
rename from _next/data/w7DhkIEFFqztYAhhKhFY6/frontend/repo-hosting-services:gitlab.json
rename to _next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/repo-hosting-services:gitlab.json
diff --git a/_next/data/w7DhkIEFFqztYAhhKhFY6/frontend/resources.json b/_next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/resources.json
similarity index 100%
rename from _next/data/w7DhkIEFFqztYAhhKhFY6/frontend/resources.json
rename to _next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/resources.json
diff --git a/_next/data/w7DhkIEFFqztYAhhKhFY6/frontend/server-side-rendering.json b/_next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/server-side-rendering.json
similarity index 100%
rename from _next/data/w7DhkIEFFqztYAhhKhFY6/frontend/server-side-rendering.json
rename to _next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/server-side-rendering.json
diff --git a/_next/data/w7DhkIEFFqztYAhhKhFY6/frontend/server-side-rendering:angular.json b/_next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/server-side-rendering:angular.json
similarity index 100%
rename from _next/data/w7DhkIEFFqztYAhhKhFY6/frontend/server-side-rendering:angular.json
rename to _next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/server-side-rendering:angular.json
diff --git a/_next/data/w7DhkIEFFqztYAhhKhFY6/frontend/server-side-rendering:angular:universal.json b/_next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/server-side-rendering:angular:universal.json
similarity index 100%
rename from _next/data/w7DhkIEFFqztYAhhKhFY6/frontend/server-side-rendering:angular:universal.json
rename to _next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/server-side-rendering:angular:universal.json
diff --git a/_next/data/w7DhkIEFFqztYAhhKhFY6/frontend/server-side-rendering:react-js.json b/_next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/server-side-rendering:react-js.json
similarity index 100%
rename from _next/data/w7DhkIEFFqztYAhhKhFY6/frontend/server-side-rendering:react-js.json
rename to _next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/server-side-rendering:react-js.json
diff --git a/_next/data/w7DhkIEFFqztYAhhKhFY6/frontend/server-side-rendering:react-js:after-js.json b/_next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/server-side-rendering:react-js:after-js.json
similarity index 100%
rename from _next/data/w7DhkIEFFqztYAhhKhFY6/frontend/server-side-rendering:react-js:after-js.json
rename to _next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/server-side-rendering:react-js:after-js.json
diff --git a/_next/data/w7DhkIEFFqztYAhhKhFY6/frontend/server-side-rendering:react-js:next-js.json b/_next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/server-side-rendering:react-js:next-js.json
similarity index 100%
rename from _next/data/w7DhkIEFFqztYAhhKhFY6/frontend/server-side-rendering:react-js:next-js.json
rename to _next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/server-side-rendering:react-js:next-js.json
diff --git a/_next/data/w7DhkIEFFqztYAhhKhFY6/frontend/server-side-rendering:vue-js.json b/_next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/server-side-rendering:vue-js.json
similarity index 100%
rename from _next/data/w7DhkIEFFqztYAhhKhFY6/frontend/server-side-rendering:vue-js.json
rename to _next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/server-side-rendering:vue-js.json
diff --git a/_next/data/w7DhkIEFFqztYAhhKhFY6/frontend/server-side-rendering:vue-js:nuxt-js.json b/_next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/server-side-rendering:vue-js:nuxt-js.json
similarity index 100%
rename from _next/data/w7DhkIEFFqztYAhhKhFY6/frontend/server-side-rendering:vue-js:nuxt-js.json
rename to _next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/server-side-rendering:vue-js:nuxt-js.json
diff --git a/_next/data/w7DhkIEFFqztYAhhKhFY6/frontend/static-site-generators.json b/_next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/static-site-generators.json
similarity index 100%
rename from _next/data/w7DhkIEFFqztYAhhKhFY6/frontend/static-site-generators.json
rename to _next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/static-site-generators.json
diff --git a/_next/data/w7DhkIEFFqztYAhhKhFY6/frontend/static-site-generators:eleventy.json b/_next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/static-site-generators:eleventy.json
similarity index 100%
rename from _next/data/w7DhkIEFFqztYAhhKhFY6/frontend/static-site-generators:eleventy.json
rename to _next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/static-site-generators:eleventy.json
diff --git a/_next/data/w7DhkIEFFqztYAhhKhFY6/frontend/static-site-generators:gatsbyjs.json b/_next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/static-site-generators:gatsbyjs.json
similarity index 100%
rename from _next/data/w7DhkIEFFqztYAhhKhFY6/frontend/static-site-generators:gatsbyjs.json
rename to _next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/static-site-generators:gatsbyjs.json
diff --git a/_next/data/w7DhkIEFFqztYAhhKhFY6/frontend/static-site-generators:gridsome.json b/_next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/static-site-generators:gridsome.json
similarity index 100%
rename from _next/data/w7DhkIEFFqztYAhhKhFY6/frontend/static-site-generators:gridsome.json
rename to _next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/static-site-generators:gridsome.json
diff --git a/_next/data/w7DhkIEFFqztYAhhKhFY6/frontend/static-site-generators:hugo.json b/_next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/static-site-generators:hugo.json
similarity index 100%
rename from _next/data/w7DhkIEFFqztYAhhKhFY6/frontend/static-site-generators:hugo.json
rename to _next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/static-site-generators:hugo.json
diff --git a/_next/data/w7DhkIEFFqztYAhhKhFY6/frontend/static-site-generators:jekyll.json b/_next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/static-site-generators:jekyll.json
similarity index 100%
rename from _next/data/w7DhkIEFFqztYAhhKhFY6/frontend/static-site-generators:jekyll.json
rename to _next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/static-site-generators:jekyll.json
diff --git a/_next/data/w7DhkIEFFqztYAhhKhFY6/frontend/static-site-generators:next-js.json b/_next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/static-site-generators:next-js.json
similarity index 100%
rename from _next/data/w7DhkIEFFqztYAhhKhFY6/frontend/static-site-generators:next-js.json
rename to _next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/static-site-generators:next-js.json
diff --git a/_next/data/w7DhkIEFFqztYAhhKhFY6/frontend/static-site-generators:nuxt-js.json b/_next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/static-site-generators:nuxt-js.json
similarity index 100%
rename from _next/data/w7DhkIEFFqztYAhhKhFY6/frontend/static-site-generators:nuxt-js.json
rename to _next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/static-site-generators:nuxt-js.json
diff --git a/_next/data/w7DhkIEFFqztYAhhKhFY6/frontend/static-site-generators:vuepress.json b/_next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/static-site-generators:vuepress.json
similarity index 100%
rename from _next/data/w7DhkIEFFqztYAhhKhFY6/frontend/static-site-generators:vuepress.json
rename to _next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/static-site-generators:vuepress.json
diff --git a/_next/data/w7DhkIEFFqztYAhhKhFY6/frontend/testing-your-apps.json b/_next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/testing-your-apps.json
similarity index 100%
rename from _next/data/w7DhkIEFFqztYAhhKhFY6/frontend/testing-your-apps.json
rename to _next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/testing-your-apps.json
diff --git a/_next/data/w7DhkIEFFqztYAhhKhFY6/frontend/testing-your-apps:ava.json b/_next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/testing-your-apps:ava.json
similarity index 100%
rename from _next/data/w7DhkIEFFqztYAhhKhFY6/frontend/testing-your-apps:ava.json
rename to _next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/testing-your-apps:ava.json
diff --git a/_next/data/w7DhkIEFFqztYAhhKhFY6/frontend/testing-your-apps:chai.json b/_next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/testing-your-apps:chai.json
similarity index 100%
rename from _next/data/w7DhkIEFFqztYAhhKhFY6/frontend/testing-your-apps:chai.json
rename to _next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/testing-your-apps:chai.json
diff --git a/_next/data/w7DhkIEFFqztYAhhKhFY6/frontend/testing-your-apps:cypress.json b/_next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/testing-your-apps:cypress.json
similarity index 100%
rename from _next/data/w7DhkIEFFqztYAhhKhFY6/frontend/testing-your-apps:cypress.json
rename to _next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/testing-your-apps:cypress.json
diff --git a/_next/data/w7DhkIEFFqztYAhhKhFY6/frontend/testing-your-apps:enzyme.json b/_next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/testing-your-apps:enzyme.json
similarity index 100%
rename from _next/data/w7DhkIEFFqztYAhhKhFY6/frontend/testing-your-apps:enzyme.json
rename to _next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/testing-your-apps:enzyme.json
diff --git a/_next/data/w7DhkIEFFqztYAhhKhFY6/frontend/testing-your-apps:jasmine.json b/_next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/testing-your-apps:jasmine.json
similarity index 100%
rename from _next/data/w7DhkIEFFqztYAhhKhFY6/frontend/testing-your-apps:jasmine.json
rename to _next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/testing-your-apps:jasmine.json
diff --git a/_next/data/w7DhkIEFFqztYAhhKhFY6/frontend/testing-your-apps:jest.json b/_next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/testing-your-apps:jest.json
similarity index 100%
rename from _next/data/w7DhkIEFFqztYAhhKhFY6/frontend/testing-your-apps:jest.json
rename to _next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/testing-your-apps:jest.json
diff --git a/_next/data/w7DhkIEFFqztYAhhKhFY6/frontend/testing-your-apps:mocha.json b/_next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/testing-your-apps:mocha.json
similarity index 100%
rename from _next/data/w7DhkIEFFqztYAhhKhFY6/frontend/testing-your-apps:mocha.json
rename to _next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/testing-your-apps:mocha.json
diff --git a/_next/data/w7DhkIEFFqztYAhhKhFY6/frontend/testing-your-apps:other-options.json b/_next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/testing-your-apps:other-options.json
similarity index 100%
rename from _next/data/w7DhkIEFFqztYAhhKhFY6/frontend/testing-your-apps:other-options.json
rename to _next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/testing-your-apps:other-options.json
diff --git a/_next/data/w7DhkIEFFqztYAhhKhFY6/frontend/testing-your-apps:react-testing-library.json b/_next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/testing-your-apps:react-testing-library.json
similarity index 100%
rename from _next/data/w7DhkIEFFqztYAhhKhFY6/frontend/testing-your-apps:react-testing-library.json
rename to _next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/testing-your-apps:react-testing-library.json
diff --git a/_next/data/w7DhkIEFFqztYAhhKhFY6/frontend/type-checkers.json b/_next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/type-checkers.json
similarity index 100%
rename from _next/data/w7DhkIEFFqztYAhhKhFY6/frontend/type-checkers.json
rename to _next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/type-checkers.json
diff --git a/_next/data/w7DhkIEFFqztYAhhKhFY6/frontend/type-checkers:flow.json b/_next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/type-checkers:flow.json
similarity index 100%
rename from _next/data/w7DhkIEFFqztYAhhKhFY6/frontend/type-checkers:flow.json
rename to _next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/type-checkers:flow.json
diff --git a/_next/data/w7DhkIEFFqztYAhhKhFY6/frontend/type-checkers:typescript.json b/_next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/type-checkers:typescript.json
similarity index 100%
rename from _next/data/w7DhkIEFFqztYAhhKhFY6/frontend/type-checkers:typescript.json
rename to _next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/type-checkers:typescript.json
diff --git a/_next/data/w7DhkIEFFqztYAhhKhFY6/frontend/version-control-systems.json b/_next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/version-control-systems.json
similarity index 100%
rename from _next/data/w7DhkIEFFqztYAhhKhFY6/frontend/version-control-systems.json
rename to _next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/version-control-systems.json
diff --git a/_next/data/w7DhkIEFFqztYAhhKhFY6/frontend/version-control-systems:basic-usage-of-git.json b/_next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/version-control-systems:basic-usage-of-git.json
similarity index 100%
rename from _next/data/w7DhkIEFFqztYAhhKhFY6/frontend/version-control-systems:basic-usage-of-git.json
rename to _next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/version-control-systems:basic-usage-of-git.json
diff --git a/_next/data/w7DhkIEFFqztYAhhKhFY6/frontend/web-assembly.json b/_next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/web-assembly.json
similarity index 100%
rename from _next/data/w7DhkIEFFqztYAhhKhFY6/frontend/web-assembly.json
rename to _next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/web-assembly.json
diff --git a/_next/data/w7DhkIEFFqztYAhhKhFY6/frontend/web-components.json b/_next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/web-components.json
similarity index 100%
rename from _next/data/w7DhkIEFFqztYAhhKhFY6/frontend/web-components.json
rename to _next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/web-components.json
diff --git a/_next/data/w7DhkIEFFqztYAhhKhFY6/frontend/web-components:custom-elements.json b/_next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/web-components:custom-elements.json
similarity index 100%
rename from _next/data/w7DhkIEFFqztYAhhKhFY6/frontend/web-components:custom-elements.json
rename to _next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/web-components:custom-elements.json
diff --git a/_next/data/w7DhkIEFFqztYAhhKhFY6/frontend/web-components:html-templates.json b/_next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/web-components:html-templates.json
similarity index 100%
rename from _next/data/w7DhkIEFFqztYAhhKhFY6/frontend/web-components:html-templates.json
rename to _next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/web-components:html-templates.json
diff --git a/_next/data/w7DhkIEFFqztYAhhKhFY6/frontend/web-components:shadow-dom.json b/_next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/web-components:shadow-dom.json
similarity index 100%
rename from _next/data/w7DhkIEFFqztYAhhKhFY6/frontend/web-components:shadow-dom.json
rename to _next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/web-components:shadow-dom.json
diff --git a/_next/data/w7DhkIEFFqztYAhhKhFY6/frontend/web-security-knowledge.json b/_next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/web-security-knowledge.json
similarity index 100%
rename from _next/data/w7DhkIEFFqztYAhhKhFY6/frontend/web-security-knowledge.json
rename to _next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/web-security-knowledge.json
diff --git a/_next/data/w7DhkIEFFqztYAhhKhFY6/frontend/web-security-knowledge:content-security-policy.json b/_next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/web-security-knowledge:content-security-policy.json
similarity index 100%
rename from _next/data/w7DhkIEFFqztYAhhKhFY6/frontend/web-security-knowledge:content-security-policy.json
rename to _next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/web-security-knowledge:content-security-policy.json
diff --git a/_next/data/w7DhkIEFFqztYAhhKhFY6/frontend/web-security-knowledge:cors.json b/_next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/web-security-knowledge:cors.json
similarity index 100%
rename from _next/data/w7DhkIEFFqztYAhhKhFY6/frontend/web-security-knowledge:cors.json
rename to _next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/web-security-knowledge:cors.json
diff --git a/_next/data/w7DhkIEFFqztYAhhKhFY6/frontend/web-security-knowledge:https.json b/_next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/web-security-knowledge:https.json
similarity index 100%
rename from _next/data/w7DhkIEFFqztYAhhKhFY6/frontend/web-security-knowledge:https.json
rename to _next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/web-security-knowledge:https.json
diff --git a/_next/data/w7DhkIEFFqztYAhhKhFY6/frontend/web-security-knowledge:owasp-security-risks.json b/_next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/web-security-knowledge:owasp-security-risks.json
similarity index 100%
rename from _next/data/w7DhkIEFFqztYAhhKhFY6/frontend/web-security-knowledge:owasp-security-risks.json
rename to _next/data/8K0mB_qvDLRSxoIbV30Xo/frontend/web-security-knowledge:owasp-security-risks.json
diff --git a/_next/data/w7DhkIEFFqztYAhhKhFY6/golang.json b/_next/data/8K0mB_qvDLRSxoIbV30Xo/golang.json
similarity index 100%
rename from _next/data/w7DhkIEFFqztYAhhKhFY6/golang.json
rename to _next/data/8K0mB_qvDLRSxoIbV30Xo/golang.json
diff --git a/_next/data/w7DhkIEFFqztYAhhKhFY6/golang/golang.json b/_next/data/8K0mB_qvDLRSxoIbV30Xo/golang/golang.json
similarity index 100%
rename from _next/data/w7DhkIEFFqztYAhhKhFY6/golang/golang.json
rename to _next/data/8K0mB_qvDLRSxoIbV30Xo/golang/golang.json
diff --git a/_next/data/w7DhkIEFFqztYAhhKhFY6/golang/interactive.json b/_next/data/8K0mB_qvDLRSxoIbV30Xo/golang/interactive.json
similarity index 100%
rename from _next/data/w7DhkIEFFqztYAhhKhFY6/golang/interactive.json
rename to _next/data/8K0mB_qvDLRSxoIbV30Xo/golang/interactive.json
diff --git a/_next/data/w7DhkIEFFqztYAhhKhFY6/golang/resources.json b/_next/data/8K0mB_qvDLRSxoIbV30Xo/golang/resources.json
similarity index 100%
rename from _next/data/w7DhkIEFFqztYAhhKhFY6/golang/resources.json
rename to _next/data/8K0mB_qvDLRSxoIbV30Xo/golang/resources.json
diff --git a/_next/data/w7DhkIEFFqztYAhhKhFY6/guides.json b/_next/data/8K0mB_qvDLRSxoIbV30Xo/guides.json
similarity index 100%
rename from _next/data/w7DhkIEFFqztYAhhKhFY6/guides.json
rename to _next/data/8K0mB_qvDLRSxoIbV30Xo/guides.json
diff --git a/_next/data/w7DhkIEFFqztYAhhKhFY6/guides/asymptotic-notation.json b/_next/data/8K0mB_qvDLRSxoIbV30Xo/guides/asymptotic-notation.json
similarity index 100%
rename from _next/data/w7DhkIEFFqztYAhhKhFY6/guides/asymptotic-notation.json
rename to _next/data/8K0mB_qvDLRSxoIbV30Xo/guides/asymptotic-notation.json
diff --git a/_next/data/w7DhkIEFFqztYAhhKhFY6/guides/avoid-render-blocking-javascript-with-async-defer.json b/_next/data/8K0mB_qvDLRSxoIbV30Xo/guides/avoid-render-blocking-javascript-with-async-defer.json
similarity index 100%
rename from _next/data/w7DhkIEFFqztYAhhKhFY6/guides/avoid-render-blocking-javascript-with-async-defer.json
rename to _next/data/8K0mB_qvDLRSxoIbV30Xo/guides/avoid-render-blocking-javascript-with-async-defer.json
diff --git a/_next/data/w7DhkIEFFqztYAhhKhFY6/guides/basic-authentication.json b/_next/data/8K0mB_qvDLRSxoIbV30Xo/guides/basic-authentication.json
similarity index 100%
rename from _next/data/w7DhkIEFFqztYAhhKhFY6/guides/basic-authentication.json
rename to _next/data/8K0mB_qvDLRSxoIbV30Xo/guides/basic-authentication.json
diff --git a/_next/data/w7DhkIEFFqztYAhhKhFY6/guides/big-o-notation.json b/_next/data/8K0mB_qvDLRSxoIbV30Xo/guides/big-o-notation.json
similarity index 100%
rename from _next/data/w7DhkIEFFqztYAhhKhFY6/guides/big-o-notation.json
rename to _next/data/8K0mB_qvDLRSxoIbV30Xo/guides/big-o-notation.json
diff --git a/_next/data/w7DhkIEFFqztYAhhKhFY6/guides/character-encodings.json b/_next/data/8K0mB_qvDLRSxoIbV30Xo/guides/character-encodings.json
similarity index 100%
rename from _next/data/w7DhkIEFFqztYAhhKhFY6/guides/character-encodings.json
rename to _next/data/8K0mB_qvDLRSxoIbV30Xo/guides/character-encodings.json
diff --git a/_next/data/w7DhkIEFFqztYAhhKhFY6/guides/ci-cd.json b/_next/data/8K0mB_qvDLRSxoIbV30Xo/guides/ci-cd.json
similarity index 100%
rename from _next/data/w7DhkIEFFqztYAhhKhFY6/guides/ci-cd.json
rename to _next/data/8K0mB_qvDLRSxoIbV30Xo/guides/ci-cd.json
diff --git a/_next/data/w7DhkIEFFqztYAhhKhFY6/guides/design-patterns-for-humans.json b/_next/data/8K0mB_qvDLRSxoIbV30Xo/guides/design-patterns-for-humans.json
similarity index 100%
rename from _next/data/w7DhkIEFFqztYAhhKhFY6/guides/design-patterns-for-humans.json
rename to _next/data/8K0mB_qvDLRSxoIbV30Xo/guides/design-patterns-for-humans.json
diff --git a/_next/data/w7DhkIEFFqztYAhhKhFY6/guides/dhcp-in-one-picture.json b/_next/data/8K0mB_qvDLRSxoIbV30Xo/guides/dhcp-in-one-picture.json
similarity index 100%
rename from _next/data/w7DhkIEFFqztYAhhKhFY6/guides/dhcp-in-one-picture.json
rename to _next/data/8K0mB_qvDLRSxoIbV30Xo/guides/dhcp-in-one-picture.json
diff --git a/_next/data/w7DhkIEFFqztYAhhKhFY6/guides/dns-in-one-picture.json b/_next/data/8K0mB_qvDLRSxoIbV30Xo/guides/dns-in-one-picture.json
similarity index 100%
rename from _next/data/w7DhkIEFFqztYAhhKhFY6/guides/dns-in-one-picture.json
rename to _next/data/8K0mB_qvDLRSxoIbV30Xo/guides/dns-in-one-picture.json
diff --git a/_next/data/w7DhkIEFFqztYAhhKhFY6/guides/history-of-javascript.json b/_next/data/8K0mB_qvDLRSxoIbV30Xo/guides/history-of-javascript.json
similarity index 100%
rename from _next/data/w7DhkIEFFqztYAhhKhFY6/guides/history-of-javascript.json
rename to _next/data/8K0mB_qvDLRSxoIbV30Xo/guides/history-of-javascript.json
diff --git a/_next/data/w7DhkIEFFqztYAhhKhFY6/guides/http-caching.json b/_next/data/8K0mB_qvDLRSxoIbV30Xo/guides/http-caching.json
similarity index 100%
rename from _next/data/w7DhkIEFFqztYAhhKhFY6/guides/http-caching.json
rename to _next/data/8K0mB_qvDLRSxoIbV30Xo/guides/http-caching.json
diff --git a/_next/data/w7DhkIEFFqztYAhhKhFY6/guides/jwt-authentication.json b/_next/data/8K0mB_qvDLRSxoIbV30Xo/guides/jwt-authentication.json
similarity index 100%
rename from _next/data/w7DhkIEFFqztYAhhKhFY6/guides/jwt-authentication.json
rename to _next/data/8K0mB_qvDLRSxoIbV30Xo/guides/jwt-authentication.json
diff --git a/_next/data/w7DhkIEFFqztYAhhKhFY6/guides/levels-of-seniority.json b/_next/data/8K0mB_qvDLRSxoIbV30Xo/guides/levels-of-seniority.json
similarity index 100%
rename from _next/data/w7DhkIEFFqztYAhhKhFY6/guides/levels-of-seniority.json
rename to _next/data/8K0mB_qvDLRSxoIbV30Xo/guides/levels-of-seniority.json
diff --git a/_next/data/w7DhkIEFFqztYAhhKhFY6/guides/oauth.json b/_next/data/8K0mB_qvDLRSxoIbV30Xo/guides/oauth.json
similarity index 100%
rename from _next/data/w7DhkIEFFqztYAhhKhFY6/guides/oauth.json
rename to _next/data/8K0mB_qvDLRSxoIbV30Xo/guides/oauth.json
diff --git a/_next/data/w7DhkIEFFqztYAhhKhFY6/guides/proxy-servers.json b/_next/data/8K0mB_qvDLRSxoIbV30Xo/guides/proxy-servers.json
similarity index 100%
rename from _next/data/w7DhkIEFFqztYAhhKhFY6/guides/proxy-servers.json
rename to _next/data/8K0mB_qvDLRSxoIbV30Xo/guides/proxy-servers.json
diff --git a/_next/data/w7DhkIEFFqztYAhhKhFY6/guides/random-numbers.json b/_next/data/8K0mB_qvDLRSxoIbV30Xo/guides/random-numbers.json
similarity index 100%
rename from _next/data/w7DhkIEFFqztYAhhKhFY6/guides/random-numbers.json
rename to _next/data/8K0mB_qvDLRSxoIbV30Xo/guides/random-numbers.json
diff --git a/_next/data/w7DhkIEFFqztYAhhKhFY6/guides/scaling-databases.json b/_next/data/8K0mB_qvDLRSxoIbV30Xo/guides/scaling-databases.json
similarity index 100%
rename from _next/data/w7DhkIEFFqztYAhhKhFY6/guides/scaling-databases.json
rename to _next/data/8K0mB_qvDLRSxoIbV30Xo/guides/scaling-databases.json
diff --git a/_next/data/w7DhkIEFFqztYAhhKhFY6/guides/session-authentication.json b/_next/data/8K0mB_qvDLRSxoIbV30Xo/guides/session-authentication.json
similarity index 100%
rename from _next/data/w7DhkIEFFqztYAhhKhFY6/guides/session-authentication.json
rename to _next/data/8K0mB_qvDLRSxoIbV30Xo/guides/session-authentication.json
diff --git a/_next/data/w7DhkIEFFqztYAhhKhFY6/guides/ssl-tls-https-ssh.json b/_next/data/8K0mB_qvDLRSxoIbV30Xo/guides/ssl-tls-https-ssh.json
similarity index 100%
rename from _next/data/w7DhkIEFFqztYAhhKhFY6/guides/ssl-tls-https-ssh.json
rename to _next/data/8K0mB_qvDLRSxoIbV30Xo/guides/ssl-tls-https-ssh.json
diff --git a/_next/data/w7DhkIEFFqztYAhhKhFY6/guides/sso.json b/_next/data/8K0mB_qvDLRSxoIbV30Xo/guides/sso.json
similarity index 100%
rename from _next/data/w7DhkIEFFqztYAhhKhFY6/guides/sso.json
rename to _next/data/8K0mB_qvDLRSxoIbV30Xo/guides/sso.json
diff --git a/_next/data/w7DhkIEFFqztYAhhKhFY6/guides/token-authentication.json b/_next/data/8K0mB_qvDLRSxoIbV30Xo/guides/token-authentication.json
similarity index 100%
rename from _next/data/w7DhkIEFFqztYAhhKhFY6/guides/token-authentication.json
rename to _next/data/8K0mB_qvDLRSxoIbV30Xo/guides/token-authentication.json
diff --git a/_next/data/w7DhkIEFFqztYAhhKhFY6/guides/torrent-client.json b/_next/data/8K0mB_qvDLRSxoIbV30Xo/guides/torrent-client.json
similarity index 100%
rename from _next/data/w7DhkIEFFqztYAhhKhFY6/guides/torrent-client.json
rename to _next/data/8K0mB_qvDLRSxoIbV30Xo/guides/torrent-client.json
diff --git a/_next/data/w7DhkIEFFqztYAhhKhFY6/guides/unfamiliar-codebase.json b/_next/data/8K0mB_qvDLRSxoIbV30Xo/guides/unfamiliar-codebase.json
similarity index 100%
rename from _next/data/w7DhkIEFFqztYAhhKhFY6/guides/unfamiliar-codebase.json
rename to _next/data/8K0mB_qvDLRSxoIbV30Xo/guides/unfamiliar-codebase.json
diff --git a/_next/data/w7DhkIEFFqztYAhhKhFY6/guides/what-are-web-vitals.json b/_next/data/8K0mB_qvDLRSxoIbV30Xo/guides/what-are-web-vitals.json
similarity index 100%
rename from _next/data/w7DhkIEFFqztYAhhKhFY6/guides/what-are-web-vitals.json
rename to _next/data/8K0mB_qvDLRSxoIbV30Xo/guides/what-are-web-vitals.json
diff --git a/_next/data/w7DhkIEFFqztYAhhKhFY6/guides/what-is-internet.json b/_next/data/8K0mB_qvDLRSxoIbV30Xo/guides/what-is-internet.json
similarity index 100%
rename from _next/data/w7DhkIEFFqztYAhhKhFY6/guides/what-is-internet.json
rename to _next/data/8K0mB_qvDLRSxoIbV30Xo/guides/what-is-internet.json
diff --git a/_next/data/w7DhkIEFFqztYAhhKhFY6/guides/what-is-sli-slo-sla.json b/_next/data/8K0mB_qvDLRSxoIbV30Xo/guides/what-is-sli-slo-sla.json
similarity index 100%
rename from _next/data/w7DhkIEFFqztYAhhKhFY6/guides/what-is-sli-slo-sla.json
rename to _next/data/8K0mB_qvDLRSxoIbV30Xo/guides/what-is-sli-slo-sla.json
diff --git a/_next/data/w7DhkIEFFqztYAhhKhFY6/guides/why-build-it-and-they-will-come-wont-work-anymore.json b/_next/data/8K0mB_qvDLRSxoIbV30Xo/guides/why-build-it-and-they-will-come-wont-work-anymore.json
similarity index 100%
rename from _next/data/w7DhkIEFFqztYAhhKhFY6/guides/why-build-it-and-they-will-come-wont-work-anymore.json
rename to _next/data/8K0mB_qvDLRSxoIbV30Xo/guides/why-build-it-and-they-will-come-wont-work-anymore.json
diff --git a/_next/data/w7DhkIEFFqztYAhhKhFY6/index.json b/_next/data/8K0mB_qvDLRSxoIbV30Xo/index.json
similarity index 100%
rename from _next/data/w7DhkIEFFqztYAhhKhFY6/index.json
rename to _next/data/8K0mB_qvDLRSxoIbV30Xo/index.json
diff --git a/_next/data/w7DhkIEFFqztYAhhKhFY6/java.json b/_next/data/8K0mB_qvDLRSxoIbV30Xo/java.json
similarity index 100%
rename from _next/data/w7DhkIEFFqztYAhhKhFY6/java.json
rename to _next/data/8K0mB_qvDLRSxoIbV30Xo/java.json
diff --git a/_next/data/w7DhkIEFFqztYAhhKhFY6/java/interactive.json b/_next/data/8K0mB_qvDLRSxoIbV30Xo/java/interactive.json
similarity index 100%
rename from _next/data/w7DhkIEFFqztYAhhKhFY6/java/interactive.json
rename to _next/data/8K0mB_qvDLRSxoIbV30Xo/java/interactive.json
diff --git a/_next/data/w7DhkIEFFqztYAhhKhFY6/java/java.json b/_next/data/8K0mB_qvDLRSxoIbV30Xo/java/java.json
similarity index 100%
rename from _next/data/w7DhkIEFFqztYAhhKhFY6/java/java.json
rename to _next/data/8K0mB_qvDLRSxoIbV30Xo/java/java.json
diff --git a/_next/data/w7DhkIEFFqztYAhhKhFY6/java/resources.json b/_next/data/8K0mB_qvDLRSxoIbV30Xo/java/resources.json
similarity index 100%
rename from _next/data/w7DhkIEFFqztYAhhKhFY6/java/resources.json
rename to _next/data/8K0mB_qvDLRSxoIbV30Xo/java/resources.json
diff --git a/_next/data/w7DhkIEFFqztYAhhKhFY6/postgresql-dba.json b/_next/data/8K0mB_qvDLRSxoIbV30Xo/postgresql-dba.json
similarity index 100%
rename from _next/data/w7DhkIEFFqztYAhhKhFY6/postgresql-dba.json
rename to _next/data/8K0mB_qvDLRSxoIbV30Xo/postgresql-dba.json
diff --git a/_next/data/w7DhkIEFFqztYAhhKhFY6/postgresql-dba/interactive.json b/_next/data/8K0mB_qvDLRSxoIbV30Xo/postgresql-dba/interactive.json
similarity index 100%
rename from _next/data/w7DhkIEFFqztYAhhKhFY6/postgresql-dba/interactive.json
rename to _next/data/8K0mB_qvDLRSxoIbV30Xo/postgresql-dba/interactive.json
diff --git a/_next/data/w7DhkIEFFqztYAhhKhFY6/postgresql-dba/postgresql-dba.json b/_next/data/8K0mB_qvDLRSxoIbV30Xo/postgresql-dba/postgresql-dba.json
similarity index 100%
rename from _next/data/w7DhkIEFFqztYAhhKhFY6/postgresql-dba/postgresql-dba.json
rename to _next/data/8K0mB_qvDLRSxoIbV30Xo/postgresql-dba/postgresql-dba.json
diff --git a/_next/data/w7DhkIEFFqztYAhhKhFY6/postgresql-dba/resources.json b/_next/data/8K0mB_qvDLRSxoIbV30Xo/postgresql-dba/resources.json
similarity index 100%
rename from _next/data/w7DhkIEFFqztYAhhKhFY6/postgresql-dba/resources.json
rename to _next/data/8K0mB_qvDLRSxoIbV30Xo/postgresql-dba/resources.json
diff --git a/_next/data/w7DhkIEFFqztYAhhKhFY6/python.json b/_next/data/8K0mB_qvDLRSxoIbV30Xo/python.json
similarity index 100%
rename from _next/data/w7DhkIEFFqztYAhhKhFY6/python.json
rename to _next/data/8K0mB_qvDLRSxoIbV30Xo/python.json
diff --git a/_next/data/w7DhkIEFFqztYAhhKhFY6/python/interactive.json b/_next/data/8K0mB_qvDLRSxoIbV30Xo/python/interactive.json
similarity index 100%
rename from _next/data/w7DhkIEFFqztYAhhKhFY6/python/interactive.json
rename to _next/data/8K0mB_qvDLRSxoIbV30Xo/python/interactive.json
diff --git a/_next/data/w7DhkIEFFqztYAhhKhFY6/python/python.json b/_next/data/8K0mB_qvDLRSxoIbV30Xo/python/python.json
similarity index 100%
rename from _next/data/w7DhkIEFFqztYAhhKhFY6/python/python.json
rename to _next/data/8K0mB_qvDLRSxoIbV30Xo/python/python.json
diff --git a/_next/data/w7DhkIEFFqztYAhhKhFY6/python/resources.json b/_next/data/8K0mB_qvDLRSxoIbV30Xo/python/resources.json
similarity index 100%
rename from _next/data/w7DhkIEFFqztYAhhKhFY6/python/resources.json
rename to _next/data/8K0mB_qvDLRSxoIbV30Xo/python/resources.json
diff --git a/_next/data/w7DhkIEFFqztYAhhKhFY6/qa.json b/_next/data/8K0mB_qvDLRSxoIbV30Xo/qa.json
similarity index 100%
rename from _next/data/w7DhkIEFFqztYAhhKhFY6/qa.json
rename to _next/data/8K0mB_qvDLRSxoIbV30Xo/qa.json
diff --git a/_next/data/w7DhkIEFFqztYAhhKhFY6/qa/interactive.json b/_next/data/8K0mB_qvDLRSxoIbV30Xo/qa/interactive.json
similarity index 100%
rename from _next/data/w7DhkIEFFqztYAhhKhFY6/qa/interactive.json
rename to _next/data/8K0mB_qvDLRSxoIbV30Xo/qa/interactive.json
diff --git a/_next/data/w7DhkIEFFqztYAhhKhFY6/qa/qa.json b/_next/data/8K0mB_qvDLRSxoIbV30Xo/qa/qa.json
similarity index 100%
rename from _next/data/w7DhkIEFFqztYAhhKhFY6/qa/qa.json
rename to _next/data/8K0mB_qvDLRSxoIbV30Xo/qa/qa.json
diff --git a/_next/data/w7DhkIEFFqztYAhhKhFY6/qa/resources.json b/_next/data/8K0mB_qvDLRSxoIbV30Xo/qa/resources.json
similarity index 100%
rename from _next/data/w7DhkIEFFqztYAhhKhFY6/qa/resources.json
rename to _next/data/8K0mB_qvDLRSxoIbV30Xo/qa/resources.json
diff --git a/_next/data/w7DhkIEFFqztYAhhKhFY6/react.json b/_next/data/8K0mB_qvDLRSxoIbV30Xo/react.json
similarity index 100%
rename from _next/data/w7DhkIEFFqztYAhhKhFY6/react.json
rename to _next/data/8K0mB_qvDLRSxoIbV30Xo/react.json
diff --git a/_next/data/w7DhkIEFFqztYAhhKhFY6/react/interactive.json b/_next/data/8K0mB_qvDLRSxoIbV30Xo/react/interactive.json
similarity index 100%
rename from _next/data/w7DhkIEFFqztYAhhKhFY6/react/interactive.json
rename to _next/data/8K0mB_qvDLRSxoIbV30Xo/react/interactive.json
diff --git a/_next/data/w7DhkIEFFqztYAhhKhFY6/react/react.json b/_next/data/8K0mB_qvDLRSxoIbV30Xo/react/react.json
similarity index 100%
rename from _next/data/w7DhkIEFFqztYAhhKhFY6/react/react.json
rename to _next/data/8K0mB_qvDLRSxoIbV30Xo/react/react.json
diff --git a/_next/data/w7DhkIEFFqztYAhhKhFY6/react/resources.json b/_next/data/8K0mB_qvDLRSxoIbV30Xo/react/resources.json
similarity index 100%
rename from _next/data/w7DhkIEFFqztYAhhKhFY6/react/resources.json
rename to _next/data/8K0mB_qvDLRSxoIbV30Xo/react/resources.json
diff --git a/_next/data/w7DhkIEFFqztYAhhKhFY6/roadmaps.json b/_next/data/8K0mB_qvDLRSxoIbV30Xo/roadmaps.json
similarity index 100%
rename from _next/data/w7DhkIEFFqztYAhhKhFY6/roadmaps.json
rename to _next/data/8K0mB_qvDLRSxoIbV30Xo/roadmaps.json
diff --git a/_next/data/w7DhkIEFFqztYAhhKhFY6/watch.json b/_next/data/8K0mB_qvDLRSxoIbV30Xo/watch.json
similarity index 100%
rename from _next/data/w7DhkIEFFqztYAhhKhFY6/watch.json
rename to _next/data/8K0mB_qvDLRSxoIbV30Xo/watch.json
diff --git a/_next/data/w7DhkIEFFqztYAhhKhFY6/watch/acid-explained.json b/_next/data/8K0mB_qvDLRSxoIbV30Xo/watch/acid-explained.json
similarity index 100%
rename from _next/data/w7DhkIEFFqztYAhhKhFY6/watch/acid-explained.json
rename to _next/data/8K0mB_qvDLRSxoIbV30Xo/watch/acid-explained.json
diff --git a/_next/data/w7DhkIEFFqztYAhhKhFY6/watch/all-about-http-caching.json b/_next/data/8K0mB_qvDLRSxoIbV30Xo/watch/all-about-http-caching.json
similarity index 100%
rename from _next/data/w7DhkIEFFqztYAhhKhFY6/watch/all-about-http-caching.json
rename to _next/data/8K0mB_qvDLRSxoIbV30Xo/watch/all-about-http-caching.json
diff --git a/_next/data/w7DhkIEFFqztYAhhKhFY6/watch/arrays-and-objects-in-javascript.json b/_next/data/8K0mB_qvDLRSxoIbV30Xo/watch/arrays-and-objects-in-javascript.json
similarity index 100%
rename from _next/data/w7DhkIEFFqztYAhhKhFY6/watch/arrays-and-objects-in-javascript.json
rename to _next/data/8K0mB_qvDLRSxoIbV30Xo/watch/arrays-and-objects-in-javascript.json
diff --git a/_next/data/w7DhkIEFFqztYAhhKhFY6/watch/async-javascript.json b/_next/data/8K0mB_qvDLRSxoIbV30Xo/watch/async-javascript.json
similarity index 100%
rename from _next/data/w7DhkIEFFqztYAhhKhFY6/watch/async-javascript.json
rename to _next/data/8K0mB_qvDLRSxoIbV30Xo/watch/async-javascript.json
diff --git a/_next/data/w7DhkIEFFqztYAhhKhFY6/watch/big-o-notation.json b/_next/data/8K0mB_qvDLRSxoIbV30Xo/watch/big-o-notation.json
similarity index 100%
rename from _next/data/w7DhkIEFFqztYAhhKhFY6/watch/big-o-notation.json
rename to _next/data/8K0mB_qvDLRSxoIbV30Xo/watch/big-o-notation.json
diff --git a/_next/data/w7DhkIEFFqztYAhhKhFY6/watch/content-delivery-networks.json b/_next/data/8K0mB_qvDLRSxoIbV30Xo/watch/content-delivery-networks.json
similarity index 100%
rename from _next/data/w7DhkIEFFqztYAhhKhFY6/watch/content-delivery-networks.json
rename to _next/data/8K0mB_qvDLRSxoIbV30Xo/watch/content-delivery-networks.json
diff --git a/_next/data/w7DhkIEFFqztYAhhKhFY6/watch/dns-explained.json b/_next/data/8K0mB_qvDLRSxoIbV30Xo/watch/dns-explained.json
similarity index 100%
rename from _next/data/w7DhkIEFFqztYAhhKhFY6/watch/dns-explained.json
rename to _next/data/8K0mB_qvDLRSxoIbV30Xo/watch/dns-explained.json
diff --git a/_next/data/w7DhkIEFFqztYAhhKhFY6/watch/dns-records.json b/_next/data/8K0mB_qvDLRSxoIbV30Xo/watch/dns-records.json
similarity index 100%
rename from _next/data/w7DhkIEFFqztYAhhKhFY6/watch/dns-records.json
rename to _next/data/8K0mB_qvDLRSxoIbV30Xo/watch/dns-records.json
diff --git a/_next/data/w7DhkIEFFqztYAhhKhFY6/watch/floating-point-arithmetic.json b/_next/data/8K0mB_qvDLRSxoIbV30Xo/watch/floating-point-arithmetic.json
similarity index 100%
rename from _next/data/w7DhkIEFFqztYAhhKhFY6/watch/floating-point-arithmetic.json
rename to _next/data/8K0mB_qvDLRSxoIbV30Xo/watch/floating-point-arithmetic.json
diff --git a/_next/data/w7DhkIEFFqztYAhhKhFY6/watch/freeze-and-seal-objects-in-javascript.json b/_next/data/8K0mB_qvDLRSxoIbV30Xo/watch/freeze-and-seal-objects-in-javascript.json
similarity index 100%
rename from _next/data/w7DhkIEFFqztYAhhKhFY6/watch/freeze-and-seal-objects-in-javascript.json
rename to _next/data/8K0mB_qvDLRSxoIbV30Xo/watch/freeze-and-seal-objects-in-javascript.json
diff --git a/_next/data/w7DhkIEFFqztYAhhKhFY6/watch/how-to-use-css-variables.json b/_next/data/8K0mB_qvDLRSxoIbV30Xo/watch/how-to-use-css-variables.json
similarity index 100%
rename from _next/data/w7DhkIEFFqztYAhhKhFY6/watch/how-to-use-css-variables.json
rename to _next/data/8K0mB_qvDLRSxoIbV30Xo/watch/how-to-use-css-variables.json
diff --git a/_next/data/w7DhkIEFFqztYAhhKhFY6/watch/how-to-use-github-actions.json b/_next/data/8K0mB_qvDLRSxoIbV30Xo/watch/how-to-use-github-actions.json
similarity index 100%
rename from _next/data/w7DhkIEFFqztYAhhKhFY6/watch/how-to-use-github-actions.json
rename to _next/data/8K0mB_qvDLRSxoIbV30Xo/watch/how-to-use-github-actions.json
diff --git a/_next/data/w7DhkIEFFqztYAhhKhFY6/watch/javascript-fetch-api.json b/_next/data/8K0mB_qvDLRSxoIbV30Xo/watch/javascript-fetch-api.json
similarity index 100%
rename from _next/data/w7DhkIEFFqztYAhhKhFY6/watch/javascript-fetch-api.json
rename to _next/data/8K0mB_qvDLRSxoIbV30Xo/watch/javascript-fetch-api.json
diff --git a/_next/data/w7DhkIEFFqztYAhhKhFY6/watch/load-balancers-101.json b/_next/data/8K0mB_qvDLRSxoIbV30Xo/watch/load-balancers-101.json
similarity index 100%
rename from _next/data/w7DhkIEFFqztYAhhKhFY6/watch/load-balancers-101.json
rename to _next/data/8K0mB_qvDLRSxoIbV30Xo/watch/load-balancers-101.json
diff --git a/_next/data/w7DhkIEFFqztYAhhKhFY6/watch/osi-model.json b/_next/data/8K0mB_qvDLRSxoIbV30Xo/watch/osi-model.json
similarity index 100%
rename from _next/data/w7DhkIEFFqztYAhhKhFY6/watch/osi-model.json
rename to _next/data/8K0mB_qvDLRSxoIbV30Xo/watch/osi-model.json
diff --git a/_next/data/w7DhkIEFFqztYAhhKhFY6/watch/practical-intro-to-react.json b/_next/data/8K0mB_qvDLRSxoIbV30Xo/watch/practical-intro-to-react.json
similarity index 100%
rename from _next/data/w7DhkIEFFqztYAhhKhFY6/watch/practical-intro-to-react.json
rename to _next/data/8K0mB_qvDLRSxoIbV30Xo/watch/practical-intro-to-react.json
diff --git a/_next/data/w7DhkIEFFqztYAhhKhFY6/watch/promises-in-javascript.json b/_next/data/8K0mB_qvDLRSxoIbV30Xo/watch/promises-in-javascript.json
similarity index 100%
rename from _next/data/w7DhkIEFFqztYAhhKhFY6/watch/promises-in-javascript.json
rename to _next/data/8K0mB_qvDLRSxoIbV30Xo/watch/promises-in-javascript.json
diff --git a/_next/data/w7DhkIEFFqztYAhhKhFY6/watch/random-number-generators.json b/_next/data/8K0mB_qvDLRSxoIbV30Xo/watch/random-number-generators.json
similarity index 100%
rename from _next/data/w7DhkIEFFqztYAhhKhFY6/watch/random-number-generators.json
rename to _next/data/8K0mB_qvDLRSxoIbV30Xo/watch/random-number-generators.json
diff --git a/_next/data/w7DhkIEFFqztYAhhKhFY6/watch/scaling-the-unscalable.json b/_next/data/8K0mB_qvDLRSxoIbV30Xo/watch/scaling-the-unscalable.json
similarity index 100%
rename from _next/data/w7DhkIEFFqztYAhhKhFY6/watch/scaling-the-unscalable.json
rename to _next/data/8K0mB_qvDLRSxoIbV30Xo/watch/scaling-the-unscalable.json
diff --git a/_next/data/w7DhkIEFFqztYAhhKhFY6/watch/ssh-ssl-tls.json b/_next/data/8K0mB_qvDLRSxoIbV30Xo/watch/ssh-ssl-tls.json
similarity index 100%
rename from _next/data/w7DhkIEFFqztYAhhKhFY6/watch/ssh-ssl-tls.json
rename to _next/data/8K0mB_qvDLRSxoIbV30Xo/watch/ssh-ssl-tls.json
diff --git a/_next/data/w7DhkIEFFqztYAhhKhFY6/watch/system-design-101.json b/_next/data/8K0mB_qvDLRSxoIbV30Xo/watch/system-design-101.json
similarity index 100%
rename from _next/data/w7DhkIEFFqztYAhhKhFY6/watch/system-design-101.json
rename to _next/data/8K0mB_qvDLRSxoIbV30Xo/watch/system-design-101.json
diff --git a/_next/data/w7DhkIEFFqztYAhhKhFY6/watch/tcp-ip-model.json b/_next/data/8K0mB_qvDLRSxoIbV30Xo/watch/tcp-ip-model.json
similarity index 100%
rename from _next/data/w7DhkIEFFqztYAhhKhFY6/watch/tcp-ip-model.json
rename to _next/data/8K0mB_qvDLRSxoIbV30Xo/watch/tcp-ip-model.json
diff --git a/_next/data/w7DhkIEFFqztYAhhKhFY6/watch/transport-protocols-tcp-vs-udp.json b/_next/data/8K0mB_qvDLRSxoIbV30Xo/watch/transport-protocols-tcp-vs-udp.json
similarity index 100%
rename from _next/data/w7DhkIEFFqztYAhhKhFY6/watch/transport-protocols-tcp-vs-udp.json
rename to _next/data/8K0mB_qvDLRSxoIbV30Xo/watch/transport-protocols-tcp-vs-udp.json
diff --git a/_next/data/w7DhkIEFFqztYAhhKhFY6/watch/what-are-data-structures.json b/_next/data/8K0mB_qvDLRSxoIbV30Xo/watch/what-are-data-structures.json
similarity index 100%
rename from _next/data/w7DhkIEFFqztYAhhKhFY6/watch/what-are-data-structures.json
rename to _next/data/8K0mB_qvDLRSxoIbV30Xo/watch/what-are-data-structures.json
diff --git a/_next/data/w7DhkIEFFqztYAhhKhFY6/watch/what-is-cap-theorem.json b/_next/data/8K0mB_qvDLRSxoIbV30Xo/watch/what-is-cap-theorem.json
similarity index 100%
rename from _next/data/w7DhkIEFFqztYAhhKhFY6/watch/what-is-cap-theorem.json
rename to _next/data/8K0mB_qvDLRSxoIbV30Xo/watch/what-is-cap-theorem.json
diff --git a/_next/data/w7DhkIEFFqztYAhhKhFY6/watch/what-is-dependency-injection.json b/_next/data/8K0mB_qvDLRSxoIbV30Xo/watch/what-is-dependency-injection.json
similarity index 100%
rename from _next/data/w7DhkIEFFqztYAhhKhFY6/watch/what-is-dependency-injection.json
rename to _next/data/8K0mB_qvDLRSxoIbV30Xo/watch/what-is-dependency-injection.json
diff --git a/_next/data/w7DhkIEFFqztYAhhKhFY6/watch/what-is-dom-shadow-dom-virtual-dom.json b/_next/data/8K0mB_qvDLRSxoIbV30Xo/watch/what-is-dom-shadow-dom-virtual-dom.json
similarity index 100%
rename from _next/data/w7DhkIEFFqztYAhhKhFY6/watch/what-is-dom-shadow-dom-virtual-dom.json
rename to _next/data/8K0mB_qvDLRSxoIbV30Xo/watch/what-is-dom-shadow-dom-virtual-dom.json
diff --git a/_next/data/w7DhkIEFFqztYAhhKhFY6/watch/what-is-eventual-consistency.json b/_next/data/8K0mB_qvDLRSxoIbV30Xo/watch/what-is-eventual-consistency.json
similarity index 100%
rename from _next/data/w7DhkIEFFqztYAhhKhFY6/watch/what-is-eventual-consistency.json
rename to _next/data/8K0mB_qvDLRSxoIbV30Xo/watch/what-is-eventual-consistency.json
diff --git a/_next/data/w7DhkIEFFqztYAhhKhFY6/watch/yaml-in-depth.json b/_next/data/8K0mB_qvDLRSxoIbV30Xo/watch/yaml-in-depth.json
similarity index 100%
rename from _next/data/w7DhkIEFFqztYAhhKhFY6/watch/yaml-in-depth.json
rename to _next/data/8K0mB_qvDLRSxoIbV30Xo/watch/yaml-in-depth.json
diff --git a/_next/static/w7DhkIEFFqztYAhhKhFY6/_buildManifest.js b/_next/static/8K0mB_qvDLRSxoIbV30Xo/_buildManifest.js
similarity index 96%
rename from _next/static/w7DhkIEFFqztYAhhKhFY6/_buildManifest.js
rename to _next/static/8K0mB_qvDLRSxoIbV30Xo/_buildManifest.js
index 321ace456..ac34638e2 100644
--- a/_next/static/w7DhkIEFFqztYAhhKhFY6/_buildManifest.js
+++ b/_next/static/8K0mB_qvDLRSxoIbV30Xo/_buildManifest.js
@@ -1 +1 @@
-self.__BUILD_MANIFEST=function(s,a,c,e,t,i,u,r,d,p){return{__rewrites:{beforeFiles:[],afterFiles:[],fallback:[]},"/":[s,r,a,"static/chunks/pages/index-d7cc540b30e34661.js"],"/_error":["static/chunks/pages/_error-2280fa386d040b66.js"],"/about":[s,c,a,"static/chunks/pages/about-0e68523d85ec1337.js"],"/guides":[s,a,"static/chunks/pages/guides-a446a06b367081ec.js"],"/guides/[guide]":[s,c,a,e,"static/chunks/pages/guides/[guide]-97b3e15727bf199f.js"],"/privacy":[s,c,a,"static/chunks/pages/privacy-d450f0c302fb89c4.js"],"/roadmaps":[s,r,a,"static/chunks/pages/roadmaps-9740eedd6239df0c.js"],"/signup":[s,"static/chunks/18-03837ae87ec2cbe1.js",a,"static/chunks/pages/signup-adbf1143e131779e.js"],"/terms":[s,c,a,t,"static/chunks/pages/terms-196efeb1dd0f7cf6.js"],"/thanks":[s,a,"static/chunks/pages/thanks-26ff5d3350adc104.js"],"/watch":[s,a,"static/chunks/pages/watch-ecf973a57f0563b8.js"],"/watch/[video]":[s,c,a,i,"static/chunks/pages/watch/[video]-cd516fc7091c7930.js"],"/[roadmap]":[s,c,d,a,e,i,t,u,p,"static/chunks/pages/[roadmap]-cf8858c8e645a516.js"],"/[roadmap]/interactive":[s,c,d,a,e,i,t,u,p,"static/chunks/pages/[roadmap]/interactive-b9a8f86dbdca433e.js"],"/[roadmap]/resources":[s,c,a,e,i,t,u,"static/chunks/pages/[roadmap]/resources-f7959140898a0e1e.js"],"/[roadmap]/[group]":[s,c,a,e,i,t,u,"static/chunks/pages/[roadmap]/[group]-cb1a19cd75e10c50.js"],sortedPages:["/","/_app","/_error","/about","/guides","/guides/[guide]","/privacy","/roadmaps","/signup","/terms","/thanks","/watch","/watch/[video]","/[roadmap]","/[roadmap]/interactive","/[roadmap]/resources","/[roadmap]/[group]"]}}("static/chunks/680-be87eefc1f260b8f.js","static/chunks/515-03e473b12fcdafc8.js","static/chunks/22-5e16bc1f52d67473.js","static/chunks/564-488e034de771830c.js","static/chunks/547-f266cbae5dda46b7.js","static/chunks/321-b1786ff8ce0bbe8f.js","static/chunks/280-c016580891b226d4.js","static/chunks/919-5389e043b494ad49.js","static/chunks/26-f1efe05501904fc9.js","static/chunks/714-31059ea85ce0d232.js"),self.__BUILD_MANIFEST_CB&&self.__BUILD_MANIFEST_CB();
\ No newline at end of file
+self.__BUILD_MANIFEST=function(s,a,c,e,t,i,u,r,d,p){return{__rewrites:{beforeFiles:[],afterFiles:[],fallback:[]},"/":[s,r,a,"static/chunks/pages/index-d7cc540b30e34661.js"],"/_error":["static/chunks/pages/_error-2280fa386d040b66.js"],"/about":[s,c,a,"static/chunks/pages/about-0e68523d85ec1337.js"],"/guides":[s,a,"static/chunks/pages/guides-a446a06b367081ec.js"],"/guides/[guide]":[s,c,a,e,"static/chunks/pages/guides/[guide]-97b3e15727bf199f.js"],"/privacy":[s,c,a,"static/chunks/pages/privacy-d450f0c302fb89c4.js"],"/roadmaps":[s,r,a,"static/chunks/pages/roadmaps-9740eedd6239df0c.js"],"/signup":[s,"static/chunks/18-03837ae87ec2cbe1.js",a,"static/chunks/pages/signup-adbf1143e131779e.js"],"/terms":[s,c,a,t,"static/chunks/pages/terms-196efeb1dd0f7cf6.js"],"/thanks":[s,a,"static/chunks/pages/thanks-26ff5d3350adc104.js"],"/watch":[s,a,"static/chunks/pages/watch-ecf973a57f0563b8.js"],"/watch/[video]":[s,c,a,i,"static/chunks/pages/watch/[video]-cd516fc7091c7930.js"],"/[roadmap]":[s,c,d,a,e,i,t,u,p,"static/chunks/pages/[roadmap]-cf8858c8e645a516.js"],"/[roadmap]/interactive":[s,c,d,a,e,i,t,u,p,"static/chunks/pages/[roadmap]/interactive-b9a8f86dbdca433e.js"],"/[roadmap]/resources":[s,c,a,e,i,t,u,"static/chunks/pages/[roadmap]/resources-f7959140898a0e1e.js"],"/[roadmap]/[group]":[s,c,a,e,i,t,u,"static/chunks/pages/[roadmap]/[group]-cb1a19cd75e10c50.js"],sortedPages:["/","/_app","/_error","/about","/guides","/guides/[guide]","/privacy","/roadmaps","/signup","/terms","/thanks","/watch","/watch/[video]","/[roadmap]","/[roadmap]/interactive","/[roadmap]/resources","/[roadmap]/[group]"]}}("static/chunks/680-be87eefc1f260b8f.js","static/chunks/515-03e473b12fcdafc8.js","static/chunks/22-5e16bc1f52d67473.js","static/chunks/564-488e034de771830c.js","static/chunks/547-f266cbae5dda46b7.js","static/chunks/321-b1786ff8ce0bbe8f.js","static/chunks/280-3242aa1c10b08f97.js","static/chunks/919-5389e043b494ad49.js","static/chunks/26-f1efe05501904fc9.js","static/chunks/714-31059ea85ce0d232.js"),self.__BUILD_MANIFEST_CB&&self.__BUILD_MANIFEST_CB();
\ No newline at end of file
diff --git a/_next/static/w7DhkIEFFqztYAhhKhFY6/_middlewareManifest.js b/_next/static/8K0mB_qvDLRSxoIbV30Xo/_middlewareManifest.js
similarity index 100%
rename from _next/static/w7DhkIEFFqztYAhhKhFY6/_middlewareManifest.js
rename to _next/static/8K0mB_qvDLRSxoIbV30Xo/_middlewareManifest.js
diff --git a/_next/static/w7DhkIEFFqztYAhhKhFY6/_ssgManifest.js b/_next/static/8K0mB_qvDLRSxoIbV30Xo/_ssgManifest.js
similarity index 100%
rename from _next/static/w7DhkIEFFqztYAhhKhFY6/_ssgManifest.js
rename to _next/static/8K0mB_qvDLRSxoIbV30Xo/_ssgManifest.js
diff --git a/_next/static/chunks/280-c016580891b226d4.js b/_next/static/chunks/280-3242aa1c10b08f97.js
similarity index 53%
rename from _next/static/chunks/280-c016580891b226d4.js
rename to _next/static/chunks/280-3242aa1c10b08f97.js
index 62ea64e93..fbf3b96c4 100644
--- a/_next/static/chunks/280-c016580891b226d4.js
+++ b/_next/static/chunks/280-3242aa1c10b08f97.js
@@ -1 +1 @@
-(self.webpackChunk_N_E=self.webpackChunk_N_E||[]).push([[280],{9280:function(e,t,n){var r={"./authors":8712,"./authors.json":8712,"./guides":9552,"./guides.json":9552,"./guides/asymptotic-notation.md":3070,"./guides/avoid-render-blocking-javascript-with-async-defer.md":8829,"./guides/basic-authentication.md":5151,"./guides/big-o-notation.md":5198,"./guides/character-encodings.md":3180,"./guides/ci-cd.md":7354,"./guides/design-patterns-for-humans.md":3406,"./guides/dhcp-in-one-picture.md":3784,"./guides/dns-in-one-picture.md":9937,"./guides/history-of-javascript.md":8003,"./guides/http-caching.md":9128,"./guides/journey-to-http2.md":3045,"./guides/jwt-authentication.md":5772,"./guides/levels-of-seniority.md":3878,"./guides/oauth.md":801,"./guides/project-history.md":6681,"./guides/proxy-servers.md":7035,"./guides/random-numbers.md":513,"./guides/scaling-databases.md":7507,"./guides/session-authentication.md":8676,"./guides/ssl-tls-https-ssh.md":6053,"./guides/sso.md":9809,"./guides/token-authentication.md":5607,"./guides/torrent-client.md":4972,"./guides/unfamiliar-codebase.md":5941,"./guides/upcoming.md":5104,"./guides/what-are-web-vitals.md":3442,"./guides/what-is-internet.md":1470,"./guides/what-is-sli-slo-sla.md":1307,"./guides/why-build-it-and-they-will-come-wont-work-anymore.md":9554,"./pages/about.md":4160,"./pages/privacy.md":5591,"./pages/terms.md":2547,"./roadmaps":1662,"./roadmaps.json":1662,"./roadmaps/100-frontend/content-paths":8359,"./roadmaps/100-frontend/content-paths.json":8359,"./roadmaps/100-frontend/content/100-internet/100-how-does-the-internet-work.md":5606,"./roadmaps/100-frontend/content/100-internet/101-what-is-http.md":181,"./roadmaps/100-frontend/content/100-internet/102-browsers-and-how-they-work.md":6152,"./roadmaps/100-frontend/content/100-internet/103-dns-and-how-it-works.md":3405,"./roadmaps/100-frontend/content/100-internet/104-what-is-domain-name.md":2222,"./roadmaps/100-frontend/content/100-internet/105-what-is-hosting.md":8129,"./roadmaps/100-frontend/content/100-internet/readme.md":2633,"./roadmaps/100-frontend/content/101-html/100-learn-the-basics.md":7828,"./roadmaps/100-frontend/content/101-html/101-writing-semantic-html.md":258,"./roadmaps/100-frontend/content/101-html/102-forms-and-validations.md":757,"./roadmaps/100-frontend/content/101-html/103-conventions-and-best-practices.md":1881,"./roadmaps/100-frontend/content/101-html/104-accessibility.md":3699,"./roadmaps/100-frontend/content/101-html/105-seo-basics.md":584,"./roadmaps/100-frontend/content/101-html/readme.md":3913,"./roadmaps/100-frontend/content/102-css/100-learn-the-basics.md":8533,"./roadmaps/100-frontend/content/102-css/101-making-layouts.md":3780,"./roadmaps/100-frontend/content/102-css/102-responsive-design-and-media-queries.md":1118,"./roadmaps/100-frontend/content/102-css/readme.md":5211,"./roadmaps/100-frontend/content/103-javascript/100-syntax-and-basic-constructs.md":617,"./roadmaps/100-frontend/content/103-javascript/101-learn-dom-manipulation.md":1569,"./roadmaps/100-frontend/content/103-javascript/102-learn-fetch-api-ajax-xhr.md":4746,"./roadmaps/100-frontend/content/103-javascript/103-es6-and-modular-javascript.md":6401,"./roadmaps/100-frontend/content/103-javascript/104-concepts.md":2698,"./roadmaps/100-frontend/content/103-javascript/readme.md":8613,"./roadmaps/100-frontend/content/104-version-control-systems/100-basic-usage-of-git.md":2555,"./roadmaps/100-frontend/content/104-version-control-systems/readme.md":8405,"./roadmaps/100-frontend/content/105-repo-hosting-services/100-github.md":8548,"./roadmaps/100-frontend/content/105-repo-hosting-services/101-gitlab.md":1952,"./roadmaps/100-frontend/content/105-repo-hosting-services/102-bitbucket.md":6145,"./roadmaps/100-frontend/content/105-repo-hosting-services/readme.md":493,"./roadmaps/100-frontend/content/106-web-security-knowledge/100-https.md":2510,"./roadmaps/100-frontend/content/106-web-security-knowledge/101-content-security-policy.md":9377,"./roadmaps/100-frontend/content/106-web-security-knowledge/102-cors.md":8705,"./roadmaps/100-frontend/content/106-web-security-knowledge/103-owasp-security-risks.md":8633,"./roadmaps/100-frontend/content/106-web-security-knowledge/readme.md":9012,"./roadmaps/100-frontend/content/107-package-managers/100-npm.md":1415,"./roadmaps/100-frontend/content/107-package-managers/101-yarn.md":6356,"./roadmaps/100-frontend/content/107-package-managers/readme.md":8988,"./roadmaps/100-frontend/content/108-css-architecture/100-bem.md":6665,"./roadmaps/100-frontend/content/108-css-architecture/101-oocss.md":1750,"./roadmaps/100-frontend/content/108-css-architecture/102-smacss.md":8887,"./roadmaps/100-frontend/content/108-css-architecture/readme.md":5220,"./roadmaps/100-frontend/content/109-css-preprocessors/100-sass.md":4447,"./roadmaps/100-frontend/content/109-css-preprocessors/101-postcss.md":5106,"./roadmaps/100-frontend/content/109-css-preprocessors/102-less.md":2972,"./roadmaps/100-frontend/content/109-css-preprocessors/readme.md":8365,"./roadmaps/100-frontend/content/110-build-tools/100-task-runners/100-npm-scripts.md":6523,"./roadmaps/100-frontend/content/110-build-tools/100-task-runners/readme.md":8664,"./roadmaps/100-frontend/content/110-build-tools/101-module-bundlers/100-webpack.md":6795,"./roadmaps/100-frontend/content/110-build-tools/101-module-bundlers/101-esbuild.md":9500,"./roadmaps/100-frontend/content/110-build-tools/101-module-bundlers/102-rollup.md":5629,"./roadmaps/100-frontend/content/110-build-tools/101-module-bundlers/103-parcel.md":5648,"./roadmaps/100-frontend/content/110-build-tools/101-module-bundlers/104-vite.md":762,"./roadmaps/100-frontend/content/110-build-tools/101-module-bundlers/readme.md":6459,"./roadmaps/100-frontend/content/110-build-tools/102-linters-formatters/100-prettier.md":840,"./roadmaps/100-frontend/content/110-build-tools/102-linters-formatters/101-eslint.md":2816,"./roadmaps/100-frontend/content/110-build-tools/102-linters-formatters/102-standardjs.md":4453,"./roadmaps/100-frontend/content/110-build-tools/102-linters-formatters/readme.md":2310,"./roadmaps/100-frontend/content/110-build-tools/readme.md":7093,"./roadmaps/100-frontend/content/111-pick-a-framework/100-react-js/100-redux.md":7139,"./roadmaps/100-frontend/content/111-pick-a-framework/100-react-js/101-mobx.md":5783,"./roadmaps/100-frontend/content/111-pick-a-framework/100-react-js/102-recoil.md":7810,"./roadmaps/100-frontend/content/111-pick-a-framework/100-react-js/readme.md":6199,"./roadmaps/100-frontend/content/111-pick-a-framework/101-angular/100-rxjs.md":5685,"./roadmaps/100-frontend/content/111-pick-a-framework/101-angular/101-ngrx.md":3162,"./roadmaps/100-frontend/content/111-pick-a-framework/101-angular/readme.md":3666,"./roadmaps/100-frontend/content/111-pick-a-framework/102-vue-js/100-vuex.md":549,"./roadmaps/100-frontend/content/111-pick-a-framework/102-vue-js/readme.md":5277,"./roadmaps/100-frontend/content/111-pick-a-framework/readme.md":1473,"./roadmaps/100-frontend/content/112-modern-css/100-styled-components.md":3745,"./roadmaps/100-frontend/content/112-modern-css/101-css-modules.md":1720,"./roadmaps/100-frontend/content/112-modern-css/102-styled-jsx.md":4349,"./roadmaps/100-frontend/content/112-modern-css/103-emotion.md":4291,"./roadmaps/100-frontend/content/112-modern-css/readme.md":9904,"./roadmaps/100-frontend/content/113-web-components/100-html-templates.md":1484,"./roadmaps/100-frontend/content/113-web-components/101-custom-elements.md":6625,"./roadmaps/100-frontend/content/113-web-components/102-shadow-dom.md":2901,"./roadmaps/100-frontend/content/113-web-components/readme.md":8933,"./roadmaps/100-frontend/content/114-css-frameworks/114-css-first/100-bootstrap.md":4642,"./roadmaps/100-frontend/content/114-css-frameworks/114-css-first/101-bulma.md":4505,"./roadmaps/100-frontend/content/114-css-frameworks/114-css-first/readme.md":4740,"./roadmaps/100-frontend/content/114-css-frameworks/114-js-first/100-tailwind-css.md":1160,"./roadmaps/100-frontend/content/114-css-frameworks/114-js-first/101-chakra-ui.md":6937,"./roadmaps/100-frontend/content/114-css-frameworks/114-js-first/102-material-ui.md":9120,"./roadmaps/100-frontend/content/114-css-frameworks/114-js-first/103-radix-ui.md":3694,"./roadmaps/100-frontend/content/114-css-frameworks/114-js-first/readme.md":7562,"./roadmaps/100-frontend/content/114-css-frameworks/readme.md":1879,"./roadmaps/100-frontend/content/115-testing-your-apps/100-jest.md":5996,"./roadmaps/100-frontend/content/115-testing-your-apps/101-react-testing-library.md":2772,"./roadmaps/100-frontend/content/115-testing-your-apps/102-cypress.md":3431,"./roadmaps/100-frontend/content/115-testing-your-apps/103-enzyme.md":4375,"./roadmaps/100-frontend/content/115-testing-your-apps/104-other-options.md":4946,"./roadmaps/100-frontend/content/115-testing-your-apps/105-mocha.md":9011,"./roadmaps/100-frontend/content/115-testing-your-apps/106-chai.md":5136,"./roadmaps/100-frontend/content/115-testing-your-apps/107-ava.md":327,"./roadmaps/100-frontend/content/115-testing-your-apps/108-jasmine.md":8976,"./roadmaps/100-frontend/content/115-testing-your-apps/readme.md":5770,"./roadmaps/100-frontend/content/116-type-checkers/100-typescript.md":3227,"./roadmaps/100-frontend/content/116-type-checkers/101-flow.md":9935,"./roadmaps/100-frontend/content/116-type-checkers/readme.md":8323,"./roadmaps/100-frontend/content/117-progressive-web-apps/100-apis.md":4990,"./roadmaps/100-frontend/content/117-progressive-web-apps/101-performance.md":5089,"./roadmaps/100-frontend/content/117-progressive-web-apps/readme.md":2768,"./roadmaps/100-frontend/content/118-server-side-rendering/100-react-js/100-next-js.md":9086,"./roadmaps/100-frontend/content/118-server-side-rendering/100-react-js/101-after-js.md":4930,"./roadmaps/100-frontend/content/118-server-side-rendering/100-react-js/readme.md":8747,"./roadmaps/100-frontend/content/118-server-side-rendering/101-angular/100-universal.md":7815,"./roadmaps/100-frontend/content/118-server-side-rendering/101-angular/readme.md":6394,"./roadmaps/100-frontend/content/118-server-side-rendering/102-vue-js/100-nuxt-js.md":2573,"./roadmaps/100-frontend/content/118-server-side-rendering/102-vue-js/readme.md":5137,"./roadmaps/100-frontend/content/118-server-side-rendering/readme.md":1905,"./roadmaps/100-frontend/content/119-graphql/100-apollo.md":410,"./roadmaps/100-frontend/content/119-graphql/101-relay-modern.md":485,"./roadmaps/100-frontend/content/119-graphql/readme.md":4133,"./roadmaps/100-frontend/content/120-static-site-generators/100-next-js.md":7935,"./roadmaps/100-frontend/content/120-static-site-generators/101-gatsbyjs.md":1291,"./roadmaps/100-frontend/content/120-static-site-generators/102-nuxt-js.md":855,"./roadmaps/100-frontend/content/120-static-site-generators/103-vuepress.md":2374,"./roadmaps/100-frontend/content/120-static-site-generators/104-jekyll.md":1898,"./roadmaps/100-frontend/content/120-static-site-generators/105-hugo.md":355,"./roadmaps/100-frontend/content/120-static-site-generators/106-gridsome.md":2578,"./roadmaps/100-frontend/content/120-static-site-generators/107-eleventy.md":476,"./roadmaps/100-frontend/content/120-static-site-generators/readme.md":5470,"./roadmaps/100-frontend/content/121-mobile-applications/100-react-native.md":2919,"./roadmaps/100-frontend/content/121-mobile-applications/101-nativescript.md":5760,"./roadmaps/100-frontend/content/121-mobile-applications/102-flutter.md":9268,"./roadmaps/100-frontend/content/121-mobile-applications/103-ionic.md":7280,"./roadmaps/100-frontend/content/121-mobile-applications/readme.md":388,"./roadmaps/100-frontend/content/122-desktop-applications/100-electron.md":7137,"./roadmaps/100-frontend/content/122-desktop-applications/101-carlo.md":373,"./roadmaps/100-frontend/content/122-desktop-applications/102-proton-native.md":5588,"./roadmaps/100-frontend/content/122-desktop-applications/readme.md":8773,"./roadmaps/100-frontend/content/123-web-assembly.md":9429,"./roadmaps/100-frontend/content/readme.md":7086,"./roadmaps/100-frontend/meta":9258,"./roadmaps/100-frontend/meta.json":9258,"./roadmaps/100-frontend/resources.md":7083,"./roadmaps/101-backend/meta":6782,"./roadmaps/101-backend/meta.json":6782,"./roadmaps/101-backend/resources.md":8093,"./roadmaps/102-devops/meta":4017,"./roadmaps/102-devops/meta.json":4017,"./roadmaps/102-devops/resources.md":5332,"./roadmaps/103-react/landscape.md":4558,"./roadmaps/103-react/meta":8477,"./roadmaps/103-react/meta.json":8477,"./roadmaps/103-react/resources.md":63,"./roadmaps/104-angular/landscape.md":595,"./roadmaps/104-angular/meta":8834,"./roadmaps/104-angular/meta.json":8834,"./roadmaps/104-angular/resources.md":7489,"./roadmaps/105-android/landscape.md":5191,"./roadmaps/105-android/meta":9508,"./roadmaps/105-android/meta.json":9508,"./roadmaps/105-android/resources.md":7890,"./roadmaps/106-python/landscape.md":9556,"./roadmaps/106-python/meta":4099,"./roadmaps/106-python/meta.json":4099,"./roadmaps/106-python/resources.md":8481,"./roadmaps/107-golang/landscape.md":2388,"./roadmaps/107-golang/meta":2737,"./roadmaps/107-golang/meta.json":2737,"./roadmaps/107-golang/resources.md":9101,"./roadmaps/108-java/landscape.md":7913,"./roadmaps/108-java/meta":2507,"./roadmaps/108-java/meta.json":2507,"./roadmaps/108-java/resources.md":9673,"./roadmaps/109-postgresql-dba/landscape.md":1464,"./roadmaps/109-postgresql-dba/meta":8951,"./roadmaps/109-postgresql-dba/meta.json":8951,"./roadmaps/109-postgresql-dba/resources.md":1545,"./roadmaps/110-aws/landscape.md":8188,"./roadmaps/110-aws/meta":7559,"./roadmaps/110-aws/meta.json":7559,"./roadmaps/110-aws/resources.md":1048,"./roadmaps/111-qa/landscape.md":4894,"./roadmaps/111-qa/meta":3204,"./roadmaps/111-qa/meta.json":3204,"./roadmaps/111-qa/resources.md":9598,"./site":8641,"./site.json":8641,"./videos":1797,"./videos.json":1797,"./videos/acid-explained.md":8974,"./videos/all-about-http-caching.md":3730,"./videos/arrays-and-objects-in-javascript.md":7589,"./videos/async-javascript.md":8001,"./videos/big-o-notation.md":6736,"./videos/content-delivery-networks.md":5489,"./videos/dns-explained.md":9029,"./videos/dns-records.md":4046,"./videos/floating-point-arithmetic.md":7327,"./videos/freeze-and-seal-objects-in-javascript.md":6527,"./videos/how-to-use-css-variables.md":5512,"./videos/how-to-use-github-actions.md":8688,"./videos/javascript-fetch-api.md":965,"./videos/load-balancers-101.md":2012,"./videos/osi-model.md":5495,"./videos/practical-intro-to-react.md":4913,"./videos/promises-in-javascript.md":7e3,"./videos/random-number-generators.md":1516,"./videos/scaling-the-unscalable.md":7850,"./videos/ssh-ssl-tls.md":9345,"./videos/system-design-101.md":5069,"./videos/tcp-ip-model.md":1559,"./videos/transport-protocols-tcp-vs-udp.md":2382,"./videos/what-are-data-structures.md":8496,"./videos/what-is-cap-theorem.md":5875,"./videos/what-is-dependency-injection.md":2635,"./videos/what-is-dom-shadow-dom-virtual-dom.md":6095,"./videos/what-is-eventual-consistency.md":2068,"./videos/yaml-in-depth.md":6372};function o(e){var t=a(e);return n(t)}function a(e){if(!n.o(r,e)){var t=new Error("Cannot find module '"+e+"'");throw t.code="MODULE_NOT_FOUND",t}return r[e]}o.keys=function(){return Object.keys(r)},o.resolve=a,e.exports=o,o.id=9280},4160:function(e,t,n){"use strict";n.r(t),n.d(t,{default:function(){return s}});n(7294);var r=n(4137);function o(e,t){if(null==e)return{};var n,r,o=function(e,t){if(null==e)return{};var n,r,o={},a=Object.keys(e);for(r=0;r=0||(o[n]=e[n]);return o}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}var a={};function s(e){var t=e.components,n=o(e,["components"]);return(0,r.kt)("wrapper",Object.assign({},a,n,{components:t,mdxType:"MDXLayout"}),(0,r.kt)("h2",null,"What is roadmap.sh?"),(0,r.kt)("p",null,"Roadmap.sh is the place containing community curated roadmaps, study plans, paths and resources for the budding\ndevelopers. It started as a ",(0,r.kt)("a",Object.assign({parentName:"p"},{href:"https://github.com/kamranahmedse/developer-roadmap"}),"set of charts to guide the developers"),"\nwho are confused about what should they learn next but that alone wasn't enough so I expanded it into the website to get\nmore contributors involved."),(0,r.kt)("h2",null,"What are the plans for roadmap.sh?"),(0,r.kt)("p",null,"The website started off as\na ",(0,r.kt)("a",Object.assign({parentName:"p"},{href:"https://github.com/kamranahmedse/developer-roadmap"}),"simple repository containing a few charts")," for developers and\nbased on my personal opinions but it could have been much more than that so I decided to expand it to a website where\npeople can contribute to study plans with their areas of expertise as well, add more roadmaps, write guides etc."),(0,r.kt)("p",null,"We haven't opened up the sign ups for now but we will be doing. My long term plans for this website are to turn it into\na goto place for the developers to seek guidance about their careers, help others, share their journeys, incentivize the\nlearnings, get feedbacks on their projects etc."),(0,r.kt)("h2",null,"How did you build roadmap.sh?"),(0,r.kt)("p",null,"The basic version of the website has been built with ",(0,r.kt)("a",Object.assign({parentName:"p"},{href:"https://github.com/zeit/next.js/"}),"Next.js"),", is opensource and can\nbe found on ",(0,r.kt)("a",Object.assign({parentName:"p"},{href:"https://github.com/kamranahmedse/developer-roadmap"}),"github"),". It was hastily done to get it out in front of the\npeople and get people to start contributing, so it might be rough on the edges, but that is where we need your help."),(0,r.kt)("h2",null,"How does it make money?"),(0,r.kt)("p",null,"It doesn't make any money. I have been using my personal time and budget to build it. I did not create this website with\nany intentions of monetization but as a good will, to help the people get out of the frustration that I was once in."),(0,r.kt)("p",null,"Having said that, I love teaching and my future plans are to be able to work full-time on roadmap.sh for which it has to\nmake enough money to pay for my rent, groceries, bills, travel expenses, etc but even if it doesn't it's likely I'll\ncontinue growing the site however I can. My focus at the moment is not making money from it and just add content that\ncreates value for the people."),(0,r.kt)("blockquote",null,(0,r.kt)("p",{parentName:"blockquote"},"Sponsor the efforts by ",(0,r.kt)("a",Object.assign({parentName:"p"},{href:"https://github.com/sponsors/kamranahmedse"}),"paying as little as 5$ per month")," or with ",(0,r.kt)("a",Object.assign({parentName:"p"},{href:"https://paypal.me/kamranahmedse"}),"one time payment via paypal"),". Alternatively, reach out to me at ",(0,r.kt)("a",Object.assign({parentName:"p"},{href:"mailto:kamranahmed.se@gmail.com"}),"kamranahmed.se@gmail.com"),".")),(0,r.kt)("h2",null,"Can I contribute?"),(0,r.kt)("p",null,"You definitely can, infact you are encouraged to do that. Even your minor contributions such as typo fixes count. The\nsource code of the website can be ",(0,r.kt)("a",Object.assign({parentName:"p"},{href:"https://github.com/kamranahmedse/developer-roadmap"}),"found on Github"),". Your contributions can\nbe:"),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},"Adding a new roadmap"),(0,r.kt)("li",{parentName:"ul"},"Updating existing roadmap"),(0,r.kt)("li",{parentName:"ul"},"Suggesting changes to the existing roadmaps"),(0,r.kt)("li",{parentName:"ul"},"Writing a Guide"),(0,r.kt)("li",{parentName:"ul"},"Updating an existing guide"),(0,r.kt)("li",{parentName:"ul"},"Fixing grammar mistakes, typos on the website or the content"),(0,r.kt)("li",{parentName:"ul"},"Updating the UI of the website"),(0,r.kt)("li",{parentName:"ul"},"Refactoring the codebase"),(0,r.kt)("li",{parentName:"ul"},"Becoming a sponsor")),(0,r.kt)("p",null,"Just make sure\nto ",(0,r.kt)("a",Object.assign({parentName:"p"},{href:"https://github.com/kamranahmedse/developer-roadmap/tree/master/contributing"}),"follow the contribution guidelines")," when you\ndecide to contribute."),(0,r.kt)("h2",null,"Can I redistribute the content?"),(0,r.kt)("p",null,"No, the license of the content on this website does not allow you to redistribute any of the content on this website\nanywhere. You can use it for personal use or share the link to the content if you have to but redistribution is not\nallowed."),(0,r.kt)("h2",null,"What is the best way to contact you?"),(0,r.kt)("p",null,"Tweet or send me a message ",(0,r.kt)("a",Object.assign({parentName:"p"},{href:"https://twitter.com/kamranahmedse"}),"@kamranahmedse")," or email me\nat ",(0,r.kt)("a",Object.assign({parentName:"p"},{href:"mailto:kamranahmed.se@gmail.com"}),"kamranahmed.se@gmail.com"),". I get lots of messages so apologies in advance if you don't hear back\nfrom me soon but I do reply to everyone."))}s.isMDXComponent=!0},5591:function(e,t,n){"use strict";n.r(t),n.d(t,{default:function(){return s}});n(7294);var r=n(4137);function o(e,t){if(null==e)return{};var n,r,o=function(e,t){if(null==e)return{};var n,r,o={},a=Object.keys(e);for(r=0;r=0||(o[n]=e[n]);return o}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}var a={};function s(e){var t=e.components,n=o(e,["components"]);return(0,r.kt)("wrapper",Object.assign({},a,n,{components:t,mdxType:"MDXLayout"}),(0,r.kt)("h1",null,"Privacy Policy"),(0,r.kt)("p",null,"By using or accessing the Services in any manner, you acknowledge that you accept the practices and policies outlined in this Privacy Policy, and you hereby consent that we will collect, use, and share your information in the following ways. Remember that your use of roadmap.sh\u2019s Services is at all times subject to the ",(0,r.kt)("a",Object.assign({parentName:"p"},{href:"/terms"}),"Terms of Use"),", which incorporates this Privacy Policy. Any terms we use in this Policy without defining them have the definitions given to them in the Terms of Use."),(0,r.kt)("h2",null,"What does this Privacy Policy cover?"),(0,r.kt)("p",null,'This Privacy Policy covers our treatment of personally identifiable information ("Personal Information") that we gather when you are accessing or using our Services, but not to the practices of companies we don\u2019t own or control, or people that we don\u2019t manage. We gather various types of Personal Information from our users, as explained in more detail below, and we use this Personal Information internally in connection with our Services, including to personalize, provide, and improve our services, to allow you to set up a user account and profile, to contact you and allow other users to contact you, to fulfill your requests for certain products and services, and to analyze how you use the Services. In certain cases, we may also share some Personal Information with third parties, but only as described below.'),(0,r.kt)("p",null,"As noted in the Terms of Use, we do not knowingly collect or solicit personal information from anyone under the age of 13. If you are under 13, please do not attempt to register for the Services or send any personal information about yourself to us. If we learn that we have collected personal information from a child under age 13, we will delete that information as quickly as possible. If you believe that a child under 13 may have provided us personal information, please contact us at ",(0,r.kt)("a",Object.assign({parentName:"p"},{href:"mailto:kamranahmed.se@gmail.com"}),"kamranahmed.se@gmail.com"),"."),(0,r.kt)("h2",null,"Will roadmap.sh ever change this Privacy Policy?"),(0,r.kt)("p",null,"We\u2019re constantly trying to improve our Services, so we may need to change this Privacy Policy from time to time as well, but we will alert you to changes by updating the services on the website, placing a notice on the Services, by sending you an email, and/or by some other means. Please note that if you\u2019ve opted not to receive legal notice emails from us (or you haven\u2019t provided us with your email address), those legal notices will still govern your use of the Services, and you are still responsible for reading and understanding them. If you use the Services after any changes to the Privacy Policy have been posted, that means you agree to all of the changes. Use of information we collect now is subject to the Privacy Policy in effect at the time such information is used or collected."),(0,r.kt)("h2",null,"What Information does roadmap.sh Collect?"),(0,r.kt)("p",null,"Information You Provide to Us:"),(0,r.kt)("p",null,"We receive and store any information you knowingly provide to us. For example, through the registration process and/or through your account settings, we may collect Personal Information such as your name, title, email address, phone number, and third-party account credentials (for example, your log-in credentials for Twitter or other third party sites. If you provide your third-party account credentials to us or otherwise sign in to the Services through a third party site or service, you understand some content and/or information in those accounts (\u201cThird Party Account Information\u201d) may be transmitted into your account with us if you authorize such transmissions], and that Third Party Account Information transmitted to our Services is covered by this Privacy Policy. Certain information may be required to register with us or to take advantage of some of our features."),(0,r.kt)("p",null,"We may communicate with you if you\u2019ve provided us the means to do so. For example, if you\u2019ve given us your email address, we may send you promotional email offers on behalf of other businesses, or email you about your use of the Services. Also, we may receive a confirmation when you open an email from us. This confirmation helps us make our communications with you more interesting and improve our services. If you do not want to receive communications from us, please email us at ",(0,r.kt)("a",Object.assign({parentName:"p"},{href:"mailto:kamranahmed.se@gmail.com"}),"kamranahmed.se@gmail.com"),"."),(0,r.kt)("h2",null,"Information Collected Automatically"),(0,r.kt)("p",null,"Whenever you interact with our Services, we automatically receive and record information on our server logs from your browser or device, which may include your IP address, geolocation data, device identification, \u201ccookie\u201d information, the type of browser and/or device you\u2019re using to access our Services, and the page or feature you requested. \u201cCookies\u201d are identifiers we transfer to your browser or device that allow us to recognize your browser or device and tell us how and when pages and features in our Services are visited and by how many people. You may be able to change the preferences on your browser or device to prevent or limit your device\u2019s acceptance of cookies, but this may prevent you from taking advantage of some of our features. Our advertising partners may also transmit cookies to your browser or device, when you click on ads that appear on the Services. Also if you click on a link to a third party website or service, such third party may also transmit cookies to you. Again, this Privacy Policy does not cover the use of cookies by any third parties, and we aren\u2019t responsible for their privacy policies and practices."),(0,r.kt)("p",null,"When we collect the usage information described above, we only use this data in aggregate form, and not in a manner that would identify you personally. For example, this aggregate data can tell us how often users use a particular feature of the Services, and we can use that knowledge to make the Services interesting to as many users as possible."),(0,r.kt)("h2",null,"Will roadmap.sh Share Any of the Personal Information it Receives?"),(0,r.kt)("p",null,"We may share your Personal Information with third parties as described in this section:"),(0,r.kt)("p",null,"Information that\u2019s no longer personally identifiable. We may anonymize your Personal Information so that you are not individually identified, and provide that information to our partners. We may also provide aggregate usage information to our partners, who may use such information to understand how often and in what ways people use our Services, so that they, too, can provide you with an optimal online experience. However, we never disclose aggregate information to a partner in a manner that would identify you personally, as an individual."),(0,r.kt)("p",null,"Advertisers: We may allow advertisers and/or merchant partners (\u201cAdvertisers\u201d) to choose the demographic information of users who will see their advertisements and/or promotional offers and you agree that we may provide any of the information we have collected from you in non-personally identifiable form to an Advertiser, in order for that Advertiser to select the appropriate audience for those advertisements and/or offers. For example, we might use the fact you are located in San Francisco to show you ads or offers for San Francisco businesses, but we will not tell such businesses who you are. Note that if an advertiser asks us to show an ad to a certain audience or audience segment and you respond to that ad, the advertiser may conclude that you fit the description of the audience they were trying to reach."),(0,r.kt)("p",null,"We may deliver a file to you through the Services (known as a \u201cweb beacon\u201d) from an ad network. Web beacons allow ad networks to provide anonymized, aggregated auditing, research and reporting for us and for advertisers. Web beacons also enable ad networks to serve targeted advertisements to you when you visit other websites. Because your web browser must request these advertisements and web beacons from the ad network\u2019s servers, these companies can view, edit, or set their own cookies, just as if you had requested a web page from their site. You may be able to opt-out of web beacon tracking by adjusting the settings on your browser."),(0,r.kt)("p",null,"Affiliated Businesses: In certain situations, businesses or third party websites we\u2019re affiliated with may sell or provide products or services to you through or in connection with the Services (either alone or jointly with us). You can recognize when an affiliated business is associated with such a transaction or service, and we will share your Personal Information with that affiliated business only to the extent that it is related to such transaction or service. One such service may include the ability for you to automatically transmit Third Party Account Information to your Services profile or to automatically transmit information in your Services profile to your third party account; for example, you may sign into your roadmap.sh account using your Twitter account. We have no control over the policies and practices of third party websites or businesses as to privacy or anything else, so if you choose to take part in any transaction or service relating to an affiliated website or business, please review all such business\u2019 or websites\u2019 policies."),(0,r.kt)("p",null,"Our Agents: We employ other companies and people to perform tasks on our behalf and need to share your information with them to provide products or services to you. Unless we tell you differently, our agents do not have any right to use the Personal Information we share with them beyond what is necessary to assist us."),(0,r.kt)("p",null,"User Profiles and Submissions: Certain user profile information, including your name, location, and any video or image content that such user has uploaded to the Services, may be displayed to other users to facilitate user interaction within the Services or address your request for our services. Please remember that any content you upload to your public user profile, along with any Personal Information or content that you voluntarily disclose online in a manner other users can view (on discussion boards, in messages and chat areas, etc.) becomes publicly available, and can be collected and used by anyone. Your user name may also be displayed to other users if and when you send messages or comments or upload images or videos through the Services and other users can contact you through messages and comments. Additionally, if you sign into the Services through a third party social networking site or service, your list of \u201cfriends\u201d from that site or service may be automatically imported to the Services, and such \u201cfriends,\u201d if they are also registered users of the Services, may be able to access certain non-public information you have entered in your Services user profile. Again, we do not control the policies and practices of any other third party site or service."),(0,r.kt)("p",null,"Business Transfers: We may choose to buy or sell assets. In these types of transactions, customer information is typically one of the business assets that would be transferred. Also, if we (or our assets) are acquired, or if we go out of business, enter bankruptcy, or go through some other change of control, Personal Information could be one of the assets transferred to or acquired by a third party."),(0,r.kt)("p",null,"Protection of roadmap.sh and Others: We reserve the right to access, read, preserve, and disclose any information that we reasonably believe is necessary to comply with law or court order; enforce or apply our terms of use and other agreements; or protect the rights, property, or safety of roadmap.sh, our employees, our users, or others."),(0,r.kt)("h2",null,"Is Personal Information about me secure?"),(0,r.kt)("p",null,"Your account is protected by a password for your privacy and security. If you access your account via a third party site or service, you may have additional or different sign-on protections via that third party site or service. You must prevent unauthorized access to your account and Personal Information by selecting and protecting your password and/or other sign-on mechanism appropriately and limiting access to your computer or device and browser by signing off after you have finished accessing your account. We endeavor to protect the privacy of your account and other Personal Information we hold in our records, but unfortunately, we cannot guarantee complete security. Unauthorized entry or use, hardware or software failure, and other factors, may compromise the security of user information at any time."),(0,r.kt)("h2",null,"What Personal Information can I access?"),(0,r.kt)("p",null,"Through your account settings, you may access, and, in some cases, edit or delete the following information you\u2019ve provided to us:"),(0,r.kt)("ul",null,(0,r.kt)("li",{parentName:"ul"},"first and last name"),(0,r.kt)("li",{parentName:"ul"},"location of residence"),(0,r.kt)("li",{parentName:"ul"},"age or birthday"),(0,r.kt)("li",{parentName:"ul"},"username")),(0,r.kt)("p",null,"The information you can view, update, and delete may change as the Services change. If you have any questions about viewing or updating information we have on file about you, please contact us at ",(0,r.kt)("a",Object.assign({parentName:"p"},{href:"mailto:kamranahmed.se@gmail.com"}),"kamranahmed.se@gmail.com"),"."),(0,r.kt)("p",null,"Under California Civil Code Sections 1798.83-1798.84, California residents are entitled to ask us for a notice identifying the categories of Personal Information which we share with our affiliates and/or third parties for marketing purposes, and providing contact information for such affiliates and/or third parties. If you are a California resident and would like a copy of this notice, please submit a written request to: ",(0,r.kt)("a",Object.assign({parentName:"p"},{href:"mailto:kamranahmed.se@gmail.com"}),"kamranahmed.se@gmail.com"),"."),(0,r.kt)("h2",null,"What choices do I have?"),(0,r.kt)("p",null,"You can always opt not to disclose information to us, but keep in mind some information may be needed to register with us or to take advantage of some of our features."),(0,r.kt)("p",null,"You may be able to add, update, or delete information as explained above. When you update information, however, we may maintain a copy of the unrevised information in our records. You may request deletion of your account by contacting us at ",(0,r.kt)("a",Object.assign({parentName:"p"},{href:"mailto:kamranahmed.se@gmail.com"}),"kamranahmed.se@gmail.com")," and we will disassociate our email address and Twitter account from any content or other information provided to us. Some information may remain in our records after your deletion of such information from your account. We may use any aggregated data derived from or incorporating your Personal Information after you update or delete it, but not in a manner that would identify you personally."),(0,r.kt)("h2",null,"What if I have questions about this policy?"),(0,r.kt)("p",null,"If you have any questions or concerns regarding our privacy policies, please send us a detailed message to ",(0,r.kt)("a",Object.assign({parentName:"p"},{href:"mailto:kamranahmed.se@gmail.com"}),"kamranahmed.se@gmail.com"),", and we will try to resolve your concerns."))}s.isMDXComponent=!0},5606:function(e,t,n){"use strict";n.r(t),n.d(t,{default:function(){return c}});n(7294);var r=n(4137);function o(e,t){if(null==e)return{};var n,r,o=function(e,t){if(null==e)return{};var n,r,o={},a=Object.keys(e);for(r=0;r=0||(o[n]=e[n]);return o}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}var a=function(e){return function(t){return console.warn("Component "+e+" was not imported, exported, or provided by MDXProvider as global scope"),(0,r.kt)("div",Object.assign({},t))}},s=a("ResourceGroupTitle"),i=a("BadgeLink"),l={};function c(e){var t=e.components,n=o(e,["components"]);return(0,r.kt)("wrapper",Object.assign({},l,n,{components:t,mdxType:"MDXLayout"}),(0,r.kt)("h1",null,"Internet"),(0,r.kt)("p",null,"The Internet is a global network of computers connected to each other which communicate through a standardized set of protocols."),(0,r.kt)(s,{mdxType:"ResourceGroupTitle"},"Free Content"),(0,r.kt)(i,{colorScheme:"yellow",badgeText:"Read",href:"https://www.vox.com/2014/6/16/18076282/the-internet",mdxType:"BadgeLink"},"The Internet Explained"),(0,r.kt)(i,{colorScheme:"yellow",badgeText:"Read",href:"http://web.stanford.edu/class/msande91si/www-spr04/readings/week1/InternetWhitepaper.htm",mdxType:"BadgeLink"},"How Does the Internet Work?"),(0,r.kt)(i,{badgeText:"Watch",href:"/guides/what-is-internet",mdxType:"BadgeLink"},"Introduction to Internet"),(0,r.kt)(i,{badgeText:"Watch",href:"https://www.youtube.com/watch?v=x3c1ih2NJEg",mdxType:"BadgeLink"},"How does the Internet work?"),(0,r.kt)(i,{badgeText:"Watch",href:"https://www.youtube.com/watch?v=7_LPdttKXPc",mdxType:"BadgeLink"},"How the Internet Works in 5 Minutes"))}c.isMDXComponent=!0},181:function(e,t,n){"use strict";n.r(t),n.d(t,{default:function(){return c}});n(7294);var r=n(4137);function o(e,t){if(null==e)return{};var n,r,o=function(e,t){if(null==e)return{};var n,r,o={},a=Object.keys(e);for(r=0;r=0||(o[n]=e[n]);return o}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}var a=function(e){return function(t){return console.warn("Component "+e+" was not imported, exported, or provided by MDXProvider as global scope"),(0,r.kt)("div",Object.assign({},t))}},s=a("ResourceGroupTitle"),i=a("BadgeLink"),l={};function c(e){var t=e.components,n=o(e,["components"]);return(0,r.kt)("wrapper",Object.assign({},l,n,{components:t,mdxType:"MDXLayout"}),(0,r.kt)("h1",null,"What is HTTP?"),(0,r.kt)("p",null,"HTTP is the ",(0,r.kt)("inlineCode",{parentName:"p"},"TCP/IP")," based application layer communication protocol which standardizes how the client and server communicate with each other. It defines how the content is requested and transmitted across the internet."),(0,r.kt)(s,{mdxType:"ResourceGroupTitle"},"Free Content"),(0,r.kt)(i,{colorScheme:"yellow",badgeText:"Read",href:"https://www.cloudflare.com/en-gb/learning/ddos/glossary/hypertext-transfer-protocol-http/",mdxType:"BadgeLink"},"What is HTTP?"),(0,r.kt)(i,{colorScheme:"yellow",badgeText:"Read",href:"https://developer.mozilla.org/en-US/docs/Web/HTTP/Overview",mdxType:"BadgeLink"},"An overview of HTTP"),(0,r.kt)(i,{colorScheme:"yellow",badgeText:"Read",href:"https://kamranahmed.info/blog/2016/08/13/http-in-depth/",mdxType:"BadgeLink"},"Journey to HTTP/2"),(0,r.kt)(i,{badgeText:"Watch",href:"https://www.youtube.com/watch?v=iYM2zFP3Zn0",mdxType:"BadgeLink"},"HTTP Crash Course & Exploration"))}c.isMDXComponent=!0},6152:function(e,t,n){"use strict";n.r(t),n.d(t,{default:function(){return c}});n(7294);var r=n(4137);function o(e,t){if(null==e)return{};var n,r,o=function(e,t){if(null==e)return{};var n,r,o={},a=Object.keys(e);for(r=0;r=0||(o[n]=e[n]);return o}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}var a=function(e){return function(t){return console.warn("Component "+e+" was not imported, exported, or provided by MDXProvider as global scope"),(0,r.kt)("div",Object.assign({},t))}},s=a("ResourceGroupTitle"),i=a("BadgeLink"),l={};function c(e){var t=e.components,n=o(e,["components"]);return(0,r.kt)("wrapper",Object.assign({},l,n,{components:t,mdxType:"MDXLayout"}),(0,r.kt)("h1",null,"Browsers"),(0,r.kt)("p",null,"A web browser is a software application that enables a user to access and display web pages or other online content through its graphical user interface. "),(0,r.kt)(s,{mdxType:"ResourceGroupTitle"},"Free Content"),(0,r.kt)(i,{colorScheme:"yellow",badgeText:"Read",href:"https://www.html5rocks.com/en/tutorials/internals/howbrowserswork/",mdxType:"BadgeLink"},"How Browsers Work"),(0,r.kt)(i,{colorScheme:"yellow",badgeText:"Read",href:"https://www.browserstack.com/guide/browser-rendering-engine",mdxType:"BadgeLink"},"Role of Rendering Engine in Browsers"),(0,r.kt)(i,{colorScheme:"yellow",badgeText:"Read",href:"https://developer.mozilla.org/en-US/docs/Web/Performance/How_browsers_work",mdxType:"BadgeLink"},"Populating the Page: How Browsers Work"))}c.isMDXComponent=!0},3405:function(e,t,n){"use strict";n.r(t),n.d(t,{default:function(){return c}});n(7294);var r=n(4137);function o(e,t){if(null==e)return{};var n,r,o=function(e,t){if(null==e)return{};var n,r,o={},a=Object.keys(e);for(r=0;r=0||(o[n]=e[n]);return o}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}var a=function(e){return function(t){return console.warn("Component "+e+" was not imported, exported, or provided by MDXProvider as global scope"),(0,r.kt)("div",Object.assign({},t))}},s=a("ResourceGroupTitle"),i=a("BadgeLink"),l={};function c(e){var t=e.components,n=o(e,["components"]);return(0,r.kt)("wrapper",Object.assign({},l,n,{components:t,mdxType:"MDXLayout"}),(0,r.kt)("h1",null,"DNS"),(0,r.kt)("p",null,"The Domain Name System (DNS) is the phonebook of the Internet. Humans access information online through domain names, like nytimes.com or espn.com. Web browsers interact through Internet Protocol (IP) addresses. DNS translates domain names to IP addresses so browsers can load Internet resources."),(0,r.kt)(s,{mdxType:"ResourceGroupTitle"},"Free Content"),(0,r.kt)(i,{colorScheme:"yellow",badgeText:"Read",href:"https://www.cloudflare.com/en-gb/learning/dns/what-is-dns/",mdxType:"BadgeLink"},"What is DNS?"),(0,r.kt)(i,{badgeText:"Watch",href:"https://www.youtube.com/watch?v=Wj0od2ag5sk",mdxType:"BadgeLink"},"DNS and How does it Work?"),(0,r.kt)(i,{badgeText:"Watch",href:"https://www.youtube.com/watch?v=7lxgpKh_fRY",mdxType:"BadgeLink"},"DNS Records"))}c.isMDXComponent=!0},2222:function(e,t,n){"use strict";n.r(t),n.d(t,{default:function(){return c}});n(7294);var r=n(4137);function o(e,t){if(null==e)return{};var n,r,o=function(e,t){if(null==e)return{};var n,r,o={},a=Object.keys(e);for(r=0;r=0||(o[n]=e[n]);return o}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}var a=function(e){return function(t){return console.warn("Component "+e+" was not imported, exported, or provided by MDXProvider as global scope"),(0,r.kt)("div",Object.assign({},t))}},s=a("ResourceGroupTitle"),i=a("BadgeLink"),l={};function c(e){var t=e.components,n=o(e,["components"]);return(0,r.kt)("wrapper",Object.assign({},l,n,{components:t,mdxType:"MDXLayout"}),(0,r.kt)("h1",null,"Domain Name"),(0,r.kt)("p",null,"A domain name is a unique, easy-to-remember address used to access websites, such as \u2018google.com\u2019, and \u2018facebook.com\u2019. Users can connect to websites using domain names thanks to the DNS system."),(0,r.kt)(s,{mdxType:"ResourceGroupTitle"},"Free Content"),(0,r.kt)(i,{colorScheme:"yellow",badgeText:"Read",href:"https://developer.mozilla.org/en-US/docs/Learn/Common_questions/What_is_a_domain_name",mdxType:"BadgeLink"},"What is a Domain Name?"),(0,r.kt)(i,{colorScheme:"yellow",badgeText:"Read",href:"https://www.cloudflare.com/en-gb/learning/dns/glossary/what-is-a-domain-name/",mdxType:"BadgeLink"},"What is a Domain Name? | Domain name vs. URL"),(0,r.kt)(i,{badgeText:"Watch",href:"https://www.youtube.com/watch?v=Y4cRx19nhJk",mdxType:"BadgeLink"},"A Beginners Guide to How Domain Names Work"))}c.isMDXComponent=!0},8129:function(e,t,n){"use strict";n.r(t),n.d(t,{default:function(){return c}});n(7294);var r=n(4137);function o(e,t){if(null==e)return{};var n,r,o=function(e,t){if(null==e)return{};var n,r,o={},a=Object.keys(e);for(r=0;r=0||(o[n]=e[n]);return o}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}var a=function(e){return function(t){return console.warn("Component "+e+" was not imported, exported, or provided by MDXProvider as global scope"),(0,r.kt)("div",Object.assign({},t))}},s=a("ResourceGroupTitle"),i=a("BadgeLink"),l={};function c(e){var t=e.components,n=o(e,["components"]);return(0,r.kt)("wrapper",Object.assign({},l,n,{components:t,mdxType:"MDXLayout"}),(0,r.kt)("h1",null,"Hosting"),(0,r.kt)("p",null,"Web hosting is an online service that allows you to publish your website files onto the internet. So, anyone who has access to the internet has access to your website."),(0,r.kt)(s,{mdxType:"ResourceGroupTitle"},"Free Content"),(0,r.kt)(i,{badgeText:"Watch",href:"https://www.youtube.com/watch?v=htbY9-yggB0",mdxType:"BadgeLink"},"What Is Web Hosting? Explained"),(0,r.kt)(i,{badgeText:"Watch",href:"https://www.youtube.com/watch?v=AXVZYzw8geg",mdxType:"BadgeLink"},"Different Types of Web Hosting Explained"),(0,r.kt)(i,{badgeText:"Watch",href:"https://www.youtube.com/watch?v=Kx_1NYYJS7Q",mdxType:"BadgeLink"},"Where to Host a Fullstack Project on a Budget"))}c.isMDXComponent=!0},2633:function(e,t,n){"use strict";n.r(t),n.d(t,{default:function(){return c}});n(7294);var r=n(4137);function o(e,t){if(null==e)return{};var n,r,o=function(e,t){if(null==e)return{};var n,r,o={},a=Object.keys(e);for(r=0;r=0||(o[n]=e[n]);return o}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}var a=function(e){return function(t){return console.warn("Component "+e+" was not imported, exported, or provided by MDXProvider as global scope"),(0,r.kt)("div",Object.assign({},t))}},s=a("ResourceGroupTitle"),i=a("BadgeLink"),l={};function c(e){var t=e.components,n=o(e,["components"]);return(0,r.kt)("wrapper",Object.assign({},l,n,{components:t,mdxType:"MDXLayout"}),(0,r.kt)("h1",null,"Internet"),(0,r.kt)("p",null,"The Internet is a global network of computers connected to each other which communicate through a standardized set of protocols."),(0,r.kt)(s,{mdxType:"ResourceGroupTitle"},"Free Content"),(0,r.kt)(i,{colorScheme:"yellow",badgeText:"Read",href:"https://www.vox.com/2014/6/16/18076282/the-internet",mdxType:"BadgeLink"},"The Internet Explained"),(0,r.kt)(i,{colorScheme:"yellow",badgeText:"Read",href:"http://web.stanford.edu/class/msande91si/www-spr04/readings/week1/InternetWhitepaper.htm",mdxType:"BadgeLink"},"How Does the Internet Work?"),(0,r.kt)(i,{badgeText:"Watch",href:"/guides/what-is-internet",mdxType:"BadgeLink"},"Introduction to Internet"),(0,r.kt)(i,{badgeText:"Watch",href:"https://www.youtube.com/watch?v=x3c1ih2NJEg",mdxType:"BadgeLink"},"How does the Internet work?"),(0,r.kt)(i,{badgeText:"Watch",href:"https://www.youtube.com/watch?v=7_LPdttKXPc",mdxType:"BadgeLink"},"How the Internet Works in 5 Minutes"))}c.isMDXComponent=!0},7828:function(e,t,n){"use strict";n.r(t),n.d(t,{default:function(){return c}});n(7294);var r=n(4137);function o(e,t){if(null==e)return{};var n,r,o=function(e,t){if(null==e)return{};var n,r,o={},a=Object.keys(e);for(r=0;r=0||(o[n]=e[n]);return o}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}var a=function(e){return function(t){return console.warn("Component "+e+" was not imported, exported, or provided by MDXProvider as global scope"),(0,r.kt)("div",Object.assign({},t))}},s=a("ResourceGroupTitle"),i=a("BadgeLink"),l={};function c(e){var t=e.components,n=o(e,["components"]);return(0,r.kt)("wrapper",Object.assign({},l,n,{components:t,mdxType:"MDXLayout"}),(0,r.kt)("h1",null,"HTML Basics"),(0,r.kt)("p",null,"HTML stands for Hyper Text Markup Language. It is used on the frontend and gives the structure to the webpage which you can style using CSS and make interactive using JavaScript."),(0,r.kt)(s,{mdxType:"ResourceGroupTitle"},"Free Content"),(0,r.kt)(i,{badgeText:"Read",href:"https://www.w3schools.com/html/html_intro.asp",mdxType:"BadgeLink"},"W3Schools: Learn HTML"),(0,r.kt)(i,{badgeText:"Course",colorScheme:"green",href:"https://www.youtube.com/watch?v=pQN-pnXPaVg",mdxType:"BadgeLink"},"HTML Full Course - Build a Website Tutorial"),(0,r.kt)(i,{badgeText:"Course",colorScheme:"green",href:"https://www.youtube.com/watch?v=qz0aGYrrlhU",mdxType:"BadgeLink"},"HTML Tutorial for Beginners: HTML Crash Course"),(0,r.kt)(i,{badgeText:"Course",colorScheme:"green",href:"https://www.youtube.com/watch?v=3PHXvlpOkf4",mdxType:"BadgeLink"},"Build 15 JavaScript Projects - Vanilla JavaScript"))}c.isMDXComponent=!0},258:function(e,t,n){"use strict";n.r(t),n.d(t,{default:function(){return c}});n(7294);var r=n(4137);function o(e,t){if(null==e)return{};var n,r,o=function(e,t){if(null==e)return{};var n,r,o={},a=Object.keys(e);for(r=0;r=0||(o[n]=e[n]);return o}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}var a=function(e){return function(t){return console.warn("Component "+e+" was not imported, exported, or provided by MDXProvider as global scope"),(0,r.kt)("div",Object.assign({},t))}},s=a("ResourceGroupTitle"),i=a("BadgeLink"),l={};function c(e){var t=e.components,n=o(e,["components"]);return(0,r.kt)("wrapper",Object.assign({},l,n,{components:t,mdxType:"MDXLayout"}),(0,r.kt)("h1",null,"Semantic HTML"),(0,r.kt)("p",null,"Semantic element clearly describes its meaning to both the browser and the developer."),(0,r.kt)(s,{mdxType:"ResourceGroupTitle"},"Free Content"),(0,r.kt)(i,{badgeText:"Read",colorScheme:"yellow",href:"https://www.w3schools.com/html/html5_semantic_elements.asp",mdxType:"BadgeLink"},"W3Schools: Semantic HTML"),(0,r.kt)(i,{badgeText:"Read",colorScheme:"yellow",href:"https://hackernoon.com/how-to-write-semantic-html-dkq3ulo",mdxType:"BadgeLink"},"How To Write Semantic HTML"))}c.isMDXComponent=!0},757:function(e,t,n){"use strict";n.r(t),n.d(t,{default:function(){return c}});n(7294);var r=n(4137);function o(e,t){if(null==e)return{};var n,r,o=function(e,t){if(null==e)return{};var n,r,o={},a=Object.keys(e);for(r=0;r=0||(o[n]=e[n]);return o}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}var a=function(e){return function(t){return console.warn("Component "+e+" was not imported, exported, or provided by MDXProvider as global scope"),(0,r.kt)("div",Object.assign({},t))}},s=a("ResourceGroupTitle"),i=a("BadgeLink"),l={};function c(e){var t=e.components,n=o(e,["components"]);return(0,r.kt)("wrapper",Object.assign({},l,n,{components:t,mdxType:"MDXLayout"}),(0,r.kt)("h1",null,"Forms and Validations"),(0,r.kt)("p",null,"Before submitting data to the server, it is important to ensure all required form controls are filled out, in the correct format. This is called client-side form validation, and helps ensure data submitted matches the requirements set forth in the various form controls."),(0,r.kt)(s,{mdxType:"ResourceGroupTitle"},"Free Content"),(0,r.kt)(i,{badgeText:"Read",colorScheme:"yellow",href:"https://developer.mozilla.org/en-US/docs/Learn/Forms/Form_validation",mdxType:"BadgeLink"},"MDN Web Docs: Client-side form validation"))}c.isMDXComponent=!0},1881:function(e,t,n){"use strict";n.r(t),n.d(t,{default:function(){return c}});n(7294);var r=n(4137);function o(e,t){if(null==e)return{};var n,r,o=function(e,t){if(null==e)return{};var n,r,o={},a=Object.keys(e);for(r=0;r=0||(o[n]=e[n]);return o}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}var a=function(e){return function(t){return console.warn("Component "+e+" was not imported, exported, or provided by MDXProvider as global scope"),(0,r.kt)("div",Object.assign({},t))}},s=a("ResourceGroupTitle"),i=a("BadgeLink"),l={};function c(e){var t=e.components,n=o(e,["components"]);return(0,r.kt)("wrapper",Object.assign({},l,n,{components:t,mdxType:"MDXLayout"}),(0,r.kt)("h1",null,"Best Practices"),(0,r.kt)("p",null,"Learn to follow the best practices for writing maintainable and scalable HTML documents."),(0,r.kt)(s,{mdxType:"ResourceGroupTitle"},"Free Content"),(0,r.kt)(i,{badgeText:"Read",colorScheme:"yellow",href:"https://github.com/hail2u/html-best-practices",mdxType:"BadgeLink"},"HTML Best Practices"))}c.isMDXComponent=!0},3699:function(e,t,n){"use strict";n.r(t),n.d(t,{default:function(){return c}});n(7294);var r=n(4137);function o(e,t){if(null==e)return{};var n,r,o=function(e,t){if(null==e)return{};var n,r,o={},a=Object.keys(e);for(r=0;r=0||(o[n]=e[n]);return o}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}var a=function(e){return function(t){return console.warn("Component "+e+" was not imported, exported, or provided by MDXProvider as global scope"),(0,r.kt)("div",Object.assign({},t))}},s=a("ResourceGroupTitle"),i=a("BadgeLink"),l={};function c(e){var t=e.components,n=o(e,["components"]);return(0,r.kt)("wrapper",Object.assign({},l,n,{components:t,mdxType:"MDXLayout"}),(0,r.kt)("h1",null,"Accessibility"),(0,r.kt)("p",null,"Web accessibility means that websites, tools, and technologies are designed and developed in such a way that people with disabilities can use them easily."),(0,r.kt)(s,{mdxType:"ResourceGroupTitle"},"Free Content"),(0,r.kt)(i,{badgeText:"Watch",href:"https://youtube.com/playlist?list=PLNYkxOF6rcICWx0C9LVWWVqvHlYJyqw7g",mdxType:"BadgeLink"},"Complete Playlist on Accessibility"),(0,r.kt)(i,{badgeText:"Read",colorScheme:"yellow",href:"https://www.w3schools.com/accessibility/index.php",mdxType:"BadgeLink"},"Accessibility Tutorial"))}c.isMDXComponent=!0},584:function(e,t,n){"use strict";n.r(t),n.d(t,{default:function(){return c}});n(7294);var r=n(4137);function o(e,t){if(null==e)return{};var n,r,o=function(e,t){if(null==e)return{};var n,r,o={},a=Object.keys(e);for(r=0;r=0||(o[n]=e[n]);return o}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}var a=function(e){return function(t){return console.warn("Component "+e+" was not imported, exported, or provided by MDXProvider as global scope"),(0,r.kt)("div",Object.assign({},t))}},s=a("ResourceGroupTitle"),i=a("BadgeLink"),l={};function c(e){var t=e.components,n=o(e,["components"]);return(0,r.kt)("wrapper",Object.assign({},l,n,{components:t,mdxType:"MDXLayout"}),(0,r.kt)("h1",null,"Basics of SEO"),(0,r.kt)("p",null,"SEO or Search Engine Optimization is the technique used to optimize your website for better rankings on search engines such as Google, Bing etc."),(0,r.kt)(s,{mdxType:"ResourceGroupTitle"},"Free Content"),(0,r.kt)(i,{colorScheme:"yellow",badgeText:"Read",href:"https://developers.google.com/search/docs",mdxType:"BadgeLink"},"Google Search Central \u2014 SEO Docs"),(0,r.kt)(i,{colorScheme:"yellow",badgeText:"Read",href:"https://github.com/seo/guide",mdxType:"BadgeLink"},"SEO Guide"),(0,r.kt)(i,{colorScheme:"yellow",badgeText:"Read",href:"https://medium.com/welldone-software/seo-for-developers-a-quick-overview-5b5b7ce34679",mdxType:"BadgeLink"},"SEO for Developers"))}c.isMDXComponent=!0},3913:function(e,t,n){"use strict";n.r(t),n.d(t,{default:function(){return c}});n(7294);var r=n(4137);function o(e,t){if(null==e)return{};var n,r,o=function(e,t){if(null==e)return{};var n,r,o={},a=Object.keys(e);for(r=0;r=0||(o[n]=e[n]);return o}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}var a=function(e){return function(t){return console.warn("Component "+e+" was not imported, exported, or provided by MDXProvider as global scope"),(0,r.kt)("div",Object.assign({},t))}},s=a("ResourceGroupTitle"),i=a("BadgeLink"),l={};function c(e){var t=e.components,n=o(e,["components"]);return(0,r.kt)("wrapper",Object.assign({},l,n,{components:t,mdxType:"MDXLayout"}),(0,r.kt)("h1",null,"HTML"),(0,r.kt)("p",null,"HTML stands for Hyper Text Markup Language. It is used on the frontend and gives the structure to the webpage which you can style using CSS and make interactive using JavaScript."),(0,r.kt)(s,{mdxType:"ResourceGroupTitle"},"Free Content"),(0,r.kt)(i,{badgeText:"Read",href:"https://www.w3schools.com/html/html_intro.asp",mdxType:"BadgeLink"},"W3Schools: Learn HTML"),(0,r.kt)(i,{badgeText:"Course",colorScheme:"green",href:"https://www.youtube.com/watch?v=pQN-pnXPaVg",mdxType:"BadgeLink"},"HTML Full Course - Build a Website Tutorial"),(0,r.kt)(i,{badgeText:"Course",colorScheme:"green",href:"https://www.youtube.com/watch?v=qz0aGYrrlhU",mdxType:"BadgeLink"},"HTML Tutorial for Beginners: HTML Crash Course"))}c.isMDXComponent=!0},8533:function(e,t,n){"use strict";n.r(t),n.d(t,{default:function(){return c}});n(7294);var r=n(4137);function o(e,t){if(null==e)return{};var n,r,o=function(e,t){if(null==e)return{};var n,r,o={},a=Object.keys(e);for(r=0;r=0||(o[n]=e[n]);return o}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}var a=function(e){return function(t){return console.warn("Component "+e+" was not imported, exported, or provided by MDXProvider as global scope"),(0,r.kt)("div",Object.assign({},t))}},s=a("ResourceGroupTitle"),i=a("BadgeLink"),l={};function c(e){var t=e.components,n=o(e,["components"]);return(0,r.kt)("wrapper",Object.assign({},l,n,{components:t,mdxType:"MDXLayout"}),(0,r.kt)("h1",null,"CSS Basics"),(0,r.kt)("p",null,"CSS or Cascading Style Sheets is the language used to style the frontend of any website. CSS is a cornerstone technology of the World Wide Web, alongside HTML and JavaScript."),(0,r.kt)(s,{mdxType:"ResourceGroupTitle"},"Free Content"),(0,r.kt)(i,{colorScheme:"yellow",badgeText:"Read",href:"https://www.w3schools.com/css/",mdxType:"BadgeLink"},"W3Schools \u2014 Learn CSS"),(0,r.kt)(i,{colorScheme:"yellow",badgeText:"Read",href:"https://www.freecodecamp.org/learn/responsive-web-design/",mdxType:"BadgeLink"},"freeCodeCamp \u2014 Responsive Web Design"),(0,r.kt)(i,{colorScheme:"yellow",badgeText:"Read",href:"https://learn.shayhowe.com/html-css/building-your-first-web-page/",mdxType:"BadgeLink"},"Learn to Code HTML & CSS"),(0,r.kt)(i,{colorScheme:"green",badgeText:"Course",href:"https://www.youtube.com/watch?v=yfoY53QXEnI",mdxType:"BadgeLink"},"CSS Crash Course For Absolute Beginners"),(0,r.kt)(i,{colorScheme:"green",badgeText:"Course",href:"https://www.youtube.com/watch?v=D-h8L5hgW-w",mdxType:"BadgeLink"},"HTML and CSS Tutorial"),(0,r.kt)(i,{colorScheme:"green",badgeText:"Course",href:"https://www.youtube.com/watch?v=FqmB-Zj2-PA",mdxType:"BadgeLink"},"CSS Masterclass - Tutorial & Course for Beginners"))}c.isMDXComponent=!0},3780:function(e,t,n){"use strict";n.r(t),n.d(t,{default:function(){return c}});n(7294);var r=n(4137);function o(e,t){if(null==e)return{};var n,r,o=function(e,t){if(null==e)return{};var n,r,o={},a=Object.keys(e);for(r=0;r=0||(o[n]=e[n]);return o}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}var a=function(e){return function(t){return console.warn("Component "+e+" was not imported, exported, or provided by MDXProvider as global scope"),(0,r.kt)("div",Object.assign({},t))}},s=a("ResourceGroupTitle"),i=a("BadgeLink"),l={};function c(e){var t=e.components,n=o(e,["components"]);return(0,r.kt)("wrapper",Object.assign({},l,n,{components:t,mdxType:"MDXLayout"}),(0,r.kt)("h1",null,"Making layouts"),(0,r.kt)("p",null,"Float, grid, flexbox, positioning, display and box model are some of the key topics that are used for making layouts. Use the resources below to learn about these topics: "),(0,r.kt)(s,{mdxType:"ResourceGroupTitle"},"Free Content"),(0,r.kt)(i,{colorScheme:"yellow",badgeText:"Read",href:"https://flexboxfroggy.com/",mdxType:"BadgeLink"},"Learn and Practice Flexbox"),(0,r.kt)(i,{colorScheme:"yellow",badgeText:"Read",href:"https://cssgridgarden.com/",mdxType:"BadgeLink"},"Game for learning CSS Grid"),(0,r.kt)(i,{colorScheme:"yellow",badgeText:"Read",href:"https://css-tricks.com/all-about-floats/",mdxType:"BadgeLink"},"All about Floats"),(0,r.kt)(i,{colorScheme:"yellow",badgeText:"Read",href:"https://css-tricks.com/absolute-relative-fixed-positioining-how-do-they-differ/",mdxType:"BadgeLink"},"Positioning Types: How Do They Differ?"),(0,r.kt)(i,{colorScheme:"yellow",badgeText:"Read",href:"https://developer.mozilla.org/en-US/docs/Learn/CSS/Building_blocks/The_box_model",mdxType:"BadgeLink"},"The Box Model"),(0,r.kt)(i,{colorScheme:"yellow",badgeText:"Read",href:"https://www.freecodecamp.org/news/the-css-display-property-display-none-display-table-inline-block-and-more/",mdxType:"BadgeLink"},"The CSS Display Property"))}c.isMDXComponent=!0},1118:function(e,t,n){"use strict";n.r(t),n.d(t,{default:function(){return c}});n(7294);var r=n(4137);function o(e,t){if(null==e)return{};var n,r,o=function(e,t){if(null==e)return{};var n,r,o={},a=Object.keys(e);for(r=0;r=0||(o[n]=e[n]);return o}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}var a=function(e){return function(t){return console.warn("Component "+e+" was not imported, exported, or provided by MDXProvider as global scope"),(0,r.kt)("div",Object.assign({},t))}},s=a("ResourceGroupTitle"),i=a("BadgeLink"),l={};function c(e){var t=e.components,n=o(e,["components"]);return(0,r.kt)("wrapper",Object.assign({},l,n,{components:t,mdxType:"MDXLayout"}),(0,r.kt)("h1",null,"Responsive Web Design"),(0,r.kt)("p",null,"Responsive Web Designing is the technique to make your webpages look good on all screen sizes. There are certain techniques used to achieve that e.g. CSS media queries, percentage widths, min or max widths heights etc."),(0,r.kt)(s,{mdxType:"ResourceGroupTitle"},"Free Content"),(0,r.kt)(i,{colorScheme:"yellow",badgeText:"Read",href:"https://www.w3schools.com/css/css_rwd_intro.asp",mdxType:"BadgeLink"},"Responsive Web Design"),(0,r.kt)(i,{badgeText:"Watch",href:"https://www.youtube.com/watch?v=srvUrASNj0s",mdxType:"BadgeLink"},"Introduction To Responsive Web Design"))}c.isMDXComponent=!0},5211:function(e,t,n){"use strict";n.r(t),n.d(t,{default:function(){return c}});n(7294);var r=n(4137);function o(e,t){if(null==e)return{};var n,r,o=function(e,t){if(null==e)return{};var n,r,o={},a=Object.keys(e);for(r=0;r=0||(o[n]=e[n]);return o}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}var a=function(e){return function(t){return console.warn("Component "+e+" was not imported, exported, or provided by MDXProvider as global scope"),(0,r.kt)("div",Object.assign({},t))}},s=a("ResourceGroupTitle"),i=a("BadgeLink"),l={};function c(e){var t=e.components,n=o(e,["components"]);return(0,r.kt)("wrapper",Object.assign({},l,n,{components:t,mdxType:"MDXLayout"}),(0,r.kt)("h1",null,"CSS"),(0,r.kt)("p",null,"CSS or Cascading Style Sheets is the language used to style the frontend of any website. CSS is a cornerstone technology of the World Wide Web, alongside HTML and JavaScript."),(0,r.kt)(s,{mdxType:"ResourceGroupTitle"},"Free Content"),(0,r.kt)(i,{colorScheme:"yellow",badgeText:"Read",href:"https://www.w3schools.com/css/",mdxType:"BadgeLink"},"W3Schools \u2014 Learn CSS"),(0,r.kt)(i,{colorScheme:"yellow",badgeText:"Read",href:"https://www.freecodecamp.org/learn/responsive-web-design/",mdxType:"BadgeLink"},"freeCodeCamp \u2014 Responsive Web Design"),(0,r.kt)(i,{colorScheme:"yellow",badgeText:"Read",href:"https://learn.shayhowe.com/html-css/building-your-first-web-page/",mdxType:"BadgeLink"},"Learn to Code HTML & CSS"),(0,r.kt)(i,{colorScheme:"green",badgeText:"Course",href:"https://www.youtube.com/watch?v=yfoY53QXEnI",mdxType:"BadgeLink"},"CSS Crash Course For Absolute Beginners"),(0,r.kt)(i,{colorScheme:"green",badgeText:"Course",href:"https://www.youtube.com/watch?v=D-h8L5hgW-w",mdxType:"BadgeLink"},"HTML and CSS Tutorial"),(0,r.kt)(i,{colorScheme:"green",badgeText:"Course",href:"https://www.youtube.com/watch?v=FqmB-Zj2-PA",mdxType:"BadgeLink"},"CSS Masterclass - Tutorial & Course for Beginners"),(0,r.kt)(i,{colorScheme:"green",badgeText:"Course",href:"href=https://flexbox.io/",mdxType:"BadgeLink"},"What The Flexbox!"))}c.isMDXComponent=!0},617:function(e,t,n){"use strict";n.r(t),n.d(t,{default:function(){return c}});n(7294);var r=n(4137);function o(e,t){if(null==e)return{};var n,r,o=function(e,t){if(null==e)return{};var n,r,o={},a=Object.keys(e);for(r=0;r=0||(o[n]=e[n]);return o}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}var a=function(e){return function(t){return console.warn("Component "+e+" was not imported, exported, or provided by MDXProvider as global scope"),(0,r.kt)("div",Object.assign({},t))}},s=a("ResourceGroupTitle"),i=a("BadgeLink"),l={};function c(e){var t=e.components,n=o(e,["components"]);return(0,r.kt)("wrapper",Object.assign({},l,n,{components:t,mdxType:"MDXLayout"}),(0,r.kt)("h1",null,"JavaScript"),(0,r.kt)("p",null,"JavaScript allows you to add interactivity to your pages. Common examples that you may have seen on the websites are sliders, click interactions, popups and so on."),(0,r.kt)(s,{mdxType:"ResourceGroupTitle"},"Free Content"),(0,r.kt)(i,{badgeText:"Read",colorScheme:"yellow",href:"https://www.w3schools.com/js/",mdxType:"BadgeLink"},"W3Schools \u2013 JavaScript Tutorial"),(0,r.kt)(i,{badgeText:"Read",colorScheme:"yellow",href:"https://javascript.info/",mdxType:"BadgeLink"},"The Modern JavaScript Tutorial"),(0,r.kt)(i,{badgeText:"Watch",href:"https://youtu.be/hdI2bqOjy3c?t=2",mdxType:"BadgeLink"},"JavaScript Crash Course for Beginners"),(0,r.kt)(i,{badgeText:"Watch",href:"https://youtu.be/P7t13SGytRk?t=22",mdxType:"BadgeLink"},"Build a Netflix Landing Page Clone with HTML, CSS & JS"))}c.isMDXComponent=!0},1569:function(e,t,n){"use strict";n.r(t),n.d(t,{default:function(){return c}});n(7294);var r=n(4137);function o(e,t){if(null==e)return{};var n,r,o=function(e,t){if(null==e)return{};var n,r,o={},a=Object.keys(e);for(r=0;r=0||(o[n]=e[n]);return o}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}var a=function(e){return function(t){return console.warn("Component "+e+" was not imported, exported, or provided by MDXProvider as global scope"),(0,r.kt)("div",Object.assign({},t))}},s=a("ResourceGroupTitle"),i=a("BadgeLink"),l={};function c(e){var t=e.components,n=o(e,["components"]);return(0,r.kt)("wrapper",Object.assign({},l,n,{components:t,mdxType:"MDXLayout"}),(0,r.kt)("h1",null,"DOM Manipulation"),(0,r.kt)("p",null,"The Document Object Model (DOM) connects web pages to scripts or programming languages by representing the structure of a document\u2014such as the HTML representing a web page\u2014in memory."),(0,r.kt)(s,{mdxType:"ResourceGroupTitle"},"Free Content"),(0,r.kt)(i,{badgeText:"Read",colorScheme:"yellow",href:"https://www.freecodecamp.org/news/what-is-the-dom-document-object-model-meaning-in-javascript/",mdxType:"BadgeLink"},"What is the DOM?"),(0,r.kt)(i,{badgeText:"Read",colorScheme:"yellow",href:"https://www.w3schools.com/js/js_htmldom.asp",mdxType:"BadgeLink"},"JavaScript HTML DOM"),(0,r.kt)(i,{badgeText:"Read",colorScheme:"yellow",href:"https://www.javascripttutorial.net/javascript-dom/",mdxType:"BadgeLink"},"JavaScript DOM"),(0,r.kt)(i,{badgeText:"Watch",href:"https://www.youtube.com/watch?v=7Tok22qxPzQ",mdxType:"BadgeLink"},"What is DOM, Shadow DOM and Virtual DOM?"),(0,r.kt)(i,{badgeText:"Watch",href:"https://www.youtube.com/watch?v=0ik6X4DJKCc",mdxType:"BadgeLink"},"JavaScript DOM Crash Course"))}c.isMDXComponent=!0},4746:function(e,t,n){"use strict";n.r(t),n.d(t,{default:function(){return c}});n(7294);var r=n(4137);function o(e,t){if(null==e)return{};var n,r,o=function(e,t){if(null==e)return{};var n,r,o={},a=Object.keys(e);for(r=0;r=0||(o[n]=e[n]);return o}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}var a=function(e){return function(t){return console.warn("Component "+e+" was not imported, exported, or provided by MDXProvider as global scope"),(0,r.kt)("div",Object.assign({},t))}},s=a("ResourceGroupTitle"),i=a("BadgeLink"),l={};function c(e){var t=e.components,n=o(e,["components"]);return(0,r.kt)("wrapper",Object.assign({},l,n,{components:t,mdxType:"MDXLayout"}),(0,r.kt)("h1",null,"Fetch API"),(0,r.kt)("p",null,"Ajax is the technique that lets us send and receive the data asynchronously from the servers e.g. updaing the user profile or asynchronously fetch the list of searched products without reloading the page."),(0,r.kt)(s,{mdxType:"ResourceGroupTitle"},"Free Content"),(0,r.kt)(i,{badgeText:"Read",colorScheme:"yellow",href:"https://developer.mozilla.org/en-US/docs/Web/API/Fetch_API",mdxType:"BadgeLink"},"Fetch API MDN Docs"),(0,r.kt)(i,{badgeText:"Watch",href:"https://www.youtube.com/watch?v=-ZI0ea5O2oA",mdxType:"BadgeLink"},"JavaScript Fetch API"))}c.isMDXComponent=!0},6401:function(e,t,n){"use strict";n.r(t),n.d(t,{default:function(){return c}});n(7294);var r=n(4137);function o(e,t){if(null==e)return{};var n,r,o=function(e,t){if(null==e)return{};var n,r,o={},a=Object.keys(e);for(r=0;r=0||(o[n]=e[n]);return o}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}var a=function(e){return function(t){return console.warn("Component "+e+" was not imported, exported, or provided by MDXProvider as global scope"),(0,r.kt)("div",Object.assign({},t))}},s=a("ResourceGroupTitle"),i=a("BadgeLink"),l={};function c(e){var t=e.components,n=o(e,["components"]);return(0,r.kt)("wrapper",Object.assign({},l,n,{components:t,mdxType:"MDXLayout"}),(0,r.kt)("h1",null,"Modern JavaScript"),(0,r.kt)("p",null,"ECMAScript 2015 or ES2015 is a significant update to the JavaScript programming language. It is the first major update to the language since ES5 which was standardized in 2009. You should look at the features introduced with ES6 and onwards."),(0,r.kt)(s,{mdxType:"ResourceGroupTitle"},"Free Content"),(0,r.kt)(i,{badgeText:"Read",colorScheme:"yellow",href:"https://www.javascripttutorial.net/es6/",mdxType:"BadgeLink"},"ES6 Tutorial"),(0,r.kt)(i,{badgeText:"Watch",href:"https://www.youtube.com/watch?v=NCwa_xi0Uuc",mdxType:"BadgeLink"},"Learn Modern JavaScript in 1 Hour"),(0,r.kt)(i,{badgeText:"Watch",href:"https://www.youtube.com/watch?v=nZ1DMMsyVyI",mdxType:"BadgeLink"},"JavaScript ES6, ES7, ES8"))}c.isMDXComponent=!0},2698:function(e,t,n){"use strict";n.r(t),n.d(t,{default:function(){return c}});n(7294);var r=n(4137);function o(e,t){if(null==e)return{};var n,r,o=function(e,t){if(null==e)return{};var n,r,o={},a=Object.keys(e);for(r=0;r=0||(o[n]=e[n]);return o}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}var a=function(e){return function(t){return console.warn("Component "+e+" was not imported, exported, or provided by MDXProvider as global scope"),(0,r.kt)("div",Object.assign({},t))}},s=a("ResourceGroupTitle"),i=a("BadgeLink"),l={};function c(e){var t=e.components,n=o(e,["components"]);return(0,r.kt)("wrapper",Object.assign({},l,n,{components:t,mdxType:"MDXLayout"}),(0,r.kt)("h1",null,"JavaScript Concepts"),(0,r.kt)("p",null,"Learn and understand the concepts such as Hoisting, Event Bubbling, Scope, Prototype, Shadow DOM and strict."),(0,r.kt)(s,{mdxType:"ResourceGroupTitle"},"Free Content"),(0,r.kt)(i,{badgeText:"Read",colorScheme:"yellow",href:"https://developer.mozilla.org/en-US/docs/Glossary/Hoisting",mdxType:"BadgeLink"},"JavaScript Hoisting"),(0,r.kt)(i,{badgeText:"Read",colorScheme:"yellow",href:"https://javascript.info/bubbling-and-capturing",mdxType:"BadgeLink"},"Event Bubbling and Capturing"),(0,r.kt)(i,{badgeText:"Read",colorScheme:"yellow",href:"https://developer.mozilla.org/en-US/docs/Glossary/Scope",mdxType:"BadgeLink"},"Scope in JavaScript"),(0,r.kt)(i,{badgeText:"Read",colorScheme:"yellow",href:"https://www.freecodecamp.org/news/var-let-and-const-whats-the-difference/",mdxType:"BadgeLink"},"Var, Let and Const \u2014 What's the difference?"),(0,r.kt)(i,{badgeText:"Read",colorScheme:"yellow",href:"https://developer.mozilla.org/en-US/docs/Web/JavaScript/Inheritance_and_the_prototype_chain",mdxType:"BadgeLink"},"Inheritance and Prototype Chain"),(0,r.kt)(i,{badgeText:"Read",colorScheme:"yellow",href:"https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Strict_mode",mdxType:"BadgeLink"},"JavaScript Strict Mode"),(0,r.kt)(i,{badgeText:"Watch",href:"https://www.youtube.com/watch?v=7Tok22qxPzQ",mdxType:"BadgeLink"},"DOM vs Shadow DOM vs Virtual DOM"))}c.isMDXComponent=!0},8613:function(e,t,n){"use strict";n.r(t),n.d(t,{default:function(){return c}});n(7294);var r=n(4137);function o(e,t){if(null==e)return{};var n,r,o=function(e,t){if(null==e)return{};var n,r,o={},a=Object.keys(e);for(r=0;r=0||(o[n]=e[n]);return o}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}var a=function(e){return function(t){return console.warn("Component "+e+" was not imported, exported, or provided by MDXProvider as global scope"),(0,r.kt)("div",Object.assign({},t))}},s=a("ResourceGroupTitle"),i=a("BadgeLink"),l={};function c(e){var t=e.components,n=o(e,["components"]);return(0,r.kt)("wrapper",Object.assign({},l,n,{components:t,mdxType:"MDXLayout"}),(0,r.kt)("h1",null,"JavaScript"),(0,r.kt)("p",null,"JavaScript allows you to add interactivity to your pages. Common examples that you may have seen on the websites are sliders, click interactions, popups and so on."),(0,r.kt)(s,{mdxType:"ResourceGroupTitle"},"Free Content"),(0,r.kt)(i,{badgeText:"Read",colorScheme:"yellow",href:"https://www.w3schools.com/js/",mdxType:"BadgeLink"},"W3Schools \u2013 JavaScript Tutorial"),(0,r.kt)(i,{badgeText:"Read",colorScheme:"yellow",href:"https://javascript.info/",mdxType:"BadgeLink"},"The Modern JavaScript Tutorial"),(0,r.kt)(i,{badgeText:"Watch",href:"https://youtu.be/hdI2bqOjy3c?t=2",mdxType:"BadgeLink"},"JavaScript Crash Course for Beginners"),(0,r.kt)(i,{badgeText:"Watch",href:"https://youtu.be/P7t13SGytRk?t=22",mdxType:"BadgeLink"},"Build a Netflix Landing Page Clone with HTML, CSS & JS"))}c.isMDXComponent=!0},2555:function(e,t,n){"use strict";n.r(t),n.d(t,{default:function(){return c}});n(7294);var r=n(4137);function o(e,t){if(null==e)return{};var n,r,o=function(e,t){if(null==e)return{};var n,r,o={},a=Object.keys(e);for(r=0;r=0||(o[n]=e[n]);return o}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}var a=function(e){return function(t){return console.warn("Component "+e+" was not imported, exported, or provided by MDXProvider as global scope"),(0,r.kt)("div",Object.assign({},t))}},s=a("ResourceGroupTitle"),i=a("BadgeLink"),l={};function c(e){var t=e.components,n=o(e,["components"]);return(0,r.kt)("wrapper",Object.assign({},l,n,{components:t,mdxType:"MDXLayout"}),(0,r.kt)("h1",null,"Git"),(0,r.kt)("p",null,(0,r.kt)("a",Object.assign({parentName:"p"},{href:"https://git-scm.com/"}),"Git")," is a free and open source distributed version control system designed to handle everything from small to very large projects with speed and efficiency."),(0,r.kt)(s,{mdxType:"ResourceGroupTitle"},"Free Content"),(0,r.kt)(i,{badgeText:"Watch",href:"https://www.youtube.com/watch?v=zbKdDsNNOhg",mdxType:"BadgeLink"},"Version Control System Introduction"),(0,r.kt)(i,{badgeText:"Watch",href:"https://www.youtube.com/watch?v=SWYqp7iY_Tc",mdxType:"BadgeLink"},"Git & GitHub Crash Course For Beginners"),(0,r.kt)(i,{badgeText:"Watch",href:"https://youtu.be/Y9XZQO1n_7c?t=21",mdxType:"BadgeLink"},"Learn Git in 20 Minutes"))}c.isMDXComponent=!0},8405:function(e,t,n){"use strict";n.r(t),n.d(t,{default:function(){return c}});n(7294);var r=n(4137);function o(e,t){if(null==e)return{};var n,r,o=function(e,t){if(null==e)return{};var n,r,o={},a=Object.keys(e);for(r=0;r=0||(o[n]=e[n]);return o}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}var a=function(e){return function(t){return console.warn("Component "+e+" was not imported, exported, or provided by MDXProvider as global scope"),(0,r.kt)("div",Object.assign({},t))}},s=a("ResourceGroupTitle"),i=a("BadgeLink"),l={};function c(e){var t=e.components,n=o(e,["components"]);return(0,r.kt)("wrapper",Object.assign({},l,n,{components:t,mdxType:"MDXLayout"}),(0,r.kt)("h1",null,"Version Control Systems"),(0,r.kt)("p",null,"Version control systems allow you to track changes to your codebase/files over time. They allow you to go back to some previous version of the codebase without any issues. Also, they help in collaborating with people working on the same code \u2013 if you\u2019ve ever collaborated with other people on a project, you might already know the frustration of copying and merging the changes from someone else into your codebase; version control systems allow you to get rid of this issue."),(0,r.kt)(s,{mdxType:"ResourceGroupTitle"},"Free Content"),(0,r.kt)(i,{badgeText:"Watch",href:"https://www.youtube.com/watch?v=zbKdDsNNOhg",mdxType:"BadgeLink"},"Version Control System Introduction"),(0,r.kt)(i,{badgeText:"Watch",href:"https://www.youtube.com/watch?v=SWYqp7iY_Tc",mdxType:"BadgeLink"},"Git & GitHub Crash Course For Beginners"),(0,r.kt)(i,{badgeText:"Watch",href:"https://youtu.be/Y9XZQO1n_7c?t=21",mdxType:"BadgeLink"},"Learn Git in 20 Minutes"))}c.isMDXComponent=!0},8548:function(e,t,n){"use strict";n.r(t),n.d(t,{default:function(){return c}});n(7294);var r=n(4137);function o(e,t){if(null==e)return{};var n,r,o=function(e,t){if(null==e)return{};var n,r,o={},a=Object.keys(e);for(r=0;r=0||(o[n]=e[n]);return o}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}var a=function(e){return function(t){return console.warn("Component "+e+" was not imported, exported, or provided by MDXProvider as global scope"),(0,r.kt)("div",Object.assign({},t))}},s=a("ResourceGroupTitle"),i=a("BadgeLink"),l={};function c(e){var t=e.components,n=o(e,["components"]);return(0,r.kt)("wrapper",Object.assign({},l,n,{components:t,mdxType:"MDXLayout"}),(0,r.kt)("h1",null,"GitHub"),(0,r.kt)("p",null,(0,r.kt)("a",Object.assign({parentName:"p"},{href:"https://github.com"}),"GitHub")," is a provider of internet hosting for software development and version control using Git. It offers the distributed version control and source code management functionality of Git, plus its own features."),(0,r.kt)(s,{mdxType:"ResourceGroupTitle"},"Free Content"),(0,r.kt)(i,{badgeText:"Read",href:"https://docs.github.com/en/get-started/quickstart/hello-world",mdxType:"BadgeLink"},"GitHub: Quickstart"),(0,r.kt)(i,{badgeText:"Watch",colorScheme:"yellow",href:"https://www.youtube.com/watch?v=w3jLJU7DT5E",mdxType:"BadgeLink"},"What is GitHub?"),(0,r.kt)(i,{badgeText:"Watch",colorScheme:"yellow",href:"https://www.youtube.com/watch?v=wpISo9TNjfU",mdxType:"BadgeLink"},"Git vs. GitHub: What's the difference?"),(0,r.kt)(i,{badgeText:"Watch",colorScheme:"yellow",href:"https://www.youtube.com/watch?v=RGOj5yH7evk",mdxType:"BadgeLink"},"Git and GitHub for Beginners"),(0,r.kt)(i,{badgeText:"Watch",colorScheme:"yellow",href:"https://www.youtube.com/watch?v=eulnSXkhE7I",mdxType:"BadgeLink"},"Git and GitHub - CS50 Beyond 2019"))}c.isMDXComponent=!0},1952:function(e,t,n){"use strict";n.r(t),n.d(t,{default:function(){return c}});n(7294);var r=n(4137);function o(e,t){if(null==e)return{};var n,r,o=function(e,t){if(null==e)return{};var n,r,o={},a=Object.keys(e);for(r=0;r=0||(o[n]=e[n]);return o}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}var a=function(e){return function(t){return console.warn("Component "+e+" was not imported, exported, or provided by MDXProvider as global scope"),(0,r.kt)("div",Object.assign({},t))}},s=a("ResourceGroupTitle"),i=a("BadgeLink"),l={};function c(e){var t=e.components,n=o(e,["components"]);return(0,r.kt)("wrapper",Object.assign({},l,n,{components:t,mdxType:"MDXLayout"}),(0,r.kt)("h1",null,"GitLab"),(0,r.kt)("p",null,(0,r.kt)("a",Object.assign({parentName:"p"},{href:"https://gitlab.com"}),"GitLab")," is a provider of internet hosting for software development and version control using Git. It offers the distributed version control and source code management functionality of Git, plus its own features."),(0,r.kt)(s,{mdxType:"ResourceGroupTitle"},"Free Content"),(0,r.kt)(i,{badgeText:"Visit",colorScheme:"green",href:"https://gitlab.com/",mdxType:"BadgeLink"},"GitLab Website"),(0,r.kt)(i,{badgeText:"Read",href:"https://docs.gitlab.com/",mdxType:"BadgeLink"},"GitLab Documentation"))}c.isMDXComponent=!0},6145:function(e,t,n){"use strict";n.r(t),n.d(t,{default:function(){return c}});n(7294);var r=n(4137);function o(e,t){if(null==e)return{};var n,r,o=function(e,t){if(null==e)return{};var n,r,o={},a=Object.keys(e);for(r=0;r=0||(o[n]=e[n]);return o}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}var a=function(e){return function(t){return console.warn("Component "+e+" was not imported, exported, or provided by MDXProvider as global scope"),(0,r.kt)("div",Object.assign({},t))}},s=a("ResourceGroupTitle"),i=a("BadgeLink"),l={};function c(e){var t=e.components,n=o(e,["components"]);return(0,r.kt)("wrapper",Object.assign({},l,n,{components:t,mdxType:"MDXLayout"}),(0,r.kt)("h1",null,"BitBucket"),(0,r.kt)("p",null,(0,r.kt)("a",Object.assign({parentName:"p"},{href:"https://bitbucket.com"}),"BitBucket")," is a provider of internet hosting for software development and version control using Git. It offers the distributed version control and source code management functionality of Git, plus its own features."),(0,r.kt)(s,{mdxType:"ResourceGroupTitle"},"Free Content"),(0,r.kt)(i,{badgeText:"Visit",colorScheme:"green",href:"https://bitbucket.com/",mdxType:"BadgeLink"},"BitBucket Website"),(0,r.kt)(i,{badgeText:"Read",href:"https://bitbucket.org/product/guides",mdxType:"BadgeLink"},"How to use BitBucket?"))}c.isMDXComponent=!0},493:function(e,t,n){"use strict";n.r(t),n.d(t,{default:function(){return c}});n(7294);var r=n(4137);function o(e,t){if(null==e)return{};var n,r,o=function(e,t){if(null==e)return{};var n,r,o={},a=Object.keys(e);for(r=0;r=0||(o[n]=e[n]);return o}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}var a=function(e){return function(t){return console.warn("Component "+e+" was not imported, exported, or provided by MDXProvider as global scope"),(0,r.kt)("div",Object.assign({},t))}},s=a("ResourceGroupTitle"),i=a("BadgeLink"),l={};function c(e){var t=e.components,n=o(e,["components"]);return(0,r.kt)("wrapper",Object.assign({},l,n,{components:t,mdxType:"MDXLayout"}),(0,r.kt)("h1",null,"Repo Hosting Services"),(0,r.kt)("p",null,"There are different repository hosting services with the most famous one being GitHub, GitLab and BitBucket. I would recommend creating an account on GitHub because that is where most of the OpenSource work is done and most of the developers are."),(0,r.kt)(s,{mdxType:"ResourceGroupTitle"},"Services Links"),(0,r.kt)(i,{badgeText:"Visit",colorScheme:"green",href:"https://github.com",mdxType:"BadgeLink"},"GitHub: Where the world builds software"),(0,r.kt)(i,{badgeText:"Visit",href:"https://gitlab.com",mdxType:"BadgeLink"},"GitLab: Iterate faster, innovate together"),(0,r.kt)(i,{badgeText:"Visit",href:"https://bitbucket.com",mdxType:"BadgeLink"},"BitBucket: The Git solution for professional teams"))}c.isMDXComponent=!0},2510:function(e,t,n){"use strict";n.r(t),n.d(t,{default:function(){return c}});n(7294);var r=n(4137);function o(e,t){if(null==e)return{};var n,r,o=function(e,t){if(null==e)return{};var n,r,o={},a=Object.keys(e);for(r=0;r=0||(o[n]=e[n]);return o}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}var a=function(e){return function(t){return console.warn("Component "+e+" was not imported, exported, or provided by MDXProvider as global scope"),(0,r.kt)("div",Object.assign({},t))}},s=a("ResourceGroupTitle"),i=a("BadgeLink"),l={};function c(e){var t=e.components,n=o(e,["components"]);return(0,r.kt)("wrapper",Object.assign({},l,n,{components:t,mdxType:"MDXLayout"}),(0,r.kt)("h1",null,"HTTPS"),(0,r.kt)("p",null,"HTTPS is a secure way to send data between a web server and a browser."),(0,r.kt)(s,{mdxType:"ResourceGroupTitle"},"Free Content"),(0,r.kt)(i,{badgeText:"Read",colorScheme:"yellow",href:"https://www.cloudflare.com/en-gb/learning/ssl/what-is-https/",mdxType:"BadgeLink"},"What is HTTPS?"),(0,r.kt)(i,{badgeText:"Read",colorScheme:"yellow",href:"https://developers.google.com/web/fundamentals/security/encrypt-in-transit/why-https",mdxType:"BadgeLink"},"Why HTTPS Matters"),(0,r.kt)(i,{badgeText:"Read",colorScheme:"yellow",href:"https://developers.google.com/web/fundamentals/security/encrypt-in-transit/enable-https",mdxType:"BadgeLink"},"Enabling HTTPS on Your Servers"),(0,r.kt)(i,{badgeText:"Watch",href:"https://www.youtube.com/watch?v=hExRDVZHhig",mdxType:"BadgeLink"},"SSL, TLS, HTTP, HTTPS Explained"),(0,r.kt)(i,{badgeText:"Watch",href:"https://www.youtube.com/watch?v=GoXgl9r0Kjk",mdxType:"BadgeLink"},"HTTPS \u2014 Stories from the field"))}c.isMDXComponent=!0},9377:function(e,t,n){"use strict";n.r(t),n.d(t,{default:function(){return c}});n(7294);var r=n(4137);function o(e,t){if(null==e)return{};var n,r,o=function(e,t){if(null==e)return{};var n,r,o={},a=Object.keys(e);for(r=0;r=0||(o[n]=e[n]);return o}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}var a=function(e){return function(t){return console.warn("Component "+e+" was not imported, exported, or provided by MDXProvider as global scope"),(0,r.kt)("div",Object.assign({},t))}},s=a("ResourceGroupTitle"),i=a("BadgeLink"),l={};function c(e){var t=e.components,n=o(e,["components"]);return(0,r.kt)("wrapper",Object.assign({},l,n,{components:t,mdxType:"MDXLayout"}),(0,r.kt)("h1",null,"Content Security Policy"),(0,r.kt)("p",null,"Content Security Policy is a computer security standard introduced to prevent cross-site scripting, clickjacking and other code injection attacks resulting from execution of malicious content in the trusted web page context."),(0,r.kt)(s,{mdxType:"ResourceGroupTitle"},"Free Content"),(0,r.kt)(i,{badgeText:"Read",colorScheme:"yellow",href:"https://developer.mozilla.org/en-US/docs/Web/HTTP/CSP",mdxType:"BadgeLink"},"MDN \u2014 Content Security Policy (CSP)"),(0,r.kt)(i,{badgeText:"Read",colorScheme:"yellow",href:"https://developers.google.com/web/fundamentals/security/csp",mdxType:"BadgeLink"},"Google Devs \u2014 Content Security Policy (CSP)"))}c.isMDXComponent=!0},8705:function(e,t,n){"use strict";n.r(t),n.d(t,{default:function(){return c}});n(7294);var r=n(4137);function o(e,t){if(null==e)return{};var n,r,o=function(e,t){if(null==e)return{};var n,r,o={},a=Object.keys(e);for(r=0;r=0||(o[n]=e[n]);return o}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}var a=function(e){return function(t){return console.warn("Component "+e+" was not imported, exported, or provided by MDXProvider as global scope"),(0,r.kt)("div",Object.assign({},t))}},s=a("ResourceGroupTitle"),i=a("BadgeLink"),l={};function c(e){var t=e.components,n=o(e,["components"]);return(0,r.kt)("wrapper",Object.assign({},l,n,{components:t,mdxType:"MDXLayout"}),(0,r.kt)("h1",null,"CORS"),(0,r.kt)("p",null,"Cross-Origin Resource Sharing (CORS) is an HTTP-header based mechanism that allows a server to indicate any origins (domain, scheme, or port) other than its own from which a browser should permit loading resources."),(0,r.kt)(s,{mdxType:"ResourceGroupTitle"},"Free Content"),(0,r.kt)(i,{badgeText:"Read",colorScheme:"yellow",href:"https://developer.mozilla.org/en-US/docs/Web/HTTP/CORS",mdxType:"BadgeLink"},"CORS \u2014 Cross-Origin Resource Sharing"))}c.isMDXComponent=!0},8633:function(e,t,n){"use strict";n.r(t),n.d(t,{default:function(){return c}});n(7294);var r=n(4137);function o(e,t){if(null==e)return{};var n,r,o=function(e,t){if(null==e)return{};var n,r,o={},a=Object.keys(e);for(r=0;r=0||(o[n]=e[n]);return o}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}var a=function(e){return function(t){return console.warn("Component "+e+" was not imported, exported, or provided by MDXProvider as global scope"),(0,r.kt)("div",Object.assign({},t))}},s=a("ResourceGroupTitle"),i=a("BadgeLink"),l={};function c(e){var t=e.components,n=o(e,["components"]);return(0,r.kt)("wrapper",Object.assign({},l,n,{components:t,mdxType:"MDXLayout"}),(0,r.kt)("h1",null,"OWASP Security Risks"),(0,r.kt)("p",null,"OWASP or Open Web Application Security Project is an online community that produces freely-available articles, methodologies, documentation, tools, and technologies in the field of web application security."),(0,r.kt)(s,{mdxType:"ResourceGroupTitle"},"Free Content"),(0,r.kt)(i,{badgeText:"Read",colorScheme:"yellow",href:"https://en.wikipedia.org/wiki/OWASP",mdxType:"BadgeLink"},"Wikipedia - OWASP"),(0,r.kt)(i,{badgeText:"Read",colorScheme:"yellow",href:"https://github.com/0xRadi/OWASP-Web-Checklist",mdxType:"BadgeLink"},"OWASP Web Application Security Testing Checklist"),(0,r.kt)(i,{badgeText:"Read",colorScheme:"yellow",href:"https://sucuri.net/guides/owasp-top-10-security-vulnerabilities-2021/",mdxType:"BadgeLink"},"OWASP Top 10 Security Risks"),(0,r.kt)(i,{badgeText:"Read",colorScheme:"yellow",href:"https://cheatsheetseries.owasp.org/cheatsheets/AJAX_Security_Cheat_Sheet.html",mdxType:"BadgeLink"},"OWASP Cheatsheets"))}c.isMDXComponent=!0},9012:function(e,t,n){"use strict";n.r(t),n.d(t,{default:function(){return c}});n(7294);var r=n(4137);function o(e,t){if(null==e)return{};var n,r,o=function(e,t){if(null==e)return{};var n,r,o={},a=Object.keys(e);for(r=0;r=0||(o[n]=e[n]);return o}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}var a=function(e){return function(t){return console.warn("Component "+e+" was not imported, exported, or provided by MDXProvider as global scope"),(0,r.kt)("div",Object.assign({},t))}},s=a("ResourceGroupTitle"),i=a("BadgeLink"),l={};function c(e){var t=e.components,n=o(e,["components"]);return(0,r.kt)("wrapper",Object.assign({},l,n,{components:t,mdxType:"MDXLayout"}),(0,r.kt)("h1",null,"Web Security Knowledge"),(0,r.kt)("p",null,"Web security refers to the protective measures taken by the developers to protect the web applications from threats that could affect the business."),(0,r.kt)(s,{mdxType:"ResourceGroupTitle"},"Free Content"),(0,r.kt)(i,{badgeText:"Read",colorScheme:"yellow",href:"https://developers.google.com/web/fundamentals/security/encrypt-in-transit/why-https",mdxType:"BadgeLink"},"Why HTTPS Matters"),(0,r.kt)(i,{badgeText:"Read",colorScheme:"yellow",href:"https://en.wikipedia.org/wiki/OWASP",mdxType:"BadgeLink"},"Wikipedia - OWASP"),(0,r.kt)(i,{badgeText:"Read",colorScheme:"yellow",href:"https://github.com/0xRadi/OWASP-Web-Checklist",mdxType:"BadgeLink"},"OWASP Web Application Security Testing Checklist"),(0,r.kt)(i,{badgeText:"Read",colorScheme:"yellow",href:"https://sucuri.net/guides/owasp-top-10-security-vulnerabilities-2021/",mdxType:"BadgeLink"},"OWASP Top 10 Security Risks"),(0,r.kt)(i,{badgeText:"Read",colorScheme:"yellow",href:"https://cheatsheetseries.owasp.org/cheatsheets/AJAX_Security_Cheat_Sheet.html",mdxType:"BadgeLink"},"OWASP Cheatsheets"),(0,r.kt)(i,{badgeText:"Read",colorScheme:"yellow",href:"https://developer.mozilla.org/en-US/docs/Web/HTTP/CSP",mdxType:"BadgeLink"},"Content Security Policy (CSP)"))}c.isMDXComponent=!0},1415:function(e,t,n){"use strict";n.r(t),n.d(t,{default:function(){return c}});n(7294);var r=n(4137);function o(e,t){if(null==e)return{};var n,r,o=function(e,t){if(null==e)return{};var n,r,o={},a=Object.keys(e);for(r=0;r=0||(o[n]=e[n]);return o}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}var a=function(e){return function(t){return console.warn("Component "+e+" was not imported, exported, or provided by MDXProvider as global scope"),(0,r.kt)("div",Object.assign({},t))}},s=a("ResourceGroupTitle"),i=a("BadgeLink"),l={};function c(e){var t=e.components,n=o(e,["components"]);return(0,r.kt)("wrapper",Object.assign({},l,n,{components:t,mdxType:"MDXLayout"}),(0,r.kt)("h1",null,"npm"),(0,r.kt)("p",null,"npm is a package manager for the JavaScript programming language maintained by npm, Inc. npm is the default package manager for the JavaScript runtime environment Node.js."),(0,r.kt)(s,{mdxType:"ResourceGroupTitle"},"Free Content"),(0,r.kt)(i,{badgeText:"Read",colorScheme:"yellow",href:"https://peterxjang.com/blog/modern-javascript-explained-for-dinosaurs.html",mdxType:"BadgeLink"},"Modern JavaScript for Dinosaurs"),(0,r.kt)(i,{badgeText:"Read",colorScheme:"yellow",href:"https://nodesource.com/blog/an-absolute-beginners-guide-to-using-npm/",mdxType:"BadgeLink"},"An Absolute Beginner's Guide to Using npm"),(0,r.kt)(i,{badgeText:"Watch",href:"https://www.youtube.com/watch?v=2V1UUhBJ62Y",mdxType:"BadgeLink"},"NPM tutorial for Beginners"),(0,r.kt)(i,{badgeText:"Watch",href:"https://www.youtube.com/watch?v=jHDhaSSKmB0",mdxType:"BadgeLink"},"NPM Crash Course"))}c.isMDXComponent=!0},6356:function(e,t,n){"use strict";n.r(t),n.d(t,{default:function(){return c}});n(7294);var r=n(4137);function o(e,t){if(null==e)return{};var n,r,o=function(e,t){if(null==e)return{};var n,r,o={},a=Object.keys(e);for(r=0;r=0||(o[n]=e[n]);return o}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}var a=function(e){return function(t){return console.warn("Component "+e+" was not imported, exported, or provided by MDXProvider as global scope"),(0,r.kt)("div",Object.assign({},t))}},s=a("ResourceGroupTitle"),i=a("BadgeLink"),l={};function c(e){var t=e.components,n=o(e,["components"]);return(0,r.kt)("wrapper",Object.assign({},l,n,{components:t,mdxType:"MDXLayout"}),(0,r.kt)("h1",null,"Yarn"),(0,r.kt)("p",null,"Yarn is a software packaging system developed in 2016 by Facebook for Node.js JavaScript runtime environment that provides speed, consistency, stability, and security as an alternative to npm (package manager)."),(0,r.kt)(s,{mdxType:"ResourceGroupTitle"},"Free Content"),(0,r.kt)(i,{badgeText:"Read",colorScheme:"yellow",href:"https://peterxjang.com/blog/modern-javascript-explained-for-dinosaurs.html",mdxType:"BadgeLink"},"Modern JavaScript for Dinosaurs"),(0,r.kt)(i,{badgeText:"Read",colorScheme:"yellow",href:"https://yarnpkg.com/en/docs/getting-started",mdxType:"BadgeLink"},"Yarn - Getting Started"),(0,r.kt)(i,{badgeText:"Watch",href:"https://www.youtube.com/watch?v=g9_6KmiBISk",mdxType:"BadgeLink"},"Yarn Crash Course"))}c.isMDXComponent=!0},8988:function(e,t,n){"use strict";n.r(t),n.d(t,{default:function(){return c}});n(7294);var r=n(4137);function o(e,t){if(null==e)return{};var n,r,o=function(e,t){if(null==e)return{};var n,r,o={},a=Object.keys(e);for(r=0;r=0||(o[n]=e[n]);return o}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}var a=function(e){return function(t){return console.warn("Component "+e+" was not imported, exported, or provided by MDXProvider as global scope"),(0,r.kt)("div",Object.assign({},t))}},s=a("ResourceGroupTitle"),i=a("BadgeLink"),l={};function c(e){var t=e.components,n=o(e,["components"]);return(0,r.kt)("wrapper",Object.assign({},l,n,{components:t,mdxType:"MDXLayout"}),(0,r.kt)("h1",null,"Package Managers"),(0,r.kt)("p",null,"Package managers allow you to manage the dependencies (external code written by you or someone else) that your project needs to work correctly."),(0,r.kt)(s,{mdxType:"ResourceGroupTitle"},"Free Content"),(0,r.kt)(i,{badgeText:"Read",colorScheme:"yellow",href:"https://peterxjang.com/blog/modern-javascript-explained-for-dinosaurs.html",mdxType:"BadgeLink"},"Modern JavaScript for Dinosaurs"),(0,r.kt)(i,{badgeText:"Read",colorScheme:"yellow",href:"https://nodesource.com/blog/an-absolute-beginners-guide-to-using-npm/",mdxType:"BadgeLink"},"An Absolute Beginner's Guide to Using npm"),(0,r.kt)(i,{badgeText:"Watch",href:"https://www.youtube.com/watch?v=2V1UUhBJ62Y",mdxType:"BadgeLink"},"NPM tutorial for Beginners"),(0,r.kt)(i,{badgeText:"Watch",href:"https://www.youtube.com/watch?v=jHDhaSSKmB0",mdxType:"BadgeLink"},"NPM Crash Course"),(0,r.kt)(i,{badgeText:"Read",colorScheme:"yellow",href:"https://yarnpkg.com/en/docs/getting-started",mdxType:"BadgeLink"},"Yarn - Getting Started"),(0,r.kt)(i,{badgeText:"Watch",href:"https://www.youtube.com/watch?v=g9_6KmiBISk",mdxType:"BadgeLink"},"Yarn Crash Course"))}c.isMDXComponent=!0},6665:function(e,t,n){"use strict";n.r(t),n.d(t,{default:function(){return c}});n(7294);var r=n(4137);function o(e,t){if(null==e)return{};var n,r,o=function(e,t){if(null==e)return{};var n,r,o={},a=Object.keys(e);for(r=0;r=0||(o[n]=e[n]);return o}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}var a=function(e){return function(t){return console.warn("Component "+e+" was not imported, exported, or provided by MDXProvider as global scope"),(0,r.kt)("div",Object.assign({},t))}},s=a("ResourceGroupTitle"),i=a("BadgeLink"),l={};function c(e){var t=e.components,n=o(e,["components"]);return(0,r.kt)("wrapper",Object.assign({},l,n,{components:t,mdxType:"MDXLayout"}),(0,r.kt)("h1",null,"BEM"),(0,r.kt)("p",null,"The Block, Element, Modifier methodology (commonly referred to as BEM) is a popular naming convention for classes in HTML and CSS. Developed by the team at Yandex, its goal is to help developers better understand the relationship between the HTML and CSS in a given project."),(0,r.kt)(s,{mdxType:"ResourceGroupTitle"},"Free Content"),(0,r.kt)(i,{colorScheme:"blue",badgeText:"Official Website",href:"https://en.bem.info",mdxType:"BadgeLink"},"BEM Official Website"),(0,r.kt)(i,{colorScheme:"blue",badgeText:"Official Documentation",href:"https://en.bem.info/methodology/quick-start",mdxType:"BadgeLink"},"BEM Documentation"),(0,r.kt)(i,{badgeText:"Read",colorScheme:"yellow",href:"https://css-tricks.com/bem-101",mdxType:"BadgeLink"},"BEM 101"),(0,r.kt)(i,{colorScheme:"yellow",badgeText:"Read",href:"https://en.bem.info/tutorials/",mdxType:"BadgeLink"},"BEM Tutorials"))}c.isMDXComponent=!0},1750:function(e,t,n){"use strict";n.r(t),n.d(t,{default:function(){return c}});n(7294);var r=n(4137);function o(e,t){if(null==e)return{};var n,r,o=function(e,t){if(null==e)return{};var n,r,o={},a=Object.keys(e);for(r=0;r=0||(o[n]=e[n]);return o}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}var a=function(e){return function(t){return console.warn("Component "+e+" was not imported, exported, or provided by MDXProvider as global scope"),(0,r.kt)("div",Object.assign({},t))}},s=a("ResourceGroupTitle"),i=a("BadgeLink"),l={};function c(e){var t=e.components,n=o(e,["components"]);return(0,r.kt)("wrapper",Object.assign({},l,n,{components:t,mdxType:"MDXLayout"}),(0,r.kt)("h1",null,"OOCSS"),(0,r.kt)("p",null,"As with any object-based coding method, the purpose of OOCSS or Object Oriented CSS is to encourage code reuse and, ultimately, faster and more efficient stylesheets that are easier to add to and maintain."),(0,r.kt)(s,{mdxType:"ResourceGroupTitle"},"Free Content"),(0,r.kt)(i,{colorScheme:"blue",badgeText:"Official Website",href:"http://oocss.org/",mdxType:"BadgeLink"},"OOCSS Official Website"),(0,r.kt)(i,{colorScheme:"yellow",badgeText:"Read",href:"https://www.smashingmagazine.com/2011/12/an-introduction-to-object-oriented-css-oocss/",mdxType:"BadgeLink"},"Introduction to Object Oriented CSS"))}c.isMDXComponent=!0},8887:function(e,t,n){"use strict";n.r(t),n.d(t,{default:function(){return c}});n(7294);var r=n(4137);function o(e,t){if(null==e)return{};var n,r,o=function(e,t){if(null==e)return{};var n,r,o={},a=Object.keys(e);for(r=0;r=0||(o[n]=e[n]);return o}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}var a=function(e){return function(t){return console.warn("Component "+e+" was not imported, exported, or provided by MDXProvider as global scope"),(0,r.kt)("div",Object.assign({},t))}},s=a("ResourceGroupTitle"),i=a("BadgeLink"),l={};function c(e){var t=e.components,n=o(e,["components"]);return(0,r.kt)("wrapper",Object.assign({},l,n,{components:t,mdxType:"MDXLayout"}),(0,r.kt)("h1",null,"SMACSS"),(0,r.kt)("p",null,"SMACSS (pronounced \u201csmacks\u201d) is more style guide than rigid framework. SMACSS is a way to examine your design process and as a way to fit those rigid frameworks into a flexible thought process. It is an attempt to document a consistent approach to site development when using CSS."),(0,r.kt)(s,{mdxType:"ResourceGroupTitle"},"Free Content"),(0,r.kt)(i,{colorScheme:"blue",badgeText:"Official Website",href:"http://smacss.com/",mdxType:"BadgeLink"},"SMACSS Official Website"))}c.isMDXComponent=!0},5220:function(e,t,n){"use strict";n.r(t),n.d(t,{default:function(){return c}});n(7294);var r=n(4137);function o(e,t){if(null==e)return{};var n,r,o=function(e,t){if(null==e)return{};var n,r,o={},a=Object.keys(e);for(r=0;r=0||(o[n]=e[n]);return o}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}var a=function(e){return function(t){return console.warn("Component "+e+" was not imported, exported, or provided by MDXProvider as global scope"),(0,r.kt)("div",Object.assign({},t))}},s=a("ResourceGroupTitle"),i=a("BadgeLink"),l={};function c(e){var t=e.components,n=o(e,["components"]);return(0,r.kt)("wrapper",Object.assign({},l,n,{components:t,mdxType:"MDXLayout"}),(0,r.kt)("h1",null,"CSS Architecture"),(0,r.kt)("p",null,"CSS is notoriously difficult to manage in large, complex, rapidly-iterated systems. There are different ways of writing CSS that allows in writing more maintainable CSS."),(0,r.kt)(s,{mdxType:"ResourceGroupTitle"},"Free Content"),(0,r.kt)(i,{colorScheme:"yellow",badgeText:"Read",href:"https://www.webfx.com/blog/web-design/css-methodologies/",mdxType:"BadgeLink"},"A Look at Some CSS Methodologies"),(0,r.kt)(i,{colorScheme:"blue",badgeText:"Official Website",href:"https://en.bem.info",mdxType:"BadgeLink"},"BEM Official Website"),(0,r.kt)(i,{colorScheme:"blue",badgeText:"Official Website",href:"http://oocss.org/",mdxType:"BadgeLink"},"OOCSS Official Website"),(0,r.kt)(i,{colorScheme:"blue",badgeText:"Official Website",href:"http://smacss.com/",mdxType:"BadgeLink"},"SMACSS Official Website"))}c.isMDXComponent=!0},4447:function(e,t,n){"use strict";n.r(t),n.d(t,{default:function(){return c}});n(7294);var r=n(4137);function o(e,t){if(null==e)return{};var n,r,o=function(e,t){if(null==e)return{};var n,r,o={},a=Object.keys(e);for(r=0;r=0||(o[n]=e[n]);return o}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}var a=function(e){return function(t){return console.warn("Component "+e+" was not imported, exported, or provided by MDXProvider as global scope"),(0,r.kt)("div",Object.assign({},t))}},s=a("ResourceGroupTitle"),i=a("BadgeLink"),l={};function c(e){var t=e.components,n=o(e,["components"]);return(0,r.kt)("wrapper",Object.assign({},l,n,{components:t,mdxType:"MDXLayout"}),(0,r.kt)("h1",null,"Sass"),(0,r.kt)("p",null,"Sass is a preprocessor scripting language that is interpreted or compiled into Cascading Style Sheets. It lets you write maintainable CSS and provides features like variable, nesting, mixins, extension, functions, loops, conditionals and so on."),(0,r.kt)(s,{mdxType:"ResourceGroupTitle"},"Free Content"),(0,r.kt)(i,{colorScheme:"blue",badgeText:"Official Website",href:"https://sass-lang.com/",mdxType:"BadgeLink"},"Sass Website"),(0,r.kt)(i,{colorScheme:"blue",badgeText:"Documentation",href:"https://sass-lang.com/documentation",mdxType:"BadgeLink"},"Official Documentation"),(0,r.kt)(i,{badgeText:"Watch",href:"https://www.youtube.com/watch?v=_a5j7KoflTs",mdxType:"BadgeLink"}," Sass Tutorial for Beginners"))}c.isMDXComponent=!0},5106:function(e,t,n){"use strict";n.r(t),n.d(t,{default:function(){return s}});n(7294);var r=n(4137);function o(e,t){if(null==e)return{};var n,r,o=function(e,t){if(null==e)return{};var n,r,o={},a=Object.keys(e);for(r=0;r=0||(o[n]=e[n]);return o}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}var a={};function s(e){var t=e.components,n=o(e,["components"]);return(0,r.kt)("wrapper",Object.assign({},a,n,{components:t,mdxType:"MDXLayout"}),(0,r.kt)("h1",null,"Postcss"))}s.isMDXComponent=!0},2972:function(e,t,n){"use strict";n.r(t),n.d(t,{default:function(){return s}});n(7294);var r=n(4137);function o(e,t){if(null==e)return{};var n,r,o=function(e,t){if(null==e)return{};var n,r,o={},a=Object.keys(e);for(r=0;r=0||(o[n]=e[n]);return o}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}var a={};function s(e){var t=e.components,n=o(e,["components"]);return(0,r.kt)("wrapper",Object.assign({},a,n,{components:t,mdxType:"MDXLayout"}),(0,r.kt)("h1",null,"Less"))}s.isMDXComponent=!0},8365:function(e,t,n){"use strict";n.r(t),n.d(t,{default:function(){return c}});n(7294);var r=n(4137);function o(e,t){if(null==e)return{};var n,r,o=function(e,t){if(null==e)return{};var n,r,o={},a=Object.keys(e);for(r=0;r=0||(o[n]=e[n]);return o}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}var a=function(e){return function(t){return console.warn("Component "+e+" was not imported, exported, or provided by MDXProvider as global scope"),(0,r.kt)("div",Object.assign({},t))}},s=a("ResourceGroupTitle"),i=a("BadgeLink"),l={};function c(e){var t=e.components,n=o(e,["components"]);return(0,r.kt)("wrapper",Object.assign({},l,n,{components:t,mdxType:"MDXLayout"}),(0,r.kt)("h1",null,"CSS Preprocessors"),(0,r.kt)("p",null,"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."),(0,r.kt)(s,{mdxType:"ResourceGroupTitle"},"Free Content"),(0,r.kt)(i,{colorScheme:"yellow",badgeText:"Read",href:"https://www.freecodecamp.org/news/css-preprocessors/#:~:text=CSS%20Preprocessors%20compile%20the%20code,preprocessor%20were%20not%20in%20place.",mdxType:"BadgeLink"},"CSS Preprocessors Explained"),(0,r.kt)(i,{colorScheme:"yellow",badgeText:"Read",href:"https://sherocommerce.com/what-is-a-css-preprocessors-why-use-them/",mdxType:"BadgeLink"},"Why Use Preprocessors?"))}c.isMDXComponent=!0},6523:function(e,t,n){"use strict";n.r(t),n.d(t,{default:function(){return s}});n(7294);var r=n(4137);function o(e,t){if(null==e)return{};var n,r,o=function(e,t){if(null==e)return{};var n,r,o={},a=Object.keys(e);for(r=0;r=0||(o[n]=e[n]);return o}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}var a={};function s(e){var t=e.components,n=o(e,["components"]);return(0,r.kt)("wrapper",Object.assign({},a,n,{components:t,mdxType:"MDXLayout"}),(0,r.kt)("h1",null,"Npm scripts"))}s.isMDXComponent=!0},8664:function(e,t,n){"use strict";n.r(t),n.d(t,{default:function(){return s}});n(7294);var r=n(4137);function o(e,t){if(null==e)return{};var n,r,o=function(e,t){if(null==e)return{};var n,r,o={},a=Object.keys(e);for(r=0;r=0||(o[n]=e[n]);return o}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}var a={};function s(e){var t=e.components,n=o(e,["components"]);return(0,r.kt)("wrapper",Object.assign({},a,n,{components:t,mdxType:"MDXLayout"}),(0,r.kt)("h1",null,"Task runners"))}s.isMDXComponent=!0},6795:function(e,t,n){"use strict";n.r(t),n.d(t,{default:function(){return c}});n(7294);var r=n(4137);function o(e,t){if(null==e)return{};var n,r,o=function(e,t){if(null==e)return{};var n,r,o={},a=Object.keys(e);for(r=0;r=0||(o[n]=e[n]);return o}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}var a=function(e){return function(t){return console.warn("Component "+e+" was not imported, exported, or provided by MDXProvider as global scope"),(0,r.kt)("div",Object.assign({},t))}},s=a("ResourceGroupTitle"),i=a("BadgeLink"),l={};function c(e){var t=e.components,n=o(e,["components"]);return(0,r.kt)("wrapper",Object.assign({},l,n,{components:t,mdxType:"MDXLayout"}),(0,r.kt)("h1",null,"Webpack"),(0,r.kt)("p",null,"Webpack is a module bundler. Its main purpose is to bundle JavaScript files for usage in a browser, yet it is also capable of transforming, bundling, or packaging just about any resource or asset."),(0,r.kt)(s,{mdxType:"ResourceGroupTitle"},"Free Content"),(0,r.kt)(i,{colorScheme:"blue",badgeText:"Official Website",href:"https://webpack.js.org/",mdxType:"BadgeLink"},"Webpack Official Website"),(0,r.kt)(i,{colorScheme:"blue",badgeText:"Official Documentation",href:"https://webpack.js.org/concepts/",mdxType:"BadgeLink"},"Webpack Documentation"))}c.isMDXComponent=!0},9500:function(e,t,n){"use strict";n.r(t),n.d(t,{default:function(){return s}});n(7294);var r=n(4137);function o(e,t){if(null==e)return{};var n,r,o=function(e,t){if(null==e)return{};var n,r,o={},a=Object.keys(e);for(r=0;r=0||(o[n]=e[n]);return o}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}var a={};function s(e){var t=e.components,n=o(e,["components"]);return(0,r.kt)("wrapper",Object.assign({},a,n,{components:t,mdxType:"MDXLayout"}),(0,r.kt)("h1",null,"Esbuild"))}s.isMDXComponent=!0},5629:function(e,t,n){"use strict";n.r(t),n.d(t,{default:function(){return s}});n(7294);var r=n(4137);function o(e,t){if(null==e)return{};var n,r,o=function(e,t){if(null==e)return{};var n,r,o={},a=Object.keys(e);for(r=0;r=0||(o[n]=e[n]);return o}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}var a={};function s(e){var t=e.components,n=o(e,["components"]);return(0,r.kt)("wrapper",Object.assign({},a,n,{components:t,mdxType:"MDXLayout"}),(0,r.kt)("h1",null,"Rollup"))}s.isMDXComponent=!0},5648:function(e,t,n){"use strict";n.r(t),n.d(t,{default:function(){return s}});n(7294);var r=n(4137);function o(e,t){if(null==e)return{};var n,r,o=function(e,t){if(null==e)return{};var n,r,o={},a=Object.keys(e);for(r=0;r=0||(o[n]=e[n]);return o}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}var a={};function s(e){var t=e.components,n=o(e,["components"]);return(0,r.kt)("wrapper",Object.assign({},a,n,{components:t,mdxType:"MDXLayout"}),(0,r.kt)("h1",null,"Parcel"))}s.isMDXComponent=!0},762:function(e,t,n){"use strict";n.r(t),n.d(t,{default:function(){return s}});n(7294);var r=n(4137);function o(e,t){if(null==e)return{};var n,r,o=function(e,t){if(null==e)return{};var n,r,o={},a=Object.keys(e);for(r=0;r=0||(o[n]=e[n]);return o}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}var a={};function s(e){var t=e.components,n=o(e,["components"]);return(0,r.kt)("wrapper",Object.assign({},a,n,{components:t,mdxType:"MDXLayout"}),(0,r.kt)("h1",null,"Vite"))}s.isMDXComponent=!0},6459:function(e,t,n){"use strict";n.r(t),n.d(t,{default:function(){return s}});n(7294);var r=n(4137);function o(e,t){if(null==e)return{};var n,r,o=function(e,t){if(null==e)return{};var n,r,o={},a=Object.keys(e);for(r=0;r=0||(o[n]=e[n]);return o}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}var a={};function s(e){var t=e.components,n=o(e,["components"]);return(0,r.kt)("wrapper",Object.assign({},a,n,{components:t,mdxType:"MDXLayout"}),(0,r.kt)("h1",null,"Module bundlers"))}s.isMDXComponent=!0},840:function(e,t,n){"use strict";n.r(t),n.d(t,{default:function(){return s}});n(7294);var r=n(4137);function o(e,t){if(null==e)return{};var n,r,o=function(e,t){if(null==e)return{};var n,r,o={},a=Object.keys(e);for(r=0;r=0||(o[n]=e[n]);return o}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}var a={};function s(e){var t=e.components,n=o(e,["components"]);return(0,r.kt)("wrapper",Object.assign({},a,n,{components:t,mdxType:"MDXLayout"}),(0,r.kt)("h1",null,"Prettier"))}s.isMDXComponent=!0},2816:function(e,t,n){"use strict";n.r(t),n.d(t,{default:function(){return s}});n(7294);var r=n(4137);function o(e,t){if(null==e)return{};var n,r,o=function(e,t){if(null==e)return{};var n,r,o={},a=Object.keys(e);for(r=0;r=0||(o[n]=e[n]);return o}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}var a={};function s(e){var t=e.components,n=o(e,["components"]);return(0,r.kt)("wrapper",Object.assign({},a,n,{components:t,mdxType:"MDXLayout"}),(0,r.kt)("h1",null,"Eslint"))}s.isMDXComponent=!0},4453:function(e,t,n){"use strict";n.r(t),n.d(t,{default:function(){return s}});n(7294);var r=n(4137);function o(e,t){if(null==e)return{};var n,r,o=function(e,t){if(null==e)return{};var n,r,o={},a=Object.keys(e);for(r=0;r=0||(o[n]=e[n]);return o}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}var a={};function s(e){var t=e.components,n=o(e,["components"]);return(0,r.kt)("wrapper",Object.assign({},a,n,{components:t,mdxType:"MDXLayout"}),(0,r.kt)("h1",null,"Standardjs"))}s.isMDXComponent=!0},2310:function(e,t,n){"use strict";n.r(t),n.d(t,{default:function(){return s}});n(7294);var r=n(4137);function o(e,t){if(null==e)return{};var n,r,o=function(e,t){if(null==e)return{};var n,r,o={},a=Object.keys(e);for(r=0;r=0||(o[n]=e[n]);return o}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}var a={};function s(e){var t=e.components,n=o(e,["components"]);return(0,r.kt)("wrapper",Object.assign({},a,n,{components:t,mdxType:"MDXLayout"}),(0,r.kt)("h1",null,"Linters formatters"))}s.isMDXComponent=!0},7093:function(e,t,n){"use strict";n.r(t),n.d(t,{default:function(){return s}});n(7294);var r=n(4137);function o(e,t){if(null==e)return{};var n,r,o=function(e,t){if(null==e)return{};var n,r,o={},a=Object.keys(e);for(r=0;r=0||(o[n]=e[n]);return o}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}var a={};function s(e){var t=e.components,n=o(e,["components"]);return(0,r.kt)("wrapper",Object.assign({},a,n,{components:t,mdxType:"MDXLayout"}),(0,r.kt)("h1",null,"Build tools"))}s.isMDXComponent=!0},7139:function(e,t,n){"use strict";n.r(t),n.d(t,{default:function(){return c}});n(7294);var r=n(4137);function o(e,t){if(null==e)return{};var n,r,o=function(e,t){if(null==e)return{};var n,r,o={},a=Object.keys(e);for(r=0;r=0||(o[n]=e[n]);return o}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}var a=function(e){return function(t){return console.warn("Component "+e+" was not imported, exported, or provided by MDXProvider as global scope"),(0,r.kt)("div",Object.assign({},t))}},s=a("ResourceGroupTitle"),i=a("BadgeLink"),l={};function c(e){var t=e.components,n=o(e,["components"]);return(0,r.kt)("wrapper",Object.assign({},l,n,{components:t,mdxType:"MDXLayout"}),(0,r.kt)("h1",null,"Redux"),(0,r.kt)("p",null,"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 ",(0,r.kt)("a",Object.assign({parentName:"p"},{href:"https://github.com/reduxjs/redux-devtools"}),"live code editing combined with a time traveling debugger"),"."),(0,r.kt)(s,{mdxType:"ResourceGroupTitle"},"Free Content"),(0,r.kt)(i,{colorScheme:"yellow",badgeText:"Read",href:"https://redux.js.org/",mdxType:"BadgeLink"},"Official Website"),(0,r.kt)(i,{colorScheme:"yellow",badgeText:"Read",href:"https://redux.js.org/introduction/getting-started",mdxType:"BadgeLink"},"Official Getting Started to Redux"),(0,r.kt)(i,{colorScheme:"green",badgeText:"Course",href:"https://redux.js.org/tutorials/essentials/part-1-overview-concepts",mdxType:"BadgeLink"},"Official Tutorial to Learn Redux"),(0,r.kt)(i,{colorScheme:"green",badgeText:"Course",href:"https://egghead.io/courses/fundamentals-of-redux-course-from-dan-abramov-bd5cc867",mdxType:"BadgeLink"},"Fundamentals of Redux Course from Dan Abramov"))}c.isMDXComponent=!0},5783:function(e,t,n){"use strict";n.r(t),n.d(t,{default:function(){return s}});n(7294);var r=n(4137);function o(e,t){if(null==e)return{};var n,r,o=function(e,t){if(null==e)return{};var n,r,o={},a=Object.keys(e);for(r=0;r=0||(o[n]=e[n]);return o}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}var a={};function s(e){var t=e.components,n=o(e,["components"]);return(0,r.kt)("wrapper",Object.assign({},a,n,{components:t,mdxType:"MDXLayout"}),(0,r.kt)("h1",null,"Mobx"))}s.isMDXComponent=!0},7810:function(e,t,n){"use strict";n.r(t),n.d(t,{default:function(){return s}});n(7294);var r=n(4137);function o(e,t){if(null==e)return{};var n,r,o=function(e,t){if(null==e)return{};var n,r,o={},a=Object.keys(e);for(r=0;r=0||(o[n]=e[n]);return o}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}var a={};function s(e){var t=e.components,n=o(e,["components"]);return(0,r.kt)("wrapper",Object.assign({},a,n,{components:t,mdxType:"MDXLayout"}),(0,r.kt)("h1",null,"Recoil"))}s.isMDXComponent=!0},6199:function(e,t,n){"use strict";n.r(t),n.d(t,{default:function(){return c}});n(7294);var r=n(4137);function o(e,t){if(null==e)return{};var n,r,o=function(e,t){if(null==e)return{};var n,r,o={},a=Object.keys(e);for(r=0;r=0||(o[n]=e[n]);return o}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}var a=function(e){return function(t){return console.warn("Component "+e+" was not imported, exported, or provided by MDXProvider as global scope"),(0,r.kt)("div",Object.assign({},t))}},s=a("ResourceGroupTitle"),i=a("BadgeLink"),l={};function c(e){var t=e.components,n=o(e,["components"]);return(0,r.kt)("wrapper",Object.assign({},l,n,{components:t,mdxType:"MDXLayout"}),(0,r.kt)("h1",null,"React"),(0,r.kt)("p",null,"React is the most popular front-end JavaScript library for building user interfaces. React can also render on the server using Node and power mobile apps using React Native."),(0,r.kt)(s,{mdxType:"ResourceGroupTitle"},"Free Content"),(0,r.kt)(i,{colorScheme:"blue",badgeText:"Framework Website",href:"https://reactjs.org/",mdxType:"BadgeLink"},"React Website"),(0,r.kt)(i,{colorScheme:"blue",badgeText:"Read",href:"https://reactjs.org/tutorial/tutorial.html",mdxType:"BadgeLink"},"Official Getting Started"),(0,r.kt)(i,{badgeText:"Course",colorScheme:"green",href:"https://egghead.io/courses/the-beginner-s-guide-to-react",mdxType:"BadgeLink"},"The Beginner's Guide to React"),(0,r.kt)(i,{badgeText:"Course",colorScheme:"green",href:"https://www.youtube.com/watch?v=nTeuhbP7wdE",mdxType:"BadgeLink"},"React JS Course for Beginners"),(0,r.kt)(i,{badgeText:"Watch",href:"https://www.youtube.com/watch?v=i793Qm6kv3U",mdxType:"BadgeLink"},"Understanding React's UI Rendering Process"))}c.isMDXComponent=!0},5685:function(e,t,n){"use strict";n.r(t),n.d(t,{default:function(){return s}});n(7294);var r=n(4137);function o(e,t){if(null==e)return{};var n,r,o=function(e,t){if(null==e)return{};var n,r,o={},a=Object.keys(e);for(r=0;r=0||(o[n]=e[n]);return o}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}var a={};function s(e){var t=e.components,n=o(e,["components"]);return(0,r.kt)("wrapper",Object.assign({},a,n,{components:t,mdxType:"MDXLayout"}),(0,r.kt)("h1",null,"Rxjs"))}s.isMDXComponent=!0},3162:function(e,t,n){"use strict";n.r(t),n.d(t,{default:function(){return s}});n(7294);var r=n(4137);function o(e,t){if(null==e)return{};var n,r,o=function(e,t){if(null==e)return{};var n,r,o={},a=Object.keys(e);for(r=0;r=0||(o[n]=e[n]);return o}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}var a={};function s(e){var t=e.components,n=o(e,["components"]);return(0,r.kt)("wrapper",Object.assign({},a,n,{components:t,mdxType:"MDXLayout"}),(0,r.kt)("h1",null,"Ngrx"))}s.isMDXComponent=!0},3666:function(e,t,n){"use strict";n.r(t),n.d(t,{default:function(){return s}});n(7294);var r=n(4137);function o(e,t){if(null==e)return{};var n,r,o=function(e,t){if(null==e)return{};var n,r,o={},a=Object.keys(e);for(r=0;r=0||(o[n]=e[n]);return o}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}var a={};function s(e){var t=e.components,n=o(e,["components"]);return(0,r.kt)("wrapper",Object.assign({},a,n,{components:t,mdxType:"MDXLayout"}),(0,r.kt)("h1",null,"Angular"))}s.isMDXComponent=!0},549:function(e,t,n){"use strict";n.r(t),n.d(t,{default:function(){return c}});n(7294);var r=n(4137);function o(e,t){if(null==e)return{};var n,r,o=function(e,t){if(null==e)return{};var n,r,o={},a=Object.keys(e);for(r=0;r=0||(o[n]=e[n]);return o}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}var a=function(e){return function(t){return console.warn("Component "+e+" was not imported, exported, or provided by MDXProvider as global scope"),(0,r.kt)("div",Object.assign({},t))}},s=a("ResourceGroupTitle"),i=a("BadgeLink"),l={};function c(e){var t=e.components,n=o(e,["components"]);return(0,r.kt)("wrapper",Object.assign({},l,n,{components:t,mdxType:"MDXLayout"}),(0,r.kt)("h1",null,"Vuex"),(0,r.kt)("p",null,"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. "),(0,r.kt)(s,{mdxType:"ResourceGroupTitle"},"Free Content"),(0,r.kt)(i,{colorScheme:"yellow",badgeText:"Read",href:"https://vuex.vuejs.org/",mdxType:"BadgeLink"},"Official Documentation"),(0,r.kt)(i,{colorScheme:"purple",badgeText:"Watch",href:"https://www.youtube.com/watch?v=5lVQgZzLMHc",mdxType:"BadgeLink"},"Vuex Crash Course"))}c.isMDXComponent=!0},5277:function(e,t,n){"use strict";n.r(t),n.d(t,{default:function(){return s}});n(7294);var r=n(4137);function o(e,t){if(null==e)return{};var n,r,o=function(e,t){if(null==e)return{};var n,r,o={},a=Object.keys(e);for(r=0;r=0||(o[n]=e[n]);return o}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}var a={};function s(e){var t=e.components,n=o(e,["components"]);return(0,r.kt)("wrapper",Object.assign({},a,n,{components:t,mdxType:"MDXLayout"}),(0,r.kt)("h1",null,"Vue js"))}s.isMDXComponent=!0},1473:function(e,t,n){"use strict";n.r(t),n.d(t,{default:function(){return s}});n(7294);var r=n(4137);function o(e,t){if(null==e)return{};var n,r,o=function(e,t){if(null==e)return{};var n,r,o={},a=Object.keys(e);for(r=0;r=0||(o[n]=e[n]);return o}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}var a={};function s(e){var t=e.components,n=o(e,["components"]);return(0,r.kt)("wrapper",Object.assign({},a,n,{components:t,mdxType:"MDXLayout"}),(0,r.kt)("h1",null,"Pick a framework"))}s.isMDXComponent=!0},3745:function(e,t,n){"use strict";n.r(t),n.d(t,{default:function(){return s}});n(7294);var r=n(4137);function o(e,t){if(null==e)return{};var n,r,o=function(e,t){if(null==e)return{};var n,r,o={},a=Object.keys(e);for(r=0;r=0||(o[n]=e[n]);return o}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}var a={};function s(e){var t=e.components,n=o(e,["components"]);return(0,r.kt)("wrapper",Object.assign({},a,n,{components:t,mdxType:"MDXLayout"}),(0,r.kt)("h1",null,"Styled components"))}s.isMDXComponent=!0},1720:function(e,t,n){"use strict";n.r(t),n.d(t,{default:function(){return s}});n(7294);var r=n(4137);function o(e,t){if(null==e)return{};var n,r,o=function(e,t){if(null==e)return{};var n,r,o={},a=Object.keys(e);for(r=0;r=0||(o[n]=e[n]);return o}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}var a={};function s(e){var t=e.components,n=o(e,["components"]);return(0,r.kt)("wrapper",Object.assign({},a,n,{components:t,mdxType:"MDXLayout"}),(0,r.kt)("h1",null,"Css modules"))}s.isMDXComponent=!0},4349:function(e,t,n){"use strict";n.r(t),n.d(t,{default:function(){return s}});n(7294);var r=n(4137);function o(e,t){if(null==e)return{};var n,r,o=function(e,t){if(null==e)return{};var n,r,o={},a=Object.keys(e);for(r=0;r=0||(o[n]=e[n]);return o}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}var a={};function s(e){var t=e.components,n=o(e,["components"]);return(0,r.kt)("wrapper",Object.assign({},a,n,{components:t,mdxType:"MDXLayout"}),(0,r.kt)("h1",null,"Styled jsx"))}s.isMDXComponent=!0},4291:function(e,t,n){"use strict";n.r(t),n.d(t,{default:function(){return s}});n(7294);var r=n(4137);function o(e,t){if(null==e)return{};var n,r,o=function(e,t){if(null==e)return{};var n,r,o={},a=Object.keys(e);for(r=0;r=0||(o[n]=e[n]);return o}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}var a={};function s(e){var t=e.components,n=o(e,["components"]);return(0,r.kt)("wrapper",Object.assign({},a,n,{components:t,mdxType:"MDXLayout"}),(0,r.kt)("h1",null,"Emotion"))}s.isMDXComponent=!0},9904:function(e,t,n){"use strict";n.r(t),n.d(t,{default:function(){return s}});n(7294);var r=n(4137);function o(e,t){if(null==e)return{};var n,r,o=function(e,t){if(null==e)return{};var n,r,o={},a=Object.keys(e);for(r=0;r=0||(o[n]=e[n]);return o}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}var a={};function s(e){var t=e.components,n=o(e,["components"]);return(0,r.kt)("wrapper",Object.assign({},a,n,{components:t,mdxType:"MDXLayout"}),(0,r.kt)("h1",null,"Modern css"))}s.isMDXComponent=!0},1484:function(e,t,n){"use strict";n.r(t),n.d(t,{default:function(){return s}});n(7294);var r=n(4137);function o(e,t){if(null==e)return{};var n,r,o=function(e,t){if(null==e)return{};var n,r,o={},a=Object.keys(e);for(r=0;r=0||(o[n]=e[n]);return o}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}var a={};function s(e){var t=e.components,n=o(e,["components"]);return(0,r.kt)("wrapper",Object.assign({},a,n,{components:t,mdxType:"MDXLayout"}),(0,r.kt)("h1",null,"Html templates"))}s.isMDXComponent=!0},6625:function(e,t,n){"use strict";n.r(t),n.d(t,{default:function(){return s}});n(7294);var r=n(4137);function o(e,t){if(null==e)return{};var n,r,o=function(e,t){if(null==e)return{};var n,r,o={},a=Object.keys(e);for(r=0;r=0||(o[n]=e[n]);return o}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}var a={};function s(e){var t=e.components,n=o(e,["components"]);return(0,r.kt)("wrapper",Object.assign({},a,n,{components:t,mdxType:"MDXLayout"}),(0,r.kt)("h1",null,"Custom elements"))}s.isMDXComponent=!0},2901:function(e,t,n){"use strict";n.r(t),n.d(t,{default:function(){return s}});n(7294);var r=n(4137);function o(e,t){if(null==e)return{};var n,r,o=function(e,t){if(null==e)return{};var n,r,o={},a=Object.keys(e);for(r=0;r=0||(o[n]=e[n]);return o}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}var a={};function s(e){var t=e.components,n=o(e,["components"]);return(0,r.kt)("wrapper",Object.assign({},a,n,{components:t,mdxType:"MDXLayout"}),(0,r.kt)("h1",null,"Shadow dom"))}s.isMDXComponent=!0},8933:function(e,t,n){"use strict";n.r(t),n.d(t,{default:function(){return s}});n(7294);var r=n(4137);function o(e,t){if(null==e)return{};var n,r,o=function(e,t){if(null==e)return{};var n,r,o={},a=Object.keys(e);for(r=0;r=0||(o[n]=e[n]);return o}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}var a={};function s(e){var t=e.components,n=o(e,["components"]);return(0,r.kt)("wrapper",Object.assign({},a,n,{components:t,mdxType:"MDXLayout"}),(0,r.kt)("h1",null,"Web components"))}s.isMDXComponent=!0},4642:function(e,t,n){"use strict";n.r(t),n.d(t,{default:function(){return c}});n(7294);var r=n(4137);function o(e,t){if(null==e)return{};var n,r,o=function(e,t){if(null==e)return{};var n,r,o={},a=Object.keys(e);for(r=0;r=0||(o[n]=e[n]);return o}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}var a=function(e){return function(t){return console.warn("Component "+e+" was not imported, exported, or provided by MDXProvider as global scope"),(0,r.kt)("div",Object.assign({},t))}},s=a("ResourceGroupTitle"),i=a("BadgeLink"),l={};function c(e){var t=e.components,n=o(e,["components"]);return(0,r.kt)("wrapper",Object.assign({},l,n,{components:t,mdxType:"MDXLayout"}),(0,r.kt)("h1",null,"Bootstrap"),(0,r.kt)("p",null,"Quickly design and customize responsive mobile-first sites with Bootstrap, the world\u2019s most popular front-end open source toolkit, featuring Sass variables and mixins, responsive grid system, extensive prebuilt components, and powerful JavaScript plugins."),(0,r.kt)(s,{mdxType:"ResourceGroupTitle"},"Free Content"),(0,r.kt)(i,{colorScheme:"blue",badgeText:"Framework Website",href:"https://getbootstrap.com",mdxType:"BadgeLink"},"Bootstrap Website"),(0,r.kt)(i,{colorScheme:"green",badgeText:"Course",href:"https://www.youtube.com/watch?v=-qfEOE4vtxE",mdxType:"BadgeLink"},"Bootstrap CSS Framework - Full Course for Beginners"))}c.isMDXComponent=!0},4505:function(e,t,n){"use strict";n.r(t),n.d(t,{default:function(){return s}});n(7294);var r=n(4137);function o(e,t){if(null==e)return{};var n,r,o=function(e,t){if(null==e)return{};var n,r,o={},a=Object.keys(e);for(r=0;r=0||(o[n]=e[n]);return o}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}var a={};function s(e){var t=e.components,n=o(e,["components"]);return(0,r.kt)("wrapper",Object.assign({},a,n,{components:t,mdxType:"MDXLayout"}),(0,r.kt)("h1",null,"Bulma"))}s.isMDXComponent=!0},4740:function(e,t,n){"use strict";n.r(t),n.d(t,{default:function(){return s}});n(7294);var r=n(4137);function o(e,t){if(null==e)return{};var n,r,o=function(e,t){if(null==e)return{};var n,r,o={},a=Object.keys(e);for(r=0;r=0||(o[n]=e[n]);return o}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}var a={};function s(e){var t=e.components,n=o(e,["components"]);return(0,r.kt)("wrapper",Object.assign({},a,n,{components:t,mdxType:"MDXLayout"}),(0,r.kt)("h1",null,"Css first"))}s.isMDXComponent=!0},1160:function(e,t,n){"use strict";n.r(t),n.d(t,{default:function(){return c}});n(7294);var r=n(4137);function o(e,t){if(null==e)return{};var n,r,o=function(e,t){if(null==e)return{};var n,r,o={},a=Object.keys(e);for(r=0;r=0||(o[n]=e[n]);return o}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}var a=function(e){return function(t){return console.warn("Component "+e+" was not imported, exported, or provided by MDXProvider as global scope"),(0,r.kt)("div",Object.assign({},t))}},s=a("ResourceGroupTitle"),i=a("BadgeLink"),l={};function c(e){var t=e.components,n=o(e,["components"]);return(0,r.kt)("wrapper",Object.assign({},l,n,{components:t,mdxType:"MDXLayout"}),(0,r.kt)("h1",null,"Tailwind CSS"),(0,r.kt)("p",null,"CSS Framework that provides atomic CSS classes to help you style components e.g. ",(0,r.kt)("inlineCode",{parentName:"p"},"flex"),", ",(0,r.kt)("inlineCode",{parentName:"p"},"pt-4"),", ",(0,r.kt)("inlineCode",{parentName:"p"},"text-center")," and ",(0,r.kt)("inlineCode",{parentName:"p"},"rotate-90")," that can be composed to build any design, directly in your markup."),(0,r.kt)(s,{mdxType:"ResourceGroupTitle"},"Free Content"),(0,r.kt)(i,{colorScheme:"blue",badgeText:"Framework Website",href:"https://tailwindcss.com",mdxType:"BadgeLink"},"Tailwind Website"),(0,r.kt)(i,{colorScheme:"blue",badgeText:"YouTube Channel",href:"https://www.youtube.com/c/TailwindLabs/videos",mdxType:"BadgeLink"},"Official Screencasts"),(0,r.kt)(i,{colorScheme:"yellow",badgeText:"Watch",href:"https://www.youtube.com/watch?v=hdGsFpZ0J2E",mdxType:"BadgeLink"},"Should You Use Tailwind CSS?"),(0,r.kt)(i,{badgeText:"Read",href:"https://www.codemag.com/Article/2105091/Tailwind-CSS-An-Introduction",mdxType:"BadgeLink"},"Tailwind CSS: An Introduction"),(0,r.kt)(i,{colorScheme:"green",badgeText:"Course",href:"https://www.youtube.com/watch?v=UBOj6rqRUME",mdxType:"BadgeLink"},"Tailwind CSS Crash Course"))}c.isMDXComponent=!0},6937:function(e,t,n){"use strict";n.r(t),n.d(t,{default:function(){return s}});n(7294);var r=n(4137);function o(e,t){if(null==e)return{};var n,r,o=function(e,t){if(null==e)return{};var n,r,o={},a=Object.keys(e);for(r=0;r=0||(o[n]=e[n]);return o}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}var a={};function s(e){var t=e.components,n=o(e,["components"]);return(0,r.kt)("wrapper",Object.assign({},a,n,{components:t,mdxType:"MDXLayout"}),(0,r.kt)("h1",null,"Chakra ui"))}s.isMDXComponent=!0},9120:function(e,t,n){"use strict";n.r(t),n.d(t,{default:function(){return s}});n(7294);var r=n(4137);function o(e,t){if(null==e)return{};var n,r,o=function(e,t){if(null==e)return{};var n,r,o={},a=Object.keys(e);for(r=0;r=0||(o[n]=e[n]);return o}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}var a={};function s(e){var t=e.components,n=o(e,["components"]);return(0,r.kt)("wrapper",Object.assign({},a,n,{components:t,mdxType:"MDXLayout"}),(0,r.kt)("h1",null,"Material ui"))}s.isMDXComponent=!0},3694:function(e,t,n){"use strict";n.r(t),n.d(t,{default:function(){return s}});n(7294);var r=n(4137);function o(e,t){if(null==e)return{};var n,r,o=function(e,t){if(null==e)return{};var n,r,o={},a=Object.keys(e);for(r=0;r=0||(o[n]=e[n]);return o}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}var a={};function s(e){var t=e.components,n=o(e,["components"]);return(0,r.kt)("wrapper",Object.assign({},a,n,{components:t,mdxType:"MDXLayout"}),(0,r.kt)("h1",null,"Radix ui"))}s.isMDXComponent=!0},7562:function(e,t,n){"use strict";n.r(t),n.d(t,{default:function(){return s}});n(7294);var r=n(4137);function o(e,t){if(null==e)return{};var n,r,o=function(e,t){if(null==e)return{};var n,r,o={},a=Object.keys(e);for(r=0;r=0||(o[n]=e[n]);return o}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}var a={};function s(e){var t=e.components,n=o(e,["components"]);return(0,r.kt)("wrapper",Object.assign({},a,n,{components:t,mdxType:"MDXLayout"}),(0,r.kt)("h1",null,"Js first"))}s.isMDXComponent=!0},1879:function(e,t,n){"use strict";n.r(t),n.d(t,{default:function(){return s}});n(7294);var r=n(4137);function o(e,t){if(null==e)return{};var n,r,o=function(e,t){if(null==e)return{};var n,r,o={},a=Object.keys(e);for(r=0;r=0||(o[n]=e[n]);return o}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}var a={};function s(e){var t=e.components,n=o(e,["components"]);return(0,r.kt)("wrapper",Object.assign({},a,n,{components:t,mdxType:"MDXLayout"}),(0,r.kt)("h1",null,"Css frameworks"))}s.isMDXComponent=!0},5996:function(e,t,n){"use strict";n.r(t),n.d(t,{default:function(){return s}});n(7294);var r=n(4137);function o(e,t){if(null==e)return{};var n,r,o=function(e,t){if(null==e)return{};var n,r,o={},a=Object.keys(e);for(r=0;r=0||(o[n]=e[n]);return o}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}var a={};function s(e){var t=e.components,n=o(e,["components"]);return(0,r.kt)("wrapper",Object.assign({},a,n,{components:t,mdxType:"MDXLayout"}),(0,r.kt)("h1",null,"Jest"))}s.isMDXComponent=!0},2772:function(e,t,n){"use strict";n.r(t),n.d(t,{default:function(){return s}});n(7294);var r=n(4137);function o(e,t){if(null==e)return{};var n,r,o=function(e,t){if(null==e)return{};var n,r,o={},a=Object.keys(e);for(r=0;r=0||(o[n]=e[n]);return o}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}var a={};function s(e){var t=e.components,n=o(e,["components"]);return(0,r.kt)("wrapper",Object.assign({},a,n,{components:t,mdxType:"MDXLayout"}),(0,r.kt)("h1",null,"React testing library"))}s.isMDXComponent=!0},3431:function(e,t,n){"use strict";n.r(t),n.d(t,{default:function(){return s}});n(7294);var r=n(4137);function o(e,t){if(null==e)return{};var n,r,o=function(e,t){if(null==e)return{};var n,r,o={},a=Object.keys(e);for(r=0;r=0||(o[n]=e[n]);return o}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}var a={};function s(e){var t=e.components,n=o(e,["components"]);return(0,r.kt)("wrapper",Object.assign({},a,n,{components:t,mdxType:"MDXLayout"}),(0,r.kt)("h1",null,"Cypress"))}s.isMDXComponent=!0},4375:function(e,t,n){"use strict";n.r(t),n.d(t,{default:function(){return s}});n(7294);var r=n(4137);function o(e,t){if(null==e)return{};var n,r,o=function(e,t){if(null==e)return{};var n,r,o={},a=Object.keys(e);for(r=0;r=0||(o[n]=e[n]);return o}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}var a={};function s(e){var t=e.components,n=o(e,["components"]);return(0,r.kt)("wrapper",Object.assign({},a,n,{components:t,mdxType:"MDXLayout"}),(0,r.kt)("h1",null,"Enzyme"))}s.isMDXComponent=!0},4946:function(e,t,n){"use strict";n.r(t),n.d(t,{default:function(){return s}});n(7294);var r=n(4137);function o(e,t){if(null==e)return{};var n,r,o=function(e,t){if(null==e)return{};var n,r,o={},a=Object.keys(e);for(r=0;r=0||(o[n]=e[n]);return o}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}var a={};function s(e){var t=e.components,n=o(e,["components"]);return(0,r.kt)("wrapper",Object.assign({},a,n,{components:t,mdxType:"MDXLayout"}),(0,r.kt)("h1",null,"Other options"))}s.isMDXComponent=!0},9011:function(e,t,n){"use strict";n.r(t),n.d(t,{default:function(){return s}});n(7294);var r=n(4137);function o(e,t){if(null==e)return{};var n,r,o=function(e,t){if(null==e)return{};var n,r,o={},a=Object.keys(e);for(r=0;r=0||(o[n]=e[n]);return o}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}var a={};function s(e){var t=e.components,n=o(e,["components"]);return(0,r.kt)("wrapper",Object.assign({},a,n,{components:t,mdxType:"MDXLayout"}),(0,r.kt)("h1",null,"Mocha"))}s.isMDXComponent=!0},5136:function(e,t,n){"use strict";n.r(t),n.d(t,{default:function(){return s}});n(7294);var r=n(4137);function o(e,t){if(null==e)return{};var n,r,o=function(e,t){if(null==e)return{};var n,r,o={},a=Object.keys(e);for(r=0;r=0||(o[n]=e[n]);return o}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}var a={};function s(e){var t=e.components,n=o(e,["components"]);return(0,r.kt)("wrapper",Object.assign({},a,n,{components:t,mdxType:"MDXLayout"}),(0,r.kt)("h1",null,"Chai"))}s.isMDXComponent=!0},327:function(e,t,n){"use strict";n.r(t),n.d(t,{default:function(){return s}});n(7294);var r=n(4137);function o(e,t){if(null==e)return{};var n,r,o=function(e,t){if(null==e)return{};var n,r,o={},a=Object.keys(e);for(r=0;r=0||(o[n]=e[n]);return o}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}var a={};function s(e){var t=e.components,n=o(e,["components"]);return(0,r.kt)("wrapper",Object.assign({},a,n,{components:t,mdxType:"MDXLayout"}),(0,r.kt)("h1",null,"Ava"))}s.isMDXComponent=!0},8976:function(e,t,n){"use strict";n.r(t),n.d(t,{default:function(){return s}});n(7294);var r=n(4137);function o(e,t){if(null==e)return{};var n,r,o=function(e,t){if(null==e)return{};var n,r,o={},a=Object.keys(e);for(r=0;r=0||(o[n]=e[n]);return o}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}var a={};function s(e){var t=e.components,n=o(e,["components"]);return(0,r.kt)("wrapper",Object.assign({},a,n,{components:t,mdxType:"MDXLayout"}),(0,r.kt)("h1",null,"Jasmine"))}s.isMDXComponent=!0},5770:function(e,t,n){"use strict";n.r(t),n.d(t,{default:function(){return c}});n(7294);var r=n(4137);function o(e,t){if(null==e)return{};var n,r,o=function(e,t){if(null==e)return{};var n,r,o={},a=Object.keys(e);for(r=0;r=0||(o[n]=e[n]);return o}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}var a=function(e){return function(t){return console.warn("Component "+e+" was not imported, exported, or provided by MDXProvider as global scope"),(0,r.kt)("div",Object.assign({},t))}},s=a("ResourceGroupTitle"),i=a("BadgeLink"),l={};function c(e){var t=e.components,n=o(e,["components"]);return(0,r.kt)("wrapper",Object.assign({},l,n,{components:t,mdxType:"MDXLayout"}),(0,r.kt)("h1",null,"Testing your apps"),(0,r.kt)("p",null,"Before delivering your application to users, you need to be sure that your app meets the requirements it was designed for, and that it doesn't do any weird, unintended things (called 'bugs'). To accomplish this, we 'test' our applications in different ways."),(0,r.kt)(s,{mdxType:"ResourceGroupTitle"},"Free Content"),(0,r.kt)(i,{colorScheme:"yellow",badgeText:"Read",href:"https://www.softwaretestingmaterial.com/software-testing/",mdxType:"BadgeLink"},"A comprehensive dive into software testing."),(0,r.kt)(i,{colorScheme:"yellow",badgeText:"Read",href:"https://www.atlassian.com/continuous-delivery/software-testing/types-of-software-testing",mdxType:"BadgeLink"},"The different types of software tests"),(0,r.kt)(i,{colorScheme:"yellow",badgeText:"Read",href:"https://jestjs.io/docs/tutorial-react",mdxType:"BadgeLink"},"Testing React apps with Jest"))}c.isMDXComponent=!0},3227:function(e,t,n){"use strict";n.r(t),n.d(t,{default:function(){return c}});n(7294);var r=n(4137);function o(e,t){if(null==e)return{};var n,r,o=function(e,t){if(null==e)return{};var n,r,o={},a=Object.keys(e);for(r=0;r=0||(o[n]=e[n]);return o}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}var a=function(e){return function(t){return console.warn("Component "+e+" was not imported, exported, or provided by MDXProvider as global scope"),(0,r.kt)("div",Object.assign({},t))}},s=a("ResourceGroupTitle"),i=a("BadgeLink"),l={};function c(e){var t=e.components,n=o(e,["components"]);return(0,r.kt)("wrapper",Object.assign({},l,n,{components:t,mdxType:"MDXLayout"}),(0,r.kt)("h1",null,"TypeScript"),(0,r.kt)("p",null,"TypeScript is a strongly typed programming language that builds on JavaScript, giving you better tooling at any scale."),(0,r.kt)(s,{mdxType:"ResourceGroupTitle"},"Free Resources"),(0,r.kt)(i,{colorScheme:"blue",badgeText:"Website",href:"https://www.typescriptlang.org/",mdxType:"BadgeLink"},"Official Website"),(0,r.kt)(i,{colorScheme:"blue",badgeText:"Docs",href:"https://www.typescriptlang.org/docs/",mdxType:"BadgeLink"},"Official Docs for Deep Dives"),(0,r.kt)(i,{colorScheme:"blue",badgeText:"Handbook",href:"https://www.typescriptlang.org/docs/handbook/intro.html",mdxType:"BadgeLink"},"The TypeScript Handbook"),(0,r.kt)(i,{colorScheme:"yellow",badgeText:"Read",href:"https://www.tutorialspoint.com/typescript/index.htm",mdxType:"BadgeLink"},"TypeScript Tutorial"),(0,r.kt)(i,{colorScheme:"purple",badgeText:"Watch",href:"https://www.youtube.com/watch?v=BwuLxPH8IDs",mdxType:"BadgeLink"},"TypeScript for Beginners"))}c.isMDXComponent=!0},9935:function(e,t,n){"use strict";n.r(t),n.d(t,{default:function(){return s}});n(7294);var r=n(4137);function o(e,t){if(null==e)return{};var n,r,o=function(e,t){if(null==e)return{};var n,r,o={},a=Object.keys(e);for(r=0;r=0||(o[n]=e[n]);return o}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}var a={};function s(e){var t=e.components,n=o(e,["components"]);return(0,r.kt)("wrapper",Object.assign({},a,n,{components:t,mdxType:"MDXLayout"}),(0,r.kt)("h1",null,"Flow"))}s.isMDXComponent=!0},8323:function(e,t,n){"use strict";n.r(t),n.d(t,{default:function(){return s}});n(7294);var r=n(4137);function o(e,t){if(null==e)return{};var n,r,o=function(e,t){if(null==e)return{};var n,r,o={},a=Object.keys(e);for(r=0;r=0||(o[n]=e[n]);return o}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}var a={};function s(e){var t=e.components,n=o(e,["components"]);return(0,r.kt)("wrapper",Object.assign({},a,n,{components:t,mdxType:"MDXLayout"}),(0,r.kt)("h1",null,"Type checkers"))}s.isMDXComponent=!0},4990:function(e,t,n){"use strict";n.r(t),n.d(t,{default:function(){return s}});n(7294);var r=n(4137);function o(e,t){if(null==e)return{};var n,r,o=function(e,t){if(null==e)return{};var n,r,o={},a=Object.keys(e);for(r=0;r=0||(o[n]=e[n]);return o}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}var a={};function s(e){var t=e.components,n=o(e,["components"]);return(0,r.kt)("wrapper",Object.assign({},a,n,{components:t,mdxType:"MDXLayout"}),(0,r.kt)("h1",null,"Apis"))}s.isMDXComponent=!0},5089:function(e,t,n){"use strict";n.r(t),n.d(t,{default:function(){return s}});n(7294);var r=n(4137);function o(e,t){if(null==e)return{};var n,r,o=function(e,t){if(null==e)return{};var n,r,o={},a=Object.keys(e);for(r=0;r=0||(o[n]=e[n]);return o}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}var a={};function s(e){var t=e.components,n=o(e,["components"]);return(0,r.kt)("wrapper",Object.assign({},a,n,{components:t,mdxType:"MDXLayout"}),(0,r.kt)("h1",null,"Performance"))}s.isMDXComponent=!0},2768:function(e,t,n){"use strict";n.r(t),n.d(t,{default:function(){return s}});n(7294);var r=n(4137);function o(e,t){if(null==e)return{};var n,r,o=function(e,t){if(null==e)return{};var n,r,o={},a=Object.keys(e);for(r=0;r=0||(o[n]=e[n]);return o}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}var a={};function s(e){var t=e.components,n=o(e,["components"]);return(0,r.kt)("wrapper",Object.assign({},a,n,{components:t,mdxType:"MDXLayout"}),(0,r.kt)("h1",null,"Progressive web apps"))}s.isMDXComponent=!0},9086:function(e,t,n){"use strict";n.r(t),n.d(t,{default:function(){return c}});n(7294);var r=n(4137);function o(e,t){if(null==e)return{};var n,r,o=function(e,t){if(null==e)return{};var n,r,o={},a=Object.keys(e);for(r=0;r=0||(o[n]=e[n]);return o}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}var a=function(e){return function(t){return console.warn("Component "+e+" was not imported, exported, or provided by MDXProvider as global scope"),(0,r.kt)("div",Object.assign({},t))}},s=a("ResourceGroupTitle"),i=a("BadgeLink"),l={};function c(e){var t=e.components,n=o(e,["components"]);return(0,r.kt)("wrapper",Object.assign({},l,n,{components:t,mdxType:"MDXLayout"}),(0,r.kt)("h1",null,"Next.js"),(0,r.kt)("p",null,"Next.js is an open-source development framework built on top of Node.js\nenabling React based web applications functionalities such as server-side\nrendering and generating static websites."),(0,r.kt)(s,{mdxType:"ResourceGroupTitle"},"Free Resources"),(0,r.kt)(i,{colorScheme:"blue",badgeText:"Website",href:"https://nextjs.org/",mdxType:"BadgeLink"},"Official Website"),(0,r.kt)(i,{colorScheme:"blue",badgeText:"Docs",href:"https://nextjs.org/docs/getting-started",mdxType:"BadgeLink"},"Official Docs for Getting Started"),(0,r.kt)(i,{colorScheme:"purple",badgeText:"Watch",href:"https://masteringnextjs.com/",mdxType:"BadgeLink"},"Mastering Next.js"),(0,r.kt)(i,{colorScheme:"purple",badgeText:"Watch",href:"https://youtu.be/1WmNXEVia8I",mdxType:"BadgeLink"},"Next.js for Beginners - freeCodeCamp"),(0,r.kt)(i,{colorScheme:"yellow",badgeText:"Handbook",href:"https://www.freecodecamp.org/news/the-next-js-handbook/",mdxType:"BadgeLink"},"The Next.js Handbook \u2014 freeCodeCamp"))}c.isMDXComponent=!0},4930:function(e,t,n){"use strict";n.r(t),n.d(t,{default:function(){return s}});n(7294);var r=n(4137);function o(e,t){if(null==e)return{};var n,r,o=function(e,t){if(null==e)return{};var n,r,o={},a=Object.keys(e);for(r=0;r=0||(o[n]=e[n]);return o}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}var a={};function s(e){var t=e.components,n=o(e,["components"]);return(0,r.kt)("wrapper",Object.assign({},a,n,{components:t,mdxType:"MDXLayout"}),(0,r.kt)("h1",null,"After js"))}s.isMDXComponent=!0},8747:function(e,t,n){"use strict";n.r(t),n.d(t,{default:function(){return s}});n(7294);var r=n(4137);function o(e,t){if(null==e)return{};var n,r,o=function(e,t){if(null==e)return{};var n,r,o={},a=Object.keys(e);for(r=0;r=0||(o[n]=e[n]);return o}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}var a={};function s(e){var t=e.components,n=o(e,["components"]);return(0,r.kt)("wrapper",Object.assign({},a,n,{components:t,mdxType:"MDXLayout"}),(0,r.kt)("h1",null,"React js"))}s.isMDXComponent=!0},7815:function(e,t,n){"use strict";n.r(t),n.d(t,{default:function(){return s}});n(7294);var r=n(4137);function o(e,t){if(null==e)return{};var n,r,o=function(e,t){if(null==e)return{};var n,r,o={},a=Object.keys(e);for(r=0;r=0||(o[n]=e[n]);return o}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}var a={};function s(e){var t=e.components,n=o(e,["components"]);return(0,r.kt)("wrapper",Object.assign({},a,n,{components:t,mdxType:"MDXLayout"}),(0,r.kt)("h1",null,"Universal"))}s.isMDXComponent=!0},6394:function(e,t,n){"use strict";n.r(t),n.d(t,{default:function(){return s}});n(7294);var r=n(4137);function o(e,t){if(null==e)return{};var n,r,o=function(e,t){if(null==e)return{};var n,r,o={},a=Object.keys(e);for(r=0;r=0||(o[n]=e[n]);return o}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}var a={};function s(e){var t=e.components,n=o(e,["components"]);return(0,r.kt)("wrapper",Object.assign({},a,n,{components:t,mdxType:"MDXLayout"}),(0,r.kt)("h1",null,"Angular"))}s.isMDXComponent=!0},2573:function(e,t,n){"use strict";n.r(t),n.d(t,{default:function(){return s}});n(7294);var r=n(4137);function o(e,t){if(null==e)return{};var n,r,o=function(e,t){if(null==e)return{};var n,r,o={},a=Object.keys(e);for(r=0;r=0||(o[n]=e[n]);return o}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}var a={};function s(e){var t=e.components,n=o(e,["components"]);return(0,r.kt)("wrapper",Object.assign({},a,n,{components:t,mdxType:"MDXLayout"}),(0,r.kt)("h1",null,"Nuxt js"))}s.isMDXComponent=!0},5137:function(e,t,n){"use strict";n.r(t),n.d(t,{default:function(){return s}});n(7294);var r=n(4137);function o(e,t){if(null==e)return{};var n,r,o=function(e,t){if(null==e)return{};var n,r,o={},a=Object.keys(e);for(r=0;r=0||(o[n]=e[n]);return o}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}var a={};function s(e){var t=e.components,n=o(e,["components"]);return(0,r.kt)("wrapper",Object.assign({},a,n,{components:t,mdxType:"MDXLayout"}),(0,r.kt)("h1",null,"Vue js"))}s.isMDXComponent=!0},1905:function(e,t,n){"use strict";n.r(t),n.d(t,{default:function(){return s}});n(7294);var r=n(4137);function o(e,t){if(null==e)return{};var n,r,o=function(e,t){if(null==e)return{};var n,r,o={},a=Object.keys(e);for(r=0;r=0||(o[n]=e[n]);return o}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}var a={};function s(e){var t=e.components,n=o(e,["components"]);return(0,r.kt)("wrapper",Object.assign({},a,n,{components:t,mdxType:"MDXLayout"}),(0,r.kt)("h1",null,"Server side rendering"))}s.isMDXComponent=!0},410:function(e,t,n){"use strict";n.r(t),n.d(t,{default:function(){return s}});n(7294);var r=n(4137);function o(e,t){if(null==e)return{};var n,r,o=function(e,t){if(null==e)return{};var n,r,o={},a=Object.keys(e);for(r=0;r=0||(o[n]=e[n]);return o}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}var a={};function s(e){var t=e.components,n=o(e,["components"]);return(0,r.kt)("wrapper",Object.assign({},a,n,{components:t,mdxType:"MDXLayout"}),(0,r.kt)("h1",null,"Apollo"))}s.isMDXComponent=!0},485:function(e,t,n){"use strict";n.r(t),n.d(t,{default:function(){return s}});n(7294);var r=n(4137);function o(e,t){if(null==e)return{};var n,r,o=function(e,t){if(null==e)return{};var n,r,o={},a=Object.keys(e);for(r=0;r=0||(o[n]=e[n]);return o}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}var a={};function s(e){var t=e.components,n=o(e,["components"]);return(0,r.kt)("wrapper",Object.assign({},a,n,{components:t,mdxType:"MDXLayout"}),(0,r.kt)("h1",null,"Relay modern"))}s.isMDXComponent=!0},4133:function(e,t,n){"use strict";n.r(t),n.d(t,{default:function(){return c}});n(7294);var r=n(4137);function o(e,t){if(null==e)return{};var n,r,o=function(e,t){if(null==e)return{};var n,r,o={},a=Object.keys(e);for(r=0;r=0||(o[n]=e[n]);return o}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}var a=function(e){return function(t){return console.warn("Component "+e+" was not imported, exported, or provided by MDXProvider as global scope"),(0,r.kt)("div",Object.assign({},t))}},s=a("ResourceGroupTitle"),i=a("BadgeLink"),l={};function c(e){var t=e.components,n=o(e,["components"]);return(0,r.kt)("wrapper",Object.assign({},l,n,{components:t,mdxType:"MDXLayout"}),(0,r.kt)("h1",null,"Graphql"),(0,r.kt)("p",null,"GraphQL is a query language for APIs and a runtime for fulfilling those queries with your existing data. GraphQL provides a complete and understandable description of the data in your API, gives clients the power to ask for exactly what they need and nothing more, makes it easier to evolve APIs over time, and enables powerful developer tools."),(0,r.kt)(s,{mdxType:"ResourceGroupTitle"},"Free Content"),(0,r.kt)(i,{colorScheme:"yellow",badgeText:"Read",href:"https://graphql.org/learn/",mdxType:"BadgeLink"},"Introduction to GraphQL"),(0,r.kt)(i,{colorScheme:"yellow",badgeText:"Read",href:"https://www.howtographql.com/",mdxType:"BadgeLink"},"The Fullstack Tutorial for GraphQL"),(0,r.kt)(i,{colorScheme:"green",badgeText:"Course",href:"https://odyssey.apollographql.com/",mdxType:"BadgeLink"},"GraphQL Tutorials"))}c.isMDXComponent=!0},7935:function(e,t,n){"use strict";n.r(t),n.d(t,{default:function(){return c}});n(7294);var r=n(4137);function o(e,t){if(null==e)return{};var n,r,o=function(e,t){if(null==e)return{};var n,r,o={},a=Object.keys(e);for(r=0;r=0||(o[n]=e[n]);return o}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}var a=function(e){return function(t){return console.warn("Component "+e+" was not imported, exported, or provided by MDXProvider as global scope"),(0,r.kt)("div",Object.assign({},t))}},s=a("ResourceGroupTitle"),i=a("BadgeLink"),l={};function c(e){var t=e.components,n=o(e,["components"]);return(0,r.kt)("wrapper",Object.assign({},l,n,{components:t,mdxType:"MDXLayout"}),(0,r.kt)("h1",null,"Next.js"),(0,r.kt)("p",null,"Next.js is an open-source development framework built on top of Node.js\nenabling React based web applications functionalities such as server-side\nrendering and generating static websites."),(0,r.kt)(s,{mdxType:"ResourceGroupTitle"},"Free Resources"),(0,r.kt)(i,{colorScheme:"blue",badgeText:"Website",href:"https://nextjs.org/",mdxType:"BadgeLink"},"Official Website"),(0,r.kt)(i,{colorScheme:"blue",badgeText:"Docs",href:"https://nextjs.org/docs/getting-started",mdxType:"BadgeLink"},"Official Docs for Getting Started"),(0,r.kt)(i,{colorScheme:"purple",badgeText:"Watch",href:"https://masteringnextjs.com/",mdxType:"BadgeLink"},"Mastering Next.js"),(0,r.kt)(i,{colorScheme:"purple",badgeText:"Watch",href:"https://youtu.be/1WmNXEVia8I",mdxType:"BadgeLink"},"Next.js for Beginners - Full Course at freeCodeCamp YouTube Channel"),(0,r.kt)(i,{colorScheme:"yellow",badgeText:"Handbook",href:"https://www.freecodecamp.org/news/the-next-js-handbook/",mdxType:"BadgeLink"},"The Next.js Handbook \u2014 FreeCodeCamp"))}c.isMDXComponent=!0},1291:function(e,t,n){"use strict";n.r(t),n.d(t,{default:function(){return s}});n(7294);var r=n(4137);function o(e,t){if(null==e)return{};var n,r,o=function(e,t){if(null==e)return{};var n,r,o={},a=Object.keys(e);for(r=0;r=0||(o[n]=e[n]);return o}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}var a={};function s(e){var t=e.components,n=o(e,["components"]);return(0,r.kt)("wrapper",Object.assign({},a,n,{components:t,mdxType:"MDXLayout"}),(0,r.kt)("h1",null,"Gatsbyjs"))}s.isMDXComponent=!0},855:function(e,t,n){"use strict";n.r(t),n.d(t,{default:function(){return s}});n(7294);var r=n(4137);function o(e,t){if(null==e)return{};var n,r,o=function(e,t){if(null==e)return{};var n,r,o={},a=Object.keys(e);for(r=0;r=0||(o[n]=e[n]);return o}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}var a={};function s(e){var t=e.components,n=o(e,["components"]);return(0,r.kt)("wrapper",Object.assign({},a,n,{components:t,mdxType:"MDXLayout"}),(0,r.kt)("h1",null,"Nuxt js"))}s.isMDXComponent=!0},2374:function(e,t,n){"use strict";n.r(t),n.d(t,{default:function(){return s}});n(7294);var r=n(4137);function o(e,t){if(null==e)return{};var n,r,o=function(e,t){if(null==e)return{};var n,r,o={},a=Object.keys(e);for(r=0;r=0||(o[n]=e[n]);return o}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}var a={};function s(e){var t=e.components,n=o(e,["components"]);return(0,r.kt)("wrapper",Object.assign({},a,n,{components:t,mdxType:"MDXLayout"}),(0,r.kt)("h1",null,"Vuepress"))}s.isMDXComponent=!0},1898:function(e,t,n){"use strict";n.r(t),n.d(t,{default:function(){return s}});n(7294);var r=n(4137);function o(e,t){if(null==e)return{};var n,r,o=function(e,t){if(null==e)return{};var n,r,o={},a=Object.keys(e);for(r=0;r=0||(o[n]=e[n]);return o}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}var a={};function s(e){var t=e.components,n=o(e,["components"]);return(0,r.kt)("wrapper",Object.assign({},a,n,{components:t,mdxType:"MDXLayout"}),(0,r.kt)("h1",null,"Jekyll"))}s.isMDXComponent=!0},355:function(e,t,n){"use strict";n.r(t),n.d(t,{default:function(){return s}});n(7294);var r=n(4137);function o(e,t){if(null==e)return{};var n,r,o=function(e,t){if(null==e)return{};var n,r,o={},a=Object.keys(e);for(r=0;r=0||(o[n]=e[n]);return o}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}var a={};function s(e){var t=e.components,n=o(e,["components"]);return(0,r.kt)("wrapper",Object.assign({},a,n,{components:t,mdxType:"MDXLayout"}),(0,r.kt)("h1",null,"Hugo"))}s.isMDXComponent=!0},2578:function(e,t,n){"use strict";n.r(t),n.d(t,{default:function(){return s}});n(7294);var r=n(4137);function o(e,t){if(null==e)return{};var n,r,o=function(e,t){if(null==e)return{};var n,r,o={},a=Object.keys(e);for(r=0;r=0||(o[n]=e[n]);return o}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}var a={};function s(e){var t=e.components,n=o(e,["components"]);return(0,r.kt)("wrapper",Object.assign({},a,n,{components:t,mdxType:"MDXLayout"}),(0,r.kt)("h1",null,"Gridsome"))}s.isMDXComponent=!0},476:function(e,t,n){"use strict";n.r(t),n.d(t,{default:function(){return s}});n(7294);var r=n(4137);function o(e,t){if(null==e)return{};var n,r,o=function(e,t){if(null==e)return{};var n,r,o={},a=Object.keys(e);for(r=0;r=0||(o[n]=e[n]);return o}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}var a={};function s(e){var t=e.components,n=o(e,["components"]);return(0,r.kt)("wrapper",Object.assign({},a,n,{components:t,mdxType:"MDXLayout"}),(0,r.kt)("h1",null,"Eleventy"))}s.isMDXComponent=!0},5470:function(e,t,n){"use strict";n.r(t),n.d(t,{default:function(){return s}});n(7294);var r=n(4137);function o(e,t){if(null==e)return{};var n,r,o=function(e,t){if(null==e)return{};var n,r,o={},a=Object.keys(e);for(r=0;r=0||(o[n]=e[n]);return o}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}var a={};function s(e){var t=e.components,n=o(e,["components"]);return(0,r.kt)("wrapper",Object.assign({},a,n,{components:t,mdxType:"MDXLayout"}),(0,r.kt)("h1",null,"Static site generators"))}s.isMDXComponent=!0},2919:function(e,t,n){"use strict";n.r(t),n.d(t,{default:function(){return s}});n(7294);var r=n(4137);function o(e,t){if(null==e)return{};var n,r,o=function(e,t){if(null==e)return{};var n,r,o={},a=Object.keys(e);for(r=0;r=0||(o[n]=e[n]);return o}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}var a={};function s(e){var t=e.components,n=o(e,["components"]);return(0,r.kt)("wrapper",Object.assign({},a,n,{components:t,mdxType:"MDXLayout"}),(0,r.kt)("h1",null,"React native"))}s.isMDXComponent=!0},5760:function(e,t,n){"use strict";n.r(t),n.d(t,{default:function(){return s}});n(7294);var r=n(4137);function o(e,t){if(null==e)return{};var n,r,o=function(e,t){if(null==e)return{};var n,r,o={},a=Object.keys(e);for(r=0;r=0||(o[n]=e[n]);return o}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}var a={};function s(e){var t=e.components,n=o(e,["components"]);return(0,r.kt)("wrapper",Object.assign({},a,n,{components:t,mdxType:"MDXLayout"}),(0,r.kt)("h1",null,"Nativescript"))}s.isMDXComponent=!0},9268:function(e,t,n){"use strict";n.r(t),n.d(t,{default:function(){return c}});n(7294);var r=n(4137);function o(e,t){if(null==e)return{};var n,r,o=function(e,t){if(null==e)return{};var n,r,o={},a=Object.keys(e);for(r=0;r=0||(o[n]=e[n]);return o}(e,t);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);for(r=0;r