` only activates if it is placed before any DOM node:
+
+```js [3, 5]
+function Component() {
return (
Hi
@@ -2136,7 +2811,7 @@ function Component() {
To fix, ensure that the `` comes before any other DOM nodes:
-```js [3, 5]
+```js [3, 5]
function Component() {
return (
@@ -2150,7 +2825,6 @@ function Component() {
This error occurs when two `` components with the same `name` are mounted at the same time:
-
```js [3]
function Item() {
// 🚩 All items will get the same "name".
@@ -2160,7 +2834,9 @@ function Item() {
function ItemList({items}) {
return (
<>
- {item.map(item => )}
+ {items.map((item) => (
+
+ ))}
>
);
}
@@ -2172,16 +2848,16 @@ This will cause the View Transition to error. In development, React detects this
There are two `` components with the same name mounted at the same time. This is not supported and will cause View Transitions to error. Try to use a more unique name e.g. by using a namespace prefix and adding the id of an item to the name.
-{' '}at Item
-{' '}at ItemList
+{' '}at Item
+{' '}at ItemList
The existing `` duplicate has this stack trace.
-{' '}at Item
-{' '}at ItemList
+{' '}at Item
+{' '}at ItemList
@@ -2190,14 +2866,16 @@ To fix, ensure that there's only one `` with the same name mount
```js [3]
function Item({id}) {
- // ✅ All items will get the same "name".
+ // ✅ All items will get a unique name.
return ...;
}
function ItemList({items}) {
return (
<>
- {item.map(item => )}
+ {items.map((item) => (
+
+ ))}
>
);
}
diff --git a/src/pages/[[...markdownPath]].js b/src/pages/[[...markdownPath]].js
index cb2e23a3..1c6f2c7a 100644
--- a/src/pages/[[...markdownPath]].js
+++ b/src/pages/[[...markdownPath]].js
@@ -139,6 +139,9 @@ export async function getStaticPaths() {
const stat = promisify(fs.stat);
const rootDir = process.cwd() + '/src/content';
+ // Pages that should only be available in development.
+ const devOnlyPages = new Set(['learn/rsc-sandbox-test']);
+
// Find all MD files recursively.
async function getFiles(dir) {
const subdirs = await readdir(dir);
@@ -170,14 +173,20 @@ export async function getStaticPaths() {
const files = await getFiles(rootDir);
- const paths = files.map((file) => ({
- params: {
- markdownPath: getSegments(file),
- // ^^^ CAREFUL HERE.
- // If you rename markdownPath, update patches/next-remote-watch.patch too.
- // Otherwise you'll break Fast Refresh for all MD files.
- },
- }));
+ const paths = files
+ .map((file) => ({
+ params: {
+ markdownPath: getSegments(file),
+ // ^^^ CAREFUL HERE.
+ // If you rename markdownPath, update patches/next-remote-watch.patch too.
+ // Otherwise you'll break Fast Refresh for all MD files.
+ },
+ }))
+ .filter((entry) => {
+ if (process.env.NODE_ENV !== 'production') return true;
+ const pagePath = entry.params.markdownPath.join('/');
+ return !devOnlyPages.has(pagePath);
+ });
return {
paths: paths,
diff --git a/src/pages/_document.tsx b/src/pages/_document.tsx
index 21b6f4d4..f0f47374 100644
--- a/src/pages/_document.tsx
+++ b/src/pages/_document.tsx
@@ -60,7 +60,7 @@ const MyDocument = () => {
document.documentElement.classList.add('uwu');
if (!logShown) {
console.log('uwu mode! turn off with ?uwu=0');
- console.log('logo credit to @sawaratsuki1004 via https://github.com/SAWARATSUKI/ServiceLogos');
+ console.log('logo credit to @sawaratsuki1004 via https://github.com/SAWARATSUKI/KawaiiLogos');
logShown = true;
}
} else {
diff --git a/src/sidebarBlog.json b/src/sidebarBlog.json
index e5da90fe..fd30d0e7 100644
--- a/src/sidebarBlog.json
+++ b/src/sidebarBlog.json
@@ -11,6 +11,13 @@
"path": "/blog",
"skipBreadcrumb": true,
"routes": [
+ {
+ "title": "The React Foundation: A New Home for React Hosted by the Linux Foundation",
+ "titleForHomepage": "The React Foundation: A New Home for React Hosted by the Linux Foundation",
+ "icon": "blog",
+ "date": "February 24, 2026",
+ "path": "/blog/2026/02/24/the-react-foundation"
+ },
{
"title": "Denial of Service and Source Code Exposure in React Server Components",
"titleForHomepage": "Additional Vulnerabilities in RSC",
diff --git a/tsconfig.json b/tsconfig.json
index 9d72e01b..3e2a100b 100644
--- a/tsconfig.json
+++ b/tsconfig.json
@@ -33,6 +33,7 @@
"next-env.d.ts",
"src/**/*.ts",
"src/**/*.tsx",
+ "src/**/*.source.js",
".next/types/**/*.ts"
],
"exclude": [