diff --git a/.astro/settings.json b/.astro/settings.json index fae85e9e4..3439f3da6 100644 --- a/.astro/settings.json +++ b/.astro/settings.json @@ -3,6 +3,6 @@ "enabled": false }, "_variables": { - "lastUpdateCheck": 1755042938009 + "lastUpdateCheck": 1756224238932 } } \ No newline at end of file diff --git a/src/data/roadmaps/ai-red-teaming/ai-red-teaming.md b/src/data/roadmaps/ai-red-teaming/ai-red-teaming.md index ead759052..f68234ddc 100644 --- a/src/data/roadmaps/ai-red-teaming/ai-red-teaming.md +++ b/src/data/roadmaps/ai-red-teaming/ai-red-teaming.md @@ -6,7 +6,7 @@ briefTitle: 'AI Red Teaming' briefDescription: 'Learn to become a red teaming expert in AI' title: 'AI Red Teaming' description: 'Learn to become a red teaming expert in AI' -isNew: true +isNew: false isHidden: false hasTopics: true renderer: editor diff --git a/src/data/roadmaps/nextjs/content/adapters@fXXlJ6oN_YPWVr-fqEar3.md b/src/data/roadmaps/nextjs/content/adapters@fXXlJ6oN_YPWVr-fqEar3.md new file mode 100644 index 000000000..b02a4bf9d --- /dev/null +++ b/src/data/roadmaps/nextjs/content/adapters@fXXlJ6oN_YPWVr-fqEar3.md @@ -0,0 +1 @@ +# Adapters \ No newline at end of file diff --git a/src/data/roadmaps/nextjs/content/analytics@a34ZmSk5VYVLq8wsEvOcI.md b/src/data/roadmaps/nextjs/content/analytics@a34ZmSk5VYVLq8wsEvOcI.md new file mode 100644 index 000000000..eb021f46e --- /dev/null +++ b/src/data/roadmaps/nextjs/content/analytics@a34ZmSk5VYVLq8wsEvOcI.md @@ -0,0 +1 @@ +# Analytics \ No newline at end of file diff --git a/src/data/roadmaps/nextjs/content/api-endpoints@4H8aOVYsZiPbTQUYcZjb_.md b/src/data/roadmaps/nextjs/content/api-endpoints@4H8aOVYsZiPbTQUYcZjb_.md new file mode 100644 index 000000000..5a39d7e9d --- /dev/null +++ b/src/data/roadmaps/nextjs/content/api-endpoints@4H8aOVYsZiPbTQUYcZjb_.md @@ -0,0 +1 @@ +# API Endpoints \ No newline at end of file diff --git a/src/data/roadmaps/nextjs/content/app@3VXKRDxDmqJObkoW8ndrz.md b/src/data/roadmaps/nextjs/content/app@3VXKRDxDmqJObkoW8ndrz.md new file mode 100644 index 000000000..66cda5560 --- /dev/null +++ b/src/data/roadmaps/nextjs/content/app@3VXKRDxDmqJObkoW8ndrz.md @@ -0,0 +1 @@ +# App \ No newline at end of file diff --git a/src/data/roadmaps/nextjs/content/caching-data@77i6HVsnX-uSDw8vz3afD.md b/src/data/roadmaps/nextjs/content/caching-data@77i6HVsnX-uSDw8vz3afD.md new file mode 100644 index 000000000..8e494eae0 --- /dev/null +++ b/src/data/roadmaps/nextjs/content/caching-data@77i6HVsnX-uSDw8vz3afD.md @@ -0,0 +1 @@ +# Caching Data \ No newline at end of file diff --git a/src/data/roadmaps/nextjs/content/caching@0Rgs7jaFX1Gl5KDT6DKbX.md b/src/data/roadmaps/nextjs/content/caching@0Rgs7jaFX1Gl5KDT6DKbX.md new file mode 100644 index 000000000..07f88797a --- /dev/null +++ b/src/data/roadmaps/nextjs/content/caching@0Rgs7jaFX1Gl5KDT6DKbX.md @@ -0,0 +1 @@ +# Caching \ No newline at end of file diff --git a/src/data/roadmaps/nextjs/content/client-rendered@HdSmD_nDV5BPO5JJqs1k8.md b/src/data/roadmaps/nextjs/content/client-rendered@HdSmD_nDV5BPO5JJqs1k8.md new file mode 100644 index 000000000..bdc79bb7f --- /dev/null +++ b/src/data/roadmaps/nextjs/content/client-rendered@HdSmD_nDV5BPO5JJqs1k8.md @@ -0,0 +1 @@ +# Client Rendered \ No newline at end of file diff --git a/src/data/roadmaps/nextjs/content/client@jYSa7UMmjb51pGAyU4PoB.md b/src/data/roadmaps/nextjs/content/client@jYSa7UMmjb51pGAyU4PoB.md new file mode 100644 index 000000000..22eccffe1 --- /dev/null +++ b/src/data/roadmaps/nextjs/content/client@jYSa7UMmjb51pGAyU4PoB.md @@ -0,0 +1 @@ +# Client \ No newline at end of file diff --git a/src/data/roadmaps/nextjs/content/composition@6O9c3J-1JQtZTXXIDDXSM.md b/src/data/roadmaps/nextjs/content/composition@6O9c3J-1JQtZTXXIDDXSM.md new file mode 100644 index 000000000..471d9ad03 --- /dev/null +++ b/src/data/roadmaps/nextjs/content/composition@6O9c3J-1JQtZTXXIDDXSM.md @@ -0,0 +1 @@ +# Composition \ No newline at end of file diff --git a/src/data/roadmaps/nextjs/content/create-next-app@3tTTKj6PWsRoRRXH5tXxS.md b/src/data/roadmaps/nextjs/content/create-next-app@3tTTKj6PWsRoRRXH5tXxS.md new file mode 100644 index 000000000..c287c11aa --- /dev/null +++ b/src/data/roadmaps/nextjs/content/create-next-app@3tTTKj6PWsRoRRXH5tXxS.md @@ -0,0 +1 @@ +# create-next-app \ No newline at end of file diff --git a/src/data/roadmaps/nextjs/content/csr@4CcK-BLP5NM3ZrCIEG4s8.md b/src/data/roadmaps/nextjs/content/csr@4CcK-BLP5NM3ZrCIEG4s8.md new file mode 100644 index 000000000..72a22c0ce --- /dev/null +++ b/src/data/roadmaps/nextjs/content/csr@4CcK-BLP5NM3ZrCIEG4s8.md @@ -0,0 +1 @@ +# CSR \ No newline at end of file diff --git a/src/data/roadmaps/nextjs/content/css-in-js@j5jIZvz_bMZqmr_gl0pQF.md b/src/data/roadmaps/nextjs/content/css-in-js@j5jIZvz_bMZqmr_gl0pQF.md new file mode 100644 index 000000000..27a2f6400 --- /dev/null +++ b/src/data/roadmaps/nextjs/content/css-in-js@j5jIZvz_bMZqmr_gl0pQF.md @@ -0,0 +1 @@ +# CSS in JS \ No newline at end of file diff --git a/src/data/roadmaps/nextjs/content/css-modules@tlg5XMVcAHmhey-efjf3M.md b/src/data/roadmaps/nextjs/content/css-modules@tlg5XMVcAHmhey-efjf3M.md new file mode 100644 index 000000000..515238253 --- /dev/null +++ b/src/data/roadmaps/nextjs/content/css-modules@tlg5XMVcAHmhey-efjf3M.md @@ -0,0 +1 @@ +# CSS Modules \ No newline at end of file diff --git a/src/data/roadmaps/nextjs/content/custom-server@Hj01UZuHkQppXTq6XV9Pn.md b/src/data/roadmaps/nextjs/content/custom-server@Hj01UZuHkQppXTq6XV9Pn.md new file mode 100644 index 000000000..75b76f9e0 --- /dev/null +++ b/src/data/roadmaps/nextjs/content/custom-server@Hj01UZuHkQppXTq6XV9Pn.md @@ -0,0 +1 @@ +# Custom Server \ No newline at end of file diff --git a/src/data/roadmaps/nextjs/content/cypress@KmOTgclnf-QYDYK0QwwVe.md b/src/data/roadmaps/nextjs/content/cypress@KmOTgclnf-QYDYK0QwwVe.md new file mode 100644 index 000000000..c881065db --- /dev/null +++ b/src/data/roadmaps/nextjs/content/cypress@KmOTgclnf-QYDYK0QwwVe.md @@ -0,0 +1 @@ +# Cypress \ No newline at end of file diff --git a/src/data/roadmaps/nextjs/content/data-fetching-patterns@GAHFfQ8CviNxV7ITpt--q.md b/src/data/roadmaps/nextjs/content/data-fetching-patterns@GAHFfQ8CviNxV7ITpt--q.md new file mode 100644 index 000000000..b828a9b46 --- /dev/null +++ b/src/data/roadmaps/nextjs/content/data-fetching-patterns@GAHFfQ8CviNxV7ITpt--q.md @@ -0,0 +1 @@ +# Data Fetching Patterns \ No newline at end of file diff --git a/src/data/roadmaps/nextjs/content/deployment-options@BPStVqWV0660A-_fJSuM7.md b/src/data/roadmaps/nextjs/content/deployment-options@BPStVqWV0660A-_fJSuM7.md new file mode 100644 index 000000000..fb25a997d --- /dev/null +++ b/src/data/roadmaps/nextjs/content/deployment-options@BPStVqWV0660A-_fJSuM7.md @@ -0,0 +1 @@ +# Deployment Options \ No newline at end of file diff --git a/src/data/roadmaps/nextjs/content/docker-container@y5_zX209AaHOf_wQibo12.md b/src/data/roadmaps/nextjs/content/docker-container@y5_zX209AaHOf_wQibo12.md new file mode 100644 index 000000000..f10504d5d --- /dev/null +++ b/src/data/roadmaps/nextjs/content/docker-container@y5_zX209AaHOf_wQibo12.md @@ -0,0 +1 @@ +# Docker Container \ No newline at end of file diff --git a/src/data/roadmaps/nextjs/content/edge@SYUKB1Afciqz7hA1n5yIx.md b/src/data/roadmaps/nextjs/content/edge@SYUKB1Afciqz7hA1n5yIx.md new file mode 100644 index 000000000..5dffcfc5e --- /dev/null +++ b/src/data/roadmaps/nextjs/content/edge@SYUKB1Afciqz7hA1n5yIx.md @@ -0,0 +1 @@ +# Edge \ No newline at end of file diff --git a/src/data/roadmaps/nextjs/content/environment-variables@iv6rWEqjh07d0n2kAQedO.md b/src/data/roadmaps/nextjs/content/environment-variables@iv6rWEqjh07d0n2kAQedO.md new file mode 100644 index 000000000..be8e682f7 --- /dev/null +++ b/src/data/roadmaps/nextjs/content/environment-variables@iv6rWEqjh07d0n2kAQedO.md @@ -0,0 +1 @@ +# Environment Variables \ No newline at end of file diff --git a/src/data/roadmaps/nextjs/content/error-states@pxltXOWgpbo95V4u2ryX7.md b/src/data/roadmaps/nextjs/content/error-states@pxltXOWgpbo95V4u2ryX7.md new file mode 100644 index 000000000..7e02a900b --- /dev/null +++ b/src/data/roadmaps/nextjs/content/error-states@pxltXOWgpbo95V4u2ryX7.md @@ -0,0 +1 @@ +# Error States \ No newline at end of file diff --git a/src/data/roadmaps/nextjs/content/eslint@CvrHzkxg7ndCvd_tbYnK4.md b/src/data/roadmaps/nextjs/content/eslint@CvrHzkxg7ndCvd_tbYnK4.md new file mode 100644 index 000000000..6f7ae19b0 --- /dev/null +++ b/src/data/roadmaps/nextjs/content/eslint@CvrHzkxg7ndCvd_tbYnK4.md @@ -0,0 +1 @@ +# ESLint \ No newline at end of file diff --git a/src/data/roadmaps/nextjs/content/fetching-locations@lkdBRzC8lAvRYKBt7E37V.md b/src/data/roadmaps/nextjs/content/fetching-locations@lkdBRzC8lAvRYKBt7E37V.md new file mode 100644 index 000000000..2869430f2 --- /dev/null +++ b/src/data/roadmaps/nextjs/content/fetching-locations@lkdBRzC8lAvRYKBt7E37V.md @@ -0,0 +1 @@ +# Fetching Locations \ No newline at end of file diff --git a/src/data/roadmaps/nextjs/content/fonts@ZptECTASMX97m5yCZ-XO8.md b/src/data/roadmaps/nextjs/content/fonts@ZptECTASMX97m5yCZ-XO8.md new file mode 100644 index 000000000..49d56b6db --- /dev/null +++ b/src/data/roadmaps/nextjs/content/fonts@ZptECTASMX97m5yCZ-XO8.md @@ -0,0 +1 @@ +# Fonts \ No newline at end of file diff --git a/src/data/roadmaps/nextjs/content/global-css@BfNON3Vp3zSWBurSS4ZHo.md b/src/data/roadmaps/nextjs/content/global-css@BfNON3Vp3zSWBurSS4ZHo.md new file mode 100644 index 000000000..c333ad672 --- /dev/null +++ b/src/data/roadmaps/nextjs/content/global-css@BfNON3Vp3zSWBurSS4ZHo.md @@ -0,0 +1 @@ +# Global CSS \ No newline at end of file diff --git a/src/data/roadmaps/nextjs/content/handling-sensitive-data@Ti_Bl5NnRIY9UTNTH15xA.md b/src/data/roadmaps/nextjs/content/handling-sensitive-data@Ti_Bl5NnRIY9UTNTH15xA.md new file mode 100644 index 000000000..d24b112f4 --- /dev/null +++ b/src/data/roadmaps/nextjs/content/handling-sensitive-data@Ti_Bl5NnRIY9UTNTH15xA.md @@ -0,0 +1 @@ +# Handling Sensitive Data \ No newline at end of file diff --git a/src/data/roadmaps/nextjs/content/images@1t9iOcmrEmuwOxOZ0vlY7.md b/src/data/roadmaps/nextjs/content/images@1t9iOcmrEmuwOxOZ0vlY7.md new file mode 100644 index 000000000..d14d00086 --- /dev/null +++ b/src/data/roadmaps/nextjs/content/images@1t9iOcmrEmuwOxOZ0vlY7.md @@ -0,0 +1 @@ +# Images \ No newline at end of file diff --git a/src/data/roadmaps/nextjs/content/instrumentation@DHqdXJFhVZWaNa5zSX8Wk.md b/src/data/roadmaps/nextjs/content/instrumentation@DHqdXJFhVZWaNa5zSX8Wk.md new file mode 100644 index 000000000..f7bf6e87e --- /dev/null +++ b/src/data/roadmaps/nextjs/content/instrumentation@DHqdXJFhVZWaNa5zSX8Wk.md @@ -0,0 +1 @@ +# Instrumentation \ No newline at end of file diff --git a/src/data/roadmaps/nextjs/content/intercepting-routes@dP6cZkEZ6lxPsy5SjvuZA.md b/src/data/roadmaps/nextjs/content/intercepting-routes@dP6cZkEZ6lxPsy5SjvuZA.md new file mode 100644 index 000000000..d0f456fae --- /dev/null +++ b/src/data/roadmaps/nextjs/content/intercepting-routes@dP6cZkEZ6lxPsy5SjvuZA.md @@ -0,0 +1 @@ +# Intercepting Routes \ No newline at end of file diff --git a/src/data/roadmaps/nextjs/content/internationalization@bSsM7VLZcJKYL5XXSG0r-.md b/src/data/roadmaps/nextjs/content/internationalization@bSsM7VLZcJKYL5XXSG0r-.md new file mode 100644 index 000000000..49a10ae67 --- /dev/null +++ b/src/data/roadmaps/nextjs/content/internationalization@bSsM7VLZcJKYL5XXSG0r-.md @@ -0,0 +1 @@ +# Internationalization \ No newline at end of file diff --git a/src/data/roadmaps/nextjs/content/introduction@tcDL4OEbZplbjNa8VTLpv.md b/src/data/roadmaps/nextjs/content/introduction@tcDL4OEbZplbjNa8VTLpv.md new file mode 100644 index 000000000..f6ecaa676 --- /dev/null +++ b/src/data/roadmaps/nextjs/content/introduction@tcDL4OEbZplbjNa8VTLpv.md @@ -0,0 +1 @@ +# Introduction \ No newline at end of file diff --git a/src/data/roadmaps/nextjs/content/javascript-basics@DlUQkDRPUcjC3pO4P5zCQ.md b/src/data/roadmaps/nextjs/content/javascript-basics@DlUQkDRPUcjC3pO4P5zCQ.md new file mode 100644 index 000000000..4c4f87174 --- /dev/null +++ b/src/data/roadmaps/nextjs/content/javascript-basics@DlUQkDRPUcjC3pO4P5zCQ.md @@ -0,0 +1 @@ +# JavaScript Basics \ No newline at end of file diff --git a/src/data/roadmaps/nextjs/content/jest@sc5Pliyq6bfeFXp0ca5yH.md b/src/data/roadmaps/nextjs/content/jest@sc5Pliyq6bfeFXp0ca5yH.md new file mode 100644 index 000000000..535d60df1 --- /dev/null +++ b/src/data/roadmaps/nextjs/content/jest@sc5Pliyq6bfeFXp0ca5yH.md @@ -0,0 +1 @@ +# Jest \ No newline at end of file diff --git a/src/data/roadmaps/nextjs/content/layouts-and-templates@zJXCS7U9NUsn7cuEx3YMs.md b/src/data/roadmaps/nextjs/content/layouts-and-templates@zJXCS7U9NUsn7cuEx3YMs.md new file mode 100644 index 000000000..2e4840f4f --- /dev/null +++ b/src/data/roadmaps/nextjs/content/layouts-and-templates@zJXCS7U9NUsn7cuEx3YMs.md @@ -0,0 +1 @@ +# Layouts and Templates \ No newline at end of file diff --git a/src/data/roadmaps/nextjs/content/lazy-loading@3_Mpvkxp9A7PMogxxMikQ.md b/src/data/roadmaps/nextjs/content/lazy-loading@3_Mpvkxp9A7PMogxxMikQ.md new file mode 100644 index 000000000..4d8b666a8 --- /dev/null +++ b/src/data/roadmaps/nextjs/content/lazy-loading@3_Mpvkxp9A7PMogxxMikQ.md @@ -0,0 +1 @@ +# Lazy Loading \ No newline at end of file diff --git a/src/data/roadmaps/nextjs/content/loading-and-streaming@b2LcPc5MfoyF0W9Y0aGpR.md b/src/data/roadmaps/nextjs/content/loading-and-streaming@b2LcPc5MfoyF0W9Y0aGpR.md new file mode 100644 index 000000000..2fc3b66aa --- /dev/null +++ b/src/data/roadmaps/nextjs/content/loading-and-streaming@b2LcPc5MfoyF0W9Y0aGpR.md @@ -0,0 +1 @@ +# Loading and Streaming \ No newline at end of file diff --git a/src/data/roadmaps/nextjs/content/markdown-and-mdx@3GI0xHGG_qgpLfEjaLYxr.md b/src/data/roadmaps/nextjs/content/markdown-and-mdx@3GI0xHGG_qgpLfEjaLYxr.md new file mode 100644 index 000000000..7cc3fcca4 --- /dev/null +++ b/src/data/roadmaps/nextjs/content/markdown-and-mdx@3GI0xHGG_qgpLfEjaLYxr.md @@ -0,0 +1 @@ +# Markdown and MDX \ No newline at end of file diff --git a/src/data/roadmaps/nextjs/content/memoization-in-fetch@UZCMVpg5YIDxu-AMah3S-.md b/src/data/roadmaps/nextjs/content/memoization-in-fetch@UZCMVpg5YIDxu-AMah3S-.md new file mode 100644 index 000000000..3306afc75 --- /dev/null +++ b/src/data/roadmaps/nextjs/content/memoization-in-fetch@UZCMVpg5YIDxu-AMah3S-.md @@ -0,0 +1 @@ +# Memoization in Fetch \ No newline at end of file diff --git a/src/data/roadmaps/nextjs/content/memory-usage@SI7KzNSLP0ccH_P94StGL.md b/src/data/roadmaps/nextjs/content/memory-usage@SI7KzNSLP0ccH_P94StGL.md new file mode 100644 index 000000000..9151f4ad0 --- /dev/null +++ b/src/data/roadmaps/nextjs/content/memory-usage@SI7KzNSLP0ccH_P94StGL.md @@ -0,0 +1 @@ +# Memory Usage \ No newline at end of file diff --git a/src/data/roadmaps/nextjs/content/metadata@45XMR5imHEDF_X8wcgjGW.md b/src/data/roadmaps/nextjs/content/metadata@45XMR5imHEDF_X8wcgjGW.md new file mode 100644 index 000000000..676ef9b01 --- /dev/null +++ b/src/data/roadmaps/nextjs/content/metadata@45XMR5imHEDF_X8wcgjGW.md @@ -0,0 +1 @@ +# Metadata \ No newline at end of file diff --git a/src/data/roadmaps/nextjs/content/middelware@gpZNwsh075wl5eH2gLKro.md b/src/data/roadmaps/nextjs/content/middelware@gpZNwsh075wl5eH2gLKro.md new file mode 100644 index 000000000..61593606b --- /dev/null +++ b/src/data/roadmaps/nextjs/content/middelware@gpZNwsh075wl5eH2gLKro.md @@ -0,0 +1 @@ +# Middelware \ No newline at end of file diff --git a/src/data/roadmaps/nextjs/content/nextjs-routing-basics@xRZqBd5-QO8zh7ksHlRjK.md b/src/data/roadmaps/nextjs/content/nextjs-routing-basics@xRZqBd5-QO8zh7ksHlRjK.md new file mode 100644 index 000000000..a611904aa --- /dev/null +++ b/src/data/roadmaps/nextjs/content/nextjs-routing-basics@xRZqBd5-QO8zh7ksHlRjK.md @@ -0,0 +1 @@ +# Next.js Routing Basics \ No newline at end of file diff --git a/src/data/roadmaps/nextjs/content/nextjs@uJrOHRLmEBZtHJzAAusUe.md b/src/data/roadmaps/nextjs/content/nextjs@uJrOHRLmEBZtHJzAAusUe.md new file mode 100644 index 000000000..44d857f80 --- /dev/null +++ b/src/data/roadmaps/nextjs/content/nextjs@uJrOHRLmEBZtHJzAAusUe.md @@ -0,0 +1 @@ +# Next.js \ No newline at end of file diff --git a/src/data/roadmaps/nextjs/content/nodejs-server@Okw_IjU2iRSvSQVdKeeCo.md b/src/data/roadmaps/nextjs/content/nodejs-server@Okw_IjU2iRSvSQVdKeeCo.md new file mode 100644 index 000000000..e4afac9a2 --- /dev/null +++ b/src/data/roadmaps/nextjs/content/nodejs-server@Okw_IjU2iRSvSQVdKeeCo.md @@ -0,0 +1 @@ +# Node.js Server \ No newline at end of file diff --git a/src/data/roadmaps/nextjs/content/nodejs@0S37ka1K-TdYLnjCBrKSH.md b/src/data/roadmaps/nextjs/content/nodejs@0S37ka1K-TdYLnjCBrKSH.md new file mode 100644 index 000000000..30b9806aa --- /dev/null +++ b/src/data/roadmaps/nextjs/content/nodejs@0S37ka1K-TdYLnjCBrKSH.md @@ -0,0 +1 @@ +# Node.js \ No newline at end of file diff --git a/src/data/roadmaps/nextjs/content/opentelemetry@mTh5PZNpzJNKPqpu5PVL6.md b/src/data/roadmaps/nextjs/content/opentelemetry@mTh5PZNpzJNKPqpu5PVL6.md new file mode 100644 index 000000000..69dfb9706 --- /dev/null +++ b/src/data/roadmaps/nextjs/content/opentelemetry@mTh5PZNpzJNKPqpu5PVL6.md @@ -0,0 +1 @@ +# OpenTelemetry \ No newline at end of file diff --git a/src/data/roadmaps/nextjs/content/package-bundling@qM_Za9NiCiCG5-kf5RCXF.md b/src/data/roadmaps/nextjs/content/package-bundling@qM_Za9NiCiCG5-kf5RCXF.md new file mode 100644 index 000000000..7c8ae621c --- /dev/null +++ b/src/data/roadmaps/nextjs/content/package-bundling@qM_Za9NiCiCG5-kf5RCXF.md @@ -0,0 +1 @@ +# Package Bundling \ No newline at end of file diff --git a/src/data/roadmaps/nextjs/content/pages@htuyzi5_N-fqnx_SsO_DS.md b/src/data/roadmaps/nextjs/content/pages@htuyzi5_N-fqnx_SsO_DS.md new file mode 100644 index 000000000..16db9d642 --- /dev/null +++ b/src/data/roadmaps/nextjs/content/pages@htuyzi5_N-fqnx_SsO_DS.md @@ -0,0 +1 @@ +# Pages \ No newline at end of file diff --git a/src/data/roadmaps/nextjs/content/parallel-routes@2N_hm9Zx_Lp-RFEMP9HFb.md b/src/data/roadmaps/nextjs/content/parallel-routes@2N_hm9Zx_Lp-RFEMP9HFb.md new file mode 100644 index 000000000..40eb215d3 --- /dev/null +++ b/src/data/roadmaps/nextjs/content/parallel-routes@2N_hm9Zx_Lp-RFEMP9HFb.md @@ -0,0 +1 @@ +# Parallel Routes \ No newline at end of file diff --git a/src/data/roadmaps/nextjs/content/parallel-vs-sequential@SjJQ7ceU6vBhlhrN8hcvy.md b/src/data/roadmaps/nextjs/content/parallel-vs-sequential@SjJQ7ceU6vBhlhrN8hcvy.md new file mode 100644 index 000000000..04b19bf00 --- /dev/null +++ b/src/data/roadmaps/nextjs/content/parallel-vs-sequential@SjJQ7ceU6vBhlhrN8hcvy.md @@ -0,0 +1 @@ +# Parallel vs Sequential \ No newline at end of file diff --git a/src/data/roadmaps/nextjs/content/playwright@qFDdfOBdOlGMjTEOiiuTe.md b/src/data/roadmaps/nextjs/content/playwright@qFDdfOBdOlGMjTEOiiuTe.md new file mode 100644 index 000000000..454f06c7c --- /dev/null +++ b/src/data/roadmaps/nextjs/content/playwright@qFDdfOBdOlGMjTEOiiuTe.md @@ -0,0 +1 @@ +# Playwright \ No newline at end of file diff --git a/src/data/roadmaps/nextjs/content/preloading-data@Ve1Pa7IhGHPZ_F-sCMcNb.md b/src/data/roadmaps/nextjs/content/preloading-data@Ve1Pa7IhGHPZ_F-sCMcNb.md new file mode 100644 index 000000000..2665411ef --- /dev/null +++ b/src/data/roadmaps/nextjs/content/preloading-data@Ve1Pa7IhGHPZ_F-sCMcNb.md @@ -0,0 +1 @@ +# Preloading Data \ No newline at end of file diff --git a/src/data/roadmaps/nextjs/content/preparing-for-production@-yiJSBIoczJHOW8YMdWFI.md b/src/data/roadmaps/nextjs/content/preparing-for-production@-yiJSBIoczJHOW8YMdWFI.md new file mode 100644 index 000000000..e705d03be --- /dev/null +++ b/src/data/roadmaps/nextjs/content/preparing-for-production@-yiJSBIoczJHOW8YMdWFI.md @@ -0,0 +1 @@ +# Preparing for Production \ No newline at end of file diff --git a/src/data/roadmaps/nextjs/content/prettier@efMytbUmw44M8dPL4ItsX.md b/src/data/roadmaps/nextjs/content/prettier@efMytbUmw44M8dPL4ItsX.md new file mode 100644 index 000000000..724c5b765 --- /dev/null +++ b/src/data/roadmaps/nextjs/content/prettier@efMytbUmw44M8dPL4ItsX.md @@ -0,0 +1 @@ +# Prettier \ No newline at end of file diff --git a/src/data/roadmaps/nextjs/content/react-cache@crBlqiS78n7yz28cT2GGz.md b/src/data/roadmaps/nextjs/content/react-cache@crBlqiS78n7yz28cT2GGz.md new file mode 100644 index 000000000..cef6edd35 --- /dev/null +++ b/src/data/roadmaps/nextjs/content/react-cache@crBlqiS78n7yz28cT2GGz.md @@ -0,0 +1 @@ +# React Cache \ No newline at end of file diff --git a/src/data/roadmaps/nextjs/content/react-frameworks@FdvaN6BOxUEJt7TarSDmo.md b/src/data/roadmaps/nextjs/content/react-frameworks@FdvaN6BOxUEJt7TarSDmo.md new file mode 100644 index 000000000..cfc75087b --- /dev/null +++ b/src/data/roadmaps/nextjs/content/react-frameworks@FdvaN6BOxUEJt7TarSDmo.md @@ -0,0 +1 @@ +# React Frameworks \ No newline at end of file diff --git a/src/data/roadmaps/nextjs/content/reditects@K1wGmAy9L0VE6cwYE2pA6.md b/src/data/roadmaps/nextjs/content/reditects@K1wGmAy9L0VE6cwYE2pA6.md new file mode 100644 index 000000000..146b03d86 --- /dev/null +++ b/src/data/roadmaps/nextjs/content/reditects@K1wGmAy9L0VE6cwYE2pA6.md @@ -0,0 +1 @@ +# Reditects \ No newline at end of file diff --git a/src/data/roadmaps/nextjs/content/remix@G_33yo1MshQbiaGTPtTdK.md b/src/data/roadmaps/nextjs/content/remix@G_33yo1MshQbiaGTPtTdK.md new file mode 100644 index 000000000..f4753cc6b --- /dev/null +++ b/src/data/roadmaps/nextjs/content/remix@G_33yo1MshQbiaGTPtTdK.md @@ -0,0 +1 @@ +# Remix \ No newline at end of file diff --git a/src/data/roadmaps/nextjs/content/rendering-pages@IlWFMh44HtHDnIr7nqwtI.md b/src/data/roadmaps/nextjs/content/rendering-pages@IlWFMh44HtHDnIr7nqwtI.md new file mode 100644 index 000000000..d08aec199 --- /dev/null +++ b/src/data/roadmaps/nextjs/content/rendering-pages@IlWFMh44HtHDnIr7nqwtI.md @@ -0,0 +1 @@ +# Rendering Pages \ No newline at end of file diff --git a/src/data/roadmaps/nextjs/content/rendering-strategies@1ch6ZXZP46FP8q3HeCqWM.md b/src/data/roadmaps/nextjs/content/rendering-strategies@1ch6ZXZP46FP8q3HeCqWM.md new file mode 100644 index 000000000..f2953a887 --- /dev/null +++ b/src/data/roadmaps/nextjs/content/rendering-strategies@1ch6ZXZP46FP8q3HeCqWM.md @@ -0,0 +1 @@ +# Rendering Strategies \ No newline at end of file diff --git a/src/data/roadmaps/nextjs/content/revalidating-cached-data@N5siOJO3dc9vJUTpbdm04.md b/src/data/roadmaps/nextjs/content/revalidating-cached-data@N5siOJO3dc9vJUTpbdm04.md new file mode 100644 index 000000000..cba04ef1b --- /dev/null +++ b/src/data/roadmaps/nextjs/content/revalidating-cached-data@N5siOJO3dc9vJUTpbdm04.md @@ -0,0 +1 @@ +# Revalidating Cached Data \ No newline at end of file diff --git a/src/data/roadmaps/nextjs/content/revalidation-errors@qMYuXOlr_c-6oQKVOdGci.md b/src/data/roadmaps/nextjs/content/revalidation-errors@qMYuXOlr_c-6oQKVOdGci.md new file mode 100644 index 000000000..d079e9948 --- /dev/null +++ b/src/data/roadmaps/nextjs/content/revalidation-errors@qMYuXOlr_c-6oQKVOdGci.md @@ -0,0 +1 @@ +# Revalidation Errors \ No newline at end of file diff --git a/src/data/roadmaps/nextjs/content/route-matcher@Sn-8ztsjjtUxD_SP6w3cS.md b/src/data/roadmaps/nextjs/content/route-matcher@Sn-8ztsjjtUxD_SP6w3cS.md new file mode 100644 index 000000000..19f4959a3 --- /dev/null +++ b/src/data/roadmaps/nextjs/content/route-matcher@Sn-8ztsjjtUxD_SP6w3cS.md @@ -0,0 +1 @@ +# Route Matcher \ No newline at end of file diff --git a/src/data/roadmaps/nextjs/content/routing-patterns@09uWsmXOXU0Ox7F3qsjRx.md b/src/data/roadmaps/nextjs/content/routing-patterns@09uWsmXOXU0Ox7F3qsjRx.md new file mode 100644 index 000000000..e5844e494 --- /dev/null +++ b/src/data/roadmaps/nextjs/content/routing-patterns@09uWsmXOXU0Ox7F3qsjRx.md @@ -0,0 +1 @@ +# Routing Patterns \ No newline at end of file diff --git a/src/data/roadmaps/nextjs/content/routing-terminology@oFhmV5Xv0KJ-SjeYVZBpi.md b/src/data/roadmaps/nextjs/content/routing-terminology@oFhmV5Xv0KJ-SjeYVZBpi.md new file mode 100644 index 000000000..21b1853b0 --- /dev/null +++ b/src/data/roadmaps/nextjs/content/routing-terminology@oFhmV5Xv0KJ-SjeYVZBpi.md @@ -0,0 +1 @@ +# Routing Terminology \ No newline at end of file diff --git a/src/data/roadmaps/nextjs/content/runtimes-and-types@LN7SHgcQp9gX_jfEN84YP.md b/src/data/roadmaps/nextjs/content/runtimes-and-types@LN7SHgcQp9gX_jfEN84YP.md new file mode 100644 index 000000000..c78ac3aed --- /dev/null +++ b/src/data/roadmaps/nextjs/content/runtimes-and-types@LN7SHgcQp9gX_jfEN84YP.md @@ -0,0 +1 @@ +# Runtimes and Types \ No newline at end of file diff --git a/src/data/roadmaps/nextjs/content/sass@5H7toz-DxtnwjozCgLuk6.md b/src/data/roadmaps/nextjs/content/sass@5H7toz-DxtnwjozCgLuk6.md new file mode 100644 index 000000000..236621207 --- /dev/null +++ b/src/data/roadmaps/nextjs/content/sass@5H7toz-DxtnwjozCgLuk6.md @@ -0,0 +1 @@ +# Sass \ No newline at end of file diff --git a/src/data/roadmaps/nextjs/content/scripts@JFrpy3dGt-UP9Weo1VBvN.md b/src/data/roadmaps/nextjs/content/scripts@JFrpy3dGt-UP9Weo1VBvN.md new file mode 100644 index 000000000..82916c187 --- /dev/null +++ b/src/data/roadmaps/nextjs/content/scripts@JFrpy3dGt-UP9Weo1VBvN.md @@ -0,0 +1 @@ +# Scripts \ No newline at end of file diff --git a/src/data/roadmaps/nextjs/content/server-actions@IuBZY-ISP1Sy_5OQ99jLY.md b/src/data/roadmaps/nextjs/content/server-actions@IuBZY-ISP1Sy_5OQ99jLY.md new file mode 100644 index 000000000..782a11c46 --- /dev/null +++ b/src/data/roadmaps/nextjs/content/server-actions@IuBZY-ISP1Sy_5OQ99jLY.md @@ -0,0 +1 @@ +# Server Actions \ No newline at end of file diff --git a/src/data/roadmaps/nextjs/content/server-rendered@m7eKlykOZCA3BLuBHioDj.md b/src/data/roadmaps/nextjs/content/server-rendered@m7eKlykOZCA3BLuBHioDj.md new file mode 100644 index 000000000..ebaa3e01f --- /dev/null +++ b/src/data/roadmaps/nextjs/content/server-rendered@m7eKlykOZCA3BLuBHioDj.md @@ -0,0 +1 @@ +# Server Rendered \ No newline at end of file diff --git a/src/data/roadmaps/nextjs/content/server@QDxYlIyFOuGUIy_ZovHs0.md b/src/data/roadmaps/nextjs/content/server@QDxYlIyFOuGUIy_ZovHs0.md new file mode 100644 index 000000000..ee9929c84 --- /dev/null +++ b/src/data/roadmaps/nextjs/content/server@QDxYlIyFOuGUIy_ZovHs0.md @@ -0,0 +1 @@ +# Server \ No newline at end of file diff --git a/src/data/roadmaps/nextjs/content/setting-headers@XwDF-Kt9K5smm3ruxlkR2.md b/src/data/roadmaps/nextjs/content/setting-headers@XwDF-Kt9K5smm3ruxlkR2.md new file mode 100644 index 000000000..dd6978b9f --- /dev/null +++ b/src/data/roadmaps/nextjs/content/setting-headers@XwDF-Kt9K5smm3ruxlkR2.md @@ -0,0 +1 @@ +# Setting Headers \ No newline at end of file diff --git a/src/data/roadmaps/nextjs/content/setting-things-up@ThrO72opK7xGWpy0GG63T.md b/src/data/roadmaps/nextjs/content/setting-things-up@ThrO72opK7xGWpy0GG63T.md new file mode 100644 index 000000000..d18c92c44 --- /dev/null +++ b/src/data/roadmaps/nextjs/content/setting-things-up@ThrO72opK7xGWpy0GG63T.md @@ -0,0 +1 @@ +# Setting things Up \ No newline at end of file diff --git a/src/data/roadmaps/nextjs/content/spa-vs-ssr@ch5gUr8xeCIp-i48N5qew.md b/src/data/roadmaps/nextjs/content/spa-vs-ssr@ch5gUr8xeCIp-i48N5qew.md new file mode 100644 index 000000000..60fda1f8f --- /dev/null +++ b/src/data/roadmaps/nextjs/content/spa-vs-ssr@ch5gUr8xeCIp-i48N5qew.md @@ -0,0 +1 @@ +# SPA vs SSR \ No newline at end of file diff --git a/src/data/roadmaps/nextjs/content/spa@NC7s-EOLWhjXR70JFZxcg.md b/src/data/roadmaps/nextjs/content/spa@NC7s-EOLWhjXR70JFZxcg.md new file mode 100644 index 000000000..c5440f918 --- /dev/null +++ b/src/data/roadmaps/nextjs/content/spa@NC7s-EOLWhjXR70JFZxcg.md @@ -0,0 +1 @@ +# SPA \ No newline at end of file diff --git a/src/data/roadmaps/nextjs/content/ssg@CqPZHOs1Iew6PCIjwiqUt.md b/src/data/roadmaps/nextjs/content/ssg@CqPZHOs1Iew6PCIjwiqUt.md new file mode 100644 index 000000000..45b3d47a0 --- /dev/null +++ b/src/data/roadmaps/nextjs/content/ssg@CqPZHOs1Iew6PCIjwiqUt.md @@ -0,0 +1 @@ +# SSG \ No newline at end of file diff --git a/src/data/roadmaps/nextjs/content/ssr@7EYQnX3cEAjSL-iJSprEI.md b/src/data/roadmaps/nextjs/content/ssr@7EYQnX3cEAjSL-iJSprEI.md new file mode 100644 index 000000000..94958a888 --- /dev/null +++ b/src/data/roadmaps/nextjs/content/ssr@7EYQnX3cEAjSL-iJSprEI.md @@ -0,0 +1 @@ +# SSR \ No newline at end of file diff --git a/src/data/roadmaps/nextjs/content/static-assets@iabbuLHqAiRkgj03t64x7.md b/src/data/roadmaps/nextjs/content/static-assets@iabbuLHqAiRkgj03t64x7.md new file mode 100644 index 000000000..cb41e9ef5 --- /dev/null +++ b/src/data/roadmaps/nextjs/content/static-assets@iabbuLHqAiRkgj03t64x7.md @@ -0,0 +1 @@ +# Static Assets \ No newline at end of file diff --git a/src/data/roadmaps/nextjs/content/static-export@evmzZ6F7TWgYhdaahnZHY.md b/src/data/roadmaps/nextjs/content/static-export@evmzZ6F7TWgYhdaahnZHY.md new file mode 100644 index 000000000..816dec1d0 --- /dev/null +++ b/src/data/roadmaps/nextjs/content/static-export@evmzZ6F7TWgYhdaahnZHY.md @@ -0,0 +1 @@ +# Static Export \ No newline at end of file diff --git a/src/data/roadmaps/nextjs/content/static-vs-dynamic@hQHvu7MzNwA2lL9ADm5YQ.md b/src/data/roadmaps/nextjs/content/static-vs-dynamic@hQHvu7MzNwA2lL9ADm5YQ.md new file mode 100644 index 000000000..0c5240f56 --- /dev/null +++ b/src/data/roadmaps/nextjs/content/static-vs-dynamic@hQHvu7MzNwA2lL9ADm5YQ.md @@ -0,0 +1 @@ +# Static vs Dynamic \ No newline at end of file diff --git a/src/data/roadmaps/nextjs/content/streaming@lR7oPh0DCY_BhzXH31N36.md b/src/data/roadmaps/nextjs/content/streaming@lR7oPh0DCY_BhzXH31N36.md new file mode 100644 index 000000000..3ab695ba8 --- /dev/null +++ b/src/data/roadmaps/nextjs/content/streaming@lR7oPh0DCY_BhzXH31N36.md @@ -0,0 +1 @@ +# Streaming \ No newline at end of file diff --git a/src/data/roadmaps/nextjs/content/structuring-routes@9egFwmy-o7Fx-M7FcPXXy.md b/src/data/roadmaps/nextjs/content/structuring-routes@9egFwmy-o7Fx-M7FcPXXy.md new file mode 100644 index 000000000..9d2954754 --- /dev/null +++ b/src/data/roadmaps/nextjs/content/structuring-routes@9egFwmy-o7Fx-M7FcPXXy.md @@ -0,0 +1 @@ +# Structuring Routes \ No newline at end of file diff --git a/src/data/roadmaps/nextjs/content/tailwind-css@3IKXvlA9P06GiOi34zv5H.md b/src/data/roadmaps/nextjs/content/tailwind-css@3IKXvlA9P06GiOi34zv5H.md new file mode 100644 index 000000000..acac9ef88 --- /dev/null +++ b/src/data/roadmaps/nextjs/content/tailwind-css@3IKXvlA9P06GiOi34zv5H.md @@ -0,0 +1 @@ +# Tailwind CSS \ No newline at end of file diff --git a/src/data/roadmaps/nextjs/content/third-party-libraries@-j38AhG6LUCH5GupGiqUM.md b/src/data/roadmaps/nextjs/content/third-party-libraries@-j38AhG6LUCH5GupGiqUM.md new file mode 100644 index 000000000..be09e5c0c --- /dev/null +++ b/src/data/roadmaps/nextjs/content/third-party-libraries@-j38AhG6LUCH5GupGiqUM.md @@ -0,0 +1 @@ +# Third Party Libraries \ No newline at end of file diff --git a/src/data/roadmaps/nextjs/content/types-of-routers@km7dLVpl76c5EfWvhhbRh.md b/src/data/roadmaps/nextjs/content/types-of-routers@km7dLVpl76c5EfWvhhbRh.md new file mode 100644 index 000000000..af16ff93e --- /dev/null +++ b/src/data/roadmaps/nextjs/content/types-of-routers@km7dLVpl76c5EfWvhhbRh.md @@ -0,0 +1 @@ +# Types of routers \ No newline at end of file diff --git a/src/data/roadmaps/nextjs/content/typescript@ZFHkHmvjndPjDAB-MAtb7.md b/src/data/roadmaps/nextjs/content/typescript@ZFHkHmvjndPjDAB-MAtb7.md new file mode 100644 index 000000000..c1e85c36b --- /dev/null +++ b/src/data/roadmaps/nextjs/content/typescript@ZFHkHmvjndPjDAB-MAtb7.md @@ -0,0 +1 @@ +# TypeScript \ No newline at end of file diff --git a/src/data/roadmaps/nextjs/content/use-cases@54Cc_GdL327tzkdYBA305.md b/src/data/roadmaps/nextjs/content/use-cases@54Cc_GdL327tzkdYBA305.md new file mode 100644 index 000000000..60e935432 --- /dev/null +++ b/src/data/roadmaps/nextjs/content/use-cases@54Cc_GdL327tzkdYBA305.md @@ -0,0 +1 @@ +# Use cases \ No newline at end of file diff --git a/src/data/roadmaps/nextjs/content/using-cookies@8kUhcd2-BlqOKInEuSI95.md b/src/data/roadmaps/nextjs/content/using-cookies@8kUhcd2-BlqOKInEuSI95.md new file mode 100644 index 000000000..946d8babb --- /dev/null +++ b/src/data/roadmaps/nextjs/content/using-cookies@8kUhcd2-BlqOKInEuSI95.md @@ -0,0 +1 @@ +# Using Cookies \ No newline at end of file diff --git a/src/data/roadmaps/nextjs/content/videos@1SJX-nGuhIxGH0ukfluoQ.md b/src/data/roadmaps/nextjs/content/videos@1SJX-nGuhIxGH0ukfluoQ.md new file mode 100644 index 000000000..f7e50e9cc --- /dev/null +++ b/src/data/roadmaps/nextjs/content/videos@1SJX-nGuhIxGH0ukfluoQ.md @@ -0,0 +1 @@ +# Videos \ No newline at end of file diff --git a/src/data/roadmaps/nextjs/content/vitest@KTZRo1Y_Z-7eMYzZ9W0Vl.md b/src/data/roadmaps/nextjs/content/vitest@KTZRo1Y_Z-7eMYzZ9W0Vl.md new file mode 100644 index 000000000..b1d983073 --- /dev/null +++ b/src/data/roadmaps/nextjs/content/vitest@KTZRo1Y_Z-7eMYzZ9W0Vl.md @@ -0,0 +1 @@ +# Vitest \ No newline at end of file diff --git a/src/data/roadmaps/nextjs/content/why-frontend-frameworks@rJ3vuI58Z9u2SKTDgpTE2.md b/src/data/roadmaps/nextjs/content/why-frontend-frameworks@rJ3vuI58Z9u2SKTDgpTE2.md new file mode 100644 index 000000000..b56d6a145 --- /dev/null +++ b/src/data/roadmaps/nextjs/content/why-frontend-frameworks@rJ3vuI58Z9u2SKTDgpTE2.md @@ -0,0 +1 @@ +# Why Frontend Frameworks \ No newline at end of file diff --git a/src/data/roadmaps/nextjs/content/why-nextjs@WxoMZRRiW9CGDZ9i80nbf.md b/src/data/roadmaps/nextjs/content/why-nextjs@WxoMZRRiW9CGDZ9i80nbf.md new file mode 100644 index 000000000..98706ecd7 --- /dev/null +++ b/src/data/roadmaps/nextjs/content/why-nextjs@WxoMZRRiW9CGDZ9i80nbf.md @@ -0,0 +1 @@ +# Why Next.js \ No newline at end of file diff --git a/src/data/roadmaps/nextjs/content/why-react@ey6z7Y4WtNtQJ50n-3j5P.md b/src/data/roadmaps/nextjs/content/why-react@ey6z7Y4WtNtQJ50n-3j5P.md new file mode 100644 index 000000000..32f9e3fb9 --- /dev/null +++ b/src/data/roadmaps/nextjs/content/why-react@ey6z7Y4WtNtQJ50n-3j5P.md @@ -0,0 +1 @@ +# Why React \ No newline at end of file diff --git a/src/data/roadmaps/nextjs/content/why-use-app-router@e_rwwlKsvyv9OMDDBXo_N.md b/src/data/roadmaps/nextjs/content/why-use-app-router@e_rwwlKsvyv9OMDDBXo_N.md new file mode 100644 index 000000000..a504c2e18 --- /dev/null +++ b/src/data/roadmaps/nextjs/content/why-use-app-router@e_rwwlKsvyv9OMDDBXo_N.md @@ -0,0 +1 @@ +# Why use App Router? \ No newline at end of file diff --git a/src/data/roadmaps/nextjs/faqs.astro b/src/data/roadmaps/nextjs/faqs.astro new file mode 100644 index 000000000..e69de29bb diff --git a/src/data/roadmaps/nextjs/nextjs.md b/src/data/roadmaps/nextjs/nextjs.md new file mode 100644 index 000000000..6f3f66c31 --- /dev/null +++ b/src/data/roadmaps/nextjs/nextjs.md @@ -0,0 +1,62 @@ +--- +jsonUrl: '/jsons/roadmaps/nextjs.json' +pdfUrl: '/pdfs/roadmaps/nextjs.pdf' +renderer: 'editor' +order: 23 +briefTitle: 'Next.js' +briefDescription: 'Learn everything you need to master Next.js' +title: 'Next.js' +description: 'Learn everything you need to master Next.js' +hasTopics: true +isNew: true +dimensions: + width: 968 + height: 3100 +schema: + headline: 'Next.js Roadmap' + description: 'Learn Next.js with this interactive step by step guide in 2025. We also have resources and short descriptions attached to the roadmap items so you can get everything you want to learn in one place.' + imageUrl: 'https://roadmap.sh/roadmaps/nextjs.png' + datePublished: '2025-08-26' + dateModified: '2025-08-26' +seo: + title: 'Next.js Roadmap: Master Next.js Framework' + description: 'Community driven, articles, resources, guides, interview questions, quizzes for learning Next.js. Master the Next.js framework by following the steps, skills, resources and guides listed in this roadmap.' + keywords: + - 'next.js roadmap 2025' + - 'nextjs roadmap 2025' + - 'learn next.js 2025' + - 'nextjs learning path 2025' + - 'guide to learning next.js' + - 'next.js learning roadmap' + - 'nextjs roadmap' + - 'master next.js framework' + - 'next.js skills' + - 'next.js skills test' + - 'next.js concepts' + - 'learn next.js' + - 'what is next.js' + - 'next.js framework roadmap' + - 'next.js quiz' + - 'next.js interview questions' + - 'next.js app router' + - 'next.js pages router' + - 'next.js 15 roadmap' + - 'react framework roadmap' + - 'full stack next.js' + - 'next.js server components' + - 'next.js client components' +relatedRoadmaps: + - 'react' + - 'frontend' + - 'typescript' + - 'javascript' + - 'nodejs' + - 'full-stack' +sitemap: + priority: 1 + changefreq: 'monthly' +tags: + - 'roadmap' + - 'main-sitemap' + - 'skill-roadmap' +--- \ No newline at end of file