Repository files navigation

ReactPlay Docs

Official documentation for ReactPlay, built with Docora — a Next.js documentation theme.

Check the ReactPlay Official Repository for more information.

What is ReactPlay

ReactPlay

react-play is an open-source web app that helps you learn ReactJS faster with a hands-on practice model. It is a collection of ReactJS projects you can use to learn ReactJS.

Is that all? Nope. You can also create your projects and share them with the world. The best part is that the ReactJS experts will review your project code before it gets part of the ReactPlay app. Isn't that a pure WIN-WIN?

This repository serves as the documentation for ReactPlay. It includes information on how to perform various activities on the platform.

Develop

Requires Node.js 20.9 or later.

npm install
npm run dev

The site runs at http://localhost:3000 and redirects to the default locale at /en.

Build and preview a production bundle:

npm run build
npm run start

Project structure

reactplay-docora/
├── content/ # All documentation, one folder per locale
│ ├── en/
│ │ ├── index.mdx # Landing page (/en)
│ │ └── docs/ # Guides (/en/docs/...)
│ └── bn/ # Bengali translation, same tree
├── app/ # Next.js App Router
│ ├── [locale]/ # Locale layout and content catch-all
│ ├── api/ # Search and assistant routes
│ └── globals.css # Theme stylesheet
├── lib/source.ts # Content source
├── docs.config.ts # Site configuration (nav, footer, i18n, socials)
├── next.config.ts # Next.js configuration
└── public/ # Static assets

Write

Every file under content/ becomes a route:

FileRoute
content/en/index.mdx/en
content/en/docs/1.getting-started/2.contribution-guide.mdx/en/docs/getting-started/contribution-guide
content/bn/docs/1.getting-started/2.contribution-guide.mdx/bn/docs/getting-started/contribution-guide

The numeric prefix sets sidebar order and is stripped from the URL. A folder becomes a sidebar section; its title and icon come from the .navigation.yml beside its pages.

Pages are MDX and can use Docora's MDC components:

---title: Contribution Guidedescription: Where to start contributing to ReactPlay.icon: heart-handshake---
::tip
New to open-source? Follow [this guide](https://opensource.guide/how-to-contribute/) to jumpstart your Open Source journey 🚀
::

Translations

Locales are declared in docs.config.ts. To add one, add it to i18n.locales, copy content/en to content/<code> and translate it — routes, the sidebar and the language switcher follow automatically. Interface strings are overridden per locale under i18n.messages.

🤩 How to contribute to this repo?

You can contribute to this repo in several ways:

  1. Write documentation for the various parts of ReactPlay
  2. Suggest changes to the existing docs
  3. Improve the documentation website

Please read CONTRIBUTING for details on our CODE OF CONDUCT, and the process for submitting pull requests to us.

💡 New to Open Source? Follow this guide to jumpstart your Open Source journey 🚀

🍴 Fork and Clone the Repo

First, fork this repo with the Fork button in the top right corner. If you are new to forking, please watch this YouTube Guide to get started.

Once forked, click the bright green <> Code button and copy the URL, then run:

git clone <URL_LINK>

Change into the directory with cd <directory-name>.

⬆ Set Upstream

We recommend setting an upstream repo to make pulling and fetching easier:

git remote add upstream https://github.com/reactplay/docs

Check that it was added:

git remote -v

🌴 Create a branch

Create a separate branch for each issue you work on:

git checkout -b <branch-name>

Keep the branch name clear and straightforward.

🔒 Commit and Push

git add .
git commit -m "<message>"
git push -u origin <branch-name>

The message should describe your changes since the last commit.

🙌 Pull Request

Open the forked repo on GitHub, go to the Pull Requests tab and click New Pull Request. Select the base and compare branches carefully — base is the branch you are merging into, compare is the branch you made your changes on. Then click Create Pull Request and wait until we review and merge it.

Until it gets merged, browse ReactPlay and contribute to it.

Troubleshooting Guide

Here are some common issues faced and their solutions:

Issue 1: npm install is not working

  • Solution: Try deleting node_modules and reinstalling dependencies.

Issue 2: Console errors or warnings

  • Solution: Update dependencies or clear the .next cache.

For more details, see our full Troubleshooting Guide.

About

No description, website, or topics provided.

Resources

Code of conduct

Contributing

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Add copy buttons to all
 blocks\n(function() {\n function addCopyButtons() {\n document.querySelectorAll('pre code').forEach(function(codeBlock) {\n if (codeBlock.parentElement.hasAttribute('data-copy-added')) return;\n codeBlock.parentElement.setAttribute('data-copy-added', 'true');\n \n var btn = document.createElement('button');\n btn.textContent = 'Copy';\n btn.style.cssText = 'position:absolute;top:4px;right:4px;padding:2px 8px;font-size:11px;background:#4ecdc4;border:none;border-radius:4px;color:#1a1a2e;cursor:pointer;opacity:0.7;transition:opacity 0.2s;';\n btn.onmouseover = function() { this.style.opacity = '1'; };\n btn.onmouseout = function() { this.style.opacity = '0.7'; };\n btn.onclick = function() {\n navigator.clipboard.writeText(codeBlock.textContent).then(function() {\n btn.textContent = 'Copied!';\n setTimeout(function() { btn.textContent = 'Copy'; }, 1500);\n });\n };\n codeBlock.parentElement.style.position = 'relative';\n codeBlock.parentElement.appendChild(btn);\n });\n }\n \n addCopyButtons();\n \n // Re-run on dynamic content\n var observer = new MutationObserver(addCopyButtons);\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "Add Copy Buttons to Code Blocks");
}
} catch(__e) { console.warn('[Userscript:Add Copy Buttons to Code Blocks]', __e); }
})();
(function(){
try {
var __m = "github.com";
var __re = new RegExp('^' + "github\\.com" + '
Skip to content

Repository files navigation

ReactPlay Docs

Official documentation for ReactPlay, built with Docora — a Next.js documentation theme.

Check the ReactPlay Official Repository for more information.

What is ReactPlay

ReactPlay

react-play is an open-source web app that helps you learn ReactJS faster with a hands-on practice model. It is a collection of ReactJS projects you can use to learn ReactJS.

Is that all? Nope. You can also create your projects and share them with the world. The best part is that the ReactJS experts will review your project code before it gets part of the ReactPlay app. Isn't that a pure WIN-WIN?

This repository serves as the documentation for ReactPlay. It includes information on how to perform various activities on the platform.

Develop

Requires Node.js 20.9 or later.

npm install
npm run dev

The site runs at http://localhost:3000 and redirects to the default locale at /en.

Build and preview a production bundle:

npm run build
npm run start

Project structure

reactplay-docora/
├── content/ # All documentation, one folder per locale
│ ├── en/
│ │ ├── index.mdx # Landing page (/en)
│ │ └── docs/ # Guides (/en/docs/...)
│ └── bn/ # Bengali translation, same tree
├── app/ # Next.js App Router
│ ├── [locale]/ # Locale layout and content catch-all
│ ├── api/ # Search and assistant routes
│ └── globals.css # Theme stylesheet
├── lib/source.ts # Content source
├── docs.config.ts # Site configuration (nav, footer, i18n, socials)
├── next.config.ts # Next.js configuration
└── public/ # Static assets

Write

Every file under content/ becomes a route:

FileRoute
content/en/index.mdx/en
content/en/docs/1.getting-started/2.contribution-guide.mdx/en/docs/getting-started/contribution-guide
content/bn/docs/1.getting-started/2.contribution-guide.mdx/bn/docs/getting-started/contribution-guide

The numeric prefix sets sidebar order and is stripped from the URL. A folder becomes a sidebar section; its title and icon come from the .navigation.yml beside its pages.

Pages are MDX and can use Docora's MDC components:

---title: Contribution Guidedescription: Where to start contributing to ReactPlay.icon: heart-handshake---
::tip
New to open-source? Follow [this guide](https://opensource.guide/how-to-contribute/) to jumpstart your Open Source journey 🚀
::

Translations

Locales are declared in docs.config.ts. To add one, add it to i18n.locales, copy content/en to content/<code> and translate it — routes, the sidebar and the language switcher follow automatically. Interface strings are overridden per locale under i18n.messages.

🤩 How to contribute to this repo?

You can contribute to this repo in several ways:

  1. Write documentation for the various parts of ReactPlay
  2. Suggest changes to the existing docs
  3. Improve the documentation website

Please read CONTRIBUTING for details on our CODE OF CONDUCT, and the process for submitting pull requests to us.

💡 New to Open Source? Follow this guide to jumpstart your Open Source journey 🚀

🍴 Fork and Clone the Repo

First, fork this repo with the Fork button in the top right corner. If you are new to forking, please watch this YouTube Guide to get started.

Once forked, click the bright green <> Code button and copy the URL, then run:

git clone <URL_LINK>

Change into the directory with cd <directory-name>.

⬆ Set Upstream

We recommend setting an upstream repo to make pulling and fetching easier:

git remote add upstream https://github.com/reactplay/docs

Check that it was added:

git remote -v

🌴 Create a branch

Create a separate branch for each issue you work on:

git checkout -b <branch-name>

Keep the branch name clear and straightforward.

🔒 Commit and Push

git add .
git commit -m "<message>"
git push -u origin <branch-name>

The message should describe your changes since the last commit.

🙌 Pull Request

Open the forked repo on GitHub, go to the Pull Requests tab and click New Pull Request. Select the base and compare branches carefully — base is the branch you are merging into, compare is the branch you made your changes on. Then click Create Pull Request and wait until we review and merge it.

Until it gets merged, browse ReactPlay and contribute to it.

Troubleshooting Guide

Here are some common issues faced and their solutions:

Issue 1: npm install is not working

  • Solution: Try deleting node_modules and reinstalling dependencies.

Issue 2: Console errors or warnings

  • Solution: Update dependencies or clear the .next cache.

For more details, see our full Troubleshooting Guide.

About

No description, website, or topics provided.

Resources

Code of conduct

Contributing

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Force GitHub README to respect dark mode\n(function() {\n var style = document.createElement('style');\n style.textContent = '\n .markdown-body {\n color-scheme: dark light;\n }\n .markdown-body pre { background: #161b22 !important; }\n .markdown-body code { background: rgba(110, 118, 129, 0.4) !important; }\n .markdown-body table th, .markdown-body table td { border-color: #30363d !important; }\n .markdown-body img { background: #0d1117; }\n .markdown-body blockquote { border-left-color: #8b949e; }\n .markdown-body hr { border-color: #30363d; }\n ';\n document.head.appendChild(style);\n})();", "GitHub Dark Mode README Fix"); } } catch(__e) { console.warn('[Userscript:GitHub Dark Mode README Fix]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

Repository files navigation

ReactPlay Docs

Official documentation for ReactPlay, built with Docora — a Next.js documentation theme.

Check the ReactPlay Official Repository for more information.

What is ReactPlay

ReactPlay

react-play is an open-source web app that helps you learn ReactJS faster with a hands-on practice model. It is a collection of ReactJS projects you can use to learn ReactJS.

Is that all? Nope. You can also create your projects and share them with the world. The best part is that the ReactJS experts will review your project code before it gets part of the ReactPlay app. Isn't that a pure WIN-WIN?

This repository serves as the documentation for ReactPlay. It includes information on how to perform various activities on the platform.

Develop

Requires Node.js 20.9 or later.

npm install
npm run dev

The site runs at http://localhost:3000 and redirects to the default locale at /en.

Build and preview a production bundle:

npm run build
npm run start

Project structure

reactplay-docora/
├── content/ # All documentation, one folder per locale
│ ├── en/
│ │ ├── index.mdx # Landing page (/en)
│ │ └── docs/ # Guides (/en/docs/...)
│ └── bn/ # Bengali translation, same tree
├── app/ # Next.js App Router
│ ├── [locale]/ # Locale layout and content catch-all
│ ├── api/ # Search and assistant routes
│ └── globals.css # Theme stylesheet
├── lib/source.ts # Content source
├── docs.config.ts # Site configuration (nav, footer, i18n, socials)
├── next.config.ts # Next.js configuration
└── public/ # Static assets

Write

Every file under content/ becomes a route:

FileRoute
content/en/index.mdx/en
content/en/docs/1.getting-started/2.contribution-guide.mdx/en/docs/getting-started/contribution-guide
content/bn/docs/1.getting-started/2.contribution-guide.mdx/bn/docs/getting-started/contribution-guide

The numeric prefix sets sidebar order and is stripped from the URL. A folder becomes a sidebar section; its title and icon come from the .navigation.yml beside its pages.

Pages are MDX and can use Docora's MDC components:

---title: Contribution Guidedescription: Where to start contributing to ReactPlay.icon: heart-handshake---
::tip
New to open-source? Follow [this guide](https://opensource.guide/how-to-contribute/) to jumpstart your Open Source journey 🚀
::

Translations

Locales are declared in docs.config.ts. To add one, add it to i18n.locales, copy content/en to content/<code> and translate it — routes, the sidebar and the language switcher follow automatically. Interface strings are overridden per locale under i18n.messages.

🤩 How to contribute to this repo?

You can contribute to this repo in several ways:

  1. Write documentation for the various parts of ReactPlay
  2. Suggest changes to the existing docs
  3. Improve the documentation website

Please read CONTRIBUTING for details on our CODE OF CONDUCT, and the process for submitting pull requests to us.

💡 New to Open Source? Follow this guide to jumpstart your Open Source journey 🚀

🍴 Fork and Clone the Repo

First, fork this repo with the Fork button in the top right corner. If you are new to forking, please watch this YouTube Guide to get started.

Once forked, click the bright green <> Code button and copy the URL, then run:

git clone <URL_LINK>

Change into the directory with cd <directory-name>.

⬆ Set Upstream

We recommend setting an upstream repo to make pulling and fetching easier:

git remote add upstream https://github.com/reactplay/docs

Check that it was added:

git remote -v

🌴 Create a branch

Create a separate branch for each issue you work on:

git checkout -b <branch-name>

Keep the branch name clear and straightforward.

🔒 Commit and Push

git add .
git commit -m "<message>"
git push -u origin <branch-name>

The message should describe your changes since the last commit.

🙌 Pull Request

Open the forked repo on GitHub, go to the Pull Requests tab and click New Pull Request. Select the base and compare branches carefully — base is the branch you are merging into, compare is the branch you made your changes on. Then click Create Pull Request and wait until we review and merge it.

Until it gets merged, browse ReactPlay and contribute to it.

Troubleshooting Guide

Here are some common issues faced and their solutions:

Issue 1: npm install is not working

  • Solution: Try deleting node_modules and reinstalling dependencies.

Issue 2: Console errors or warnings

  • Solution: Update dependencies or clear the .next cache.

For more details, see our full Troubleshooting Guide.

About

No description, website, or topics provided.

Resources

Code of conduct

Contributing

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Highlight search terms from Google/DuckDuckGo/Bing referrer\n(function() {\n var ref = document.referrer;\n var terms = [];\n \n if (ref.includes('google.com') || ref.includes('duckduckgo.com') || ref.includes('bing.com')) {\n var url = new URL(ref);\n var q = url.searchParams.get('q') || url.searchParams.get('p');\n if (q) {\n terms = q.split(/\\s+/).filter(function(t) { return t.length > 2; });\n }\n }\n \n if (terms.length === 0) return;\n \n var style = document.createElement('style');\n style.textContent = '.userscript-highlight { background: #fbbf24; color: #1a1a2e; padding: 1px 3px; border-radius: 2px; }';\n document.head.appendChild(style);\n \n function highlight(node) {\n if (node.nodeType === 3) { // text node\n var text = node.textContent;\n var found = false;\n terms.forEach(function(term) {\n var regex = new RegExp('(' + term.replace(/[.*+?^${}()|[\\]\\\\]/g, '\\\\') + ')', 'gi');\n if (regex.test(text)) {\n found = true;\n var frag = document.createDocumentFragment();\n var parts = text.split(regex);\n parts.forEach(function(part, i) {\n if (i % 2 === 0) {\n frag.appendChild(document.createTextNode(part));\n } else {\n var span = document.createElement('span');\n span.className = 'userscript-highlight';\n span.textContent = part;\n frag.appendChild(span);\n }\n });\n node.parentNode.replaceChild(frag, node);\n }\n });\n } else if (node.nodeType === 1 && node.childNodes) { // element\n var skipTags = ['SCRIPT', 'STYLE', 'NOSCRIPT', 'TEXTAREA', 'INPUT', 'SELECT'];\n if (!skipTags.includes(node.tagName)) {\n Array.from(node.childNodes).forEach(highlight);\n }\n }\n }\n \n highlight(document.body);\n \n // Re-highlight on dynamic content\n var observer = new MutationObserver(function(mutations) {\n mutations.forEach(function(m) {\n m.addedNodes.forEach(function(node) {\n if (node.nodeType === 1 || node.nodeType === 3) highlight(node);\n });\n });\n });\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "Highlight Search Terms"); } } catch(__e) { console.warn('[Userscript:Highlight Search Terms]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

Repository files navigation

ReactPlay Docs

Official documentation for ReactPlay, built with Docora — a Next.js documentation theme.

Check the ReactPlay Official Repository for more information.

What is ReactPlay

ReactPlay

react-play is an open-source web app that helps you learn ReactJS faster with a hands-on practice model. It is a collection of ReactJS projects you can use to learn ReactJS.

Is that all? Nope. You can also create your projects and share them with the world. The best part is that the ReactJS experts will review your project code before it gets part of the ReactPlay app. Isn't that a pure WIN-WIN?

This repository serves as the documentation for ReactPlay. It includes information on how to perform various activities on the platform.

Develop

Requires Node.js 20.9 or later.

npm install
npm run dev

The site runs at http://localhost:3000 and redirects to the default locale at /en.

Build and preview a production bundle:

npm run build
npm run start

Project structure

reactplay-docora/
├── content/ # All documentation, one folder per locale
│ ├── en/
│ │ ├── index.mdx # Landing page (/en)
│ │ └── docs/ # Guides (/en/docs/...)
│ └── bn/ # Bengali translation, same tree
├── app/ # Next.js App Router
│ ├── [locale]/ # Locale layout and content catch-all
│ ├── api/ # Search and assistant routes
│ └── globals.css # Theme stylesheet
├── lib/source.ts # Content source
├── docs.config.ts # Site configuration (nav, footer, i18n, socials)
├── next.config.ts # Next.js configuration
└── public/ # Static assets

Write

Every file under content/ becomes a route:

FileRoute
content/en/index.mdx/en
content/en/docs/1.getting-started/2.contribution-guide.mdx/en/docs/getting-started/contribution-guide
content/bn/docs/1.getting-started/2.contribution-guide.mdx/bn/docs/getting-started/contribution-guide

The numeric prefix sets sidebar order and is stripped from the URL. A folder becomes a sidebar section; its title and icon come from the .navigation.yml beside its pages.

Pages are MDX and can use Docora's MDC components:

---title: Contribution Guidedescription: Where to start contributing to ReactPlay.icon: heart-handshake---
::tip
New to open-source? Follow [this guide](https://opensource.guide/how-to-contribute/) to jumpstart your Open Source journey 🚀
::

Translations

Locales are declared in docs.config.ts. To add one, add it to i18n.locales, copy content/en to content/<code> and translate it — routes, the sidebar and the language switcher follow automatically. Interface strings are overridden per locale under i18n.messages.

🤩 How to contribute to this repo?

You can contribute to this repo in several ways:

  1. Write documentation for the various parts of ReactPlay
  2. Suggest changes to the existing docs
  3. Improve the documentation website

Please read CONTRIBUTING for details on our CODE OF CONDUCT, and the process for submitting pull requests to us.

💡 New to Open Source? Follow this guide to jumpstart your Open Source journey 🚀

🍴 Fork and Clone the Repo

First, fork this repo with the Fork button in the top right corner. If you are new to forking, please watch this YouTube Guide to get started.

Once forked, click the bright green <> Code button and copy the URL, then run:

git clone <URL_LINK>

Change into the directory with cd <directory-name>.

⬆ Set Upstream

We recommend setting an upstream repo to make pulling and fetching easier:

git remote add upstream https://github.com/reactplay/docs

Check that it was added:

git remote -v

🌴 Create a branch

Create a separate branch for each issue you work on:

git checkout -b <branch-name>

Keep the branch name clear and straightforward.

🔒 Commit and Push

git add .
git commit -m "<message>"
git push -u origin <branch-name>

The message should describe your changes since the last commit.

🙌 Pull Request

Open the forked repo on GitHub, go to the Pull Requests tab and click New Pull Request. Select the base and compare branches carefully — base is the branch you are merging into, compare is the branch you made your changes on. Then click Create Pull Request and wait until we review and merge it.

Until it gets merged, browse ReactPlay and contribute to it.

Troubleshooting Guide

Here are some common issues faced and their solutions:

Issue 1: npm install is not working

  • Solution: Try deleting node_modules and reinstalling dependencies.

Issue 2: Console errors or warnings

  • Solution: Update dependencies or clear the .next cache.

For more details, see our full Troubleshooting Guide.

About

No description, website, or topics provided.

Resources

Code of conduct

Contributing

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Strip utm_, fbclid, gclid, etc. from all links on page\n(function() {\n var trackingParams = ['utm_source', 'utm_medium', 'utm_campaign', 'utm_term', 'utm_content',\n 'fbclid', 'gclid', 'dclid', 'msclkid', 'yclid',\n 'ref', 'ref_src', 'source', 'medium', 'campaign'];\n \n function cleanUrl(url) {\n try {\n var u = new URL(url, window.location.origin);\n var changed = false;\n trackingParams.forEach(function(p) {\n if (u.searchParams.has(p)) {\n u.searchParams.delete(p);\n changed = true;\n }\n });\n return changed ? u.toString() : url;\n } catch (e) {\n return url;\n }\n }\n \n function cleanLinks() {\n document.querySelectorAll('a[href]').forEach(function(a) {\n var clean = cleanUrl(a.href);\n if (clean !== a.href) a.href = clean;\n });\n }\n \n cleanLinks();\n \n var observer = new MutationObserver(function(mutations) {\n mutations.forEach(function(m) {\n m.addedNodes.forEach(function(node) {\n if (node.nodeType === 1) {\n if (node.tagName === 'A') cleanLinks();\n node.querySelectorAll('a[href]').forEach(function(a) {\n var clean = cleanUrl(a.href);\n if (clean !== a.href) a.href = clean;\n });\n }\n });\n });\n });\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "Remove Tracking Parameters from Links"); } } catch(__e) { console.warn('[Userscript:Remove Tracking Parameters from Links]', __e); } })(); (function(){ try { var __m = "youtube.com"; var __re = new RegExp('^' + "youtube\\.com" + '
Skip to content

Repository files navigation

ReactPlay Docs

Official documentation for ReactPlay, built with Docora — a Next.js documentation theme.

Check the ReactPlay Official Repository for more information.

What is ReactPlay

ReactPlay

react-play is an open-source web app that helps you learn ReactJS faster with a hands-on practice model. It is a collection of ReactJS projects you can use to learn ReactJS.

Is that all? Nope. You can also create your projects and share them with the world. The best part is that the ReactJS experts will review your project code before it gets part of the ReactPlay app. Isn't that a pure WIN-WIN?

This repository serves as the documentation for ReactPlay. It includes information on how to perform various activities on the platform.

Develop

Requires Node.js 20.9 or later.

npm install
npm run dev

The site runs at http://localhost:3000 and redirects to the default locale at /en.

Build and preview a production bundle:

npm run build
npm run start

Project structure

reactplay-docora/
├── content/ # All documentation, one folder per locale
│ ├── en/
│ │ ├── index.mdx # Landing page (/en)
│ │ └── docs/ # Guides (/en/docs/...)
│ └── bn/ # Bengali translation, same tree
├── app/ # Next.js App Router
│ ├── [locale]/ # Locale layout and content catch-all
│ ├── api/ # Search and assistant routes
│ └── globals.css # Theme stylesheet
├── lib/source.ts # Content source
├── docs.config.ts # Site configuration (nav, footer, i18n, socials)
├── next.config.ts # Next.js configuration
└── public/ # Static assets

Write

Every file under content/ becomes a route:

FileRoute
content/en/index.mdx/en
content/en/docs/1.getting-started/2.contribution-guide.mdx/en/docs/getting-started/contribution-guide
content/bn/docs/1.getting-started/2.contribution-guide.mdx/bn/docs/getting-started/contribution-guide

The numeric prefix sets sidebar order and is stripped from the URL. A folder becomes a sidebar section; its title and icon come from the .navigation.yml beside its pages.

Pages are MDX and can use Docora's MDC components:

---title: Contribution Guidedescription: Where to start contributing to ReactPlay.icon: heart-handshake---
::tip
New to open-source? Follow [this guide](https://opensource.guide/how-to-contribute/) to jumpstart your Open Source journey 🚀
::

Translations

Locales are declared in docs.config.ts. To add one, add it to i18n.locales, copy content/en to content/<code> and translate it — routes, the sidebar and the language switcher follow automatically. Interface strings are overridden per locale under i18n.messages.

🤩 How to contribute to this repo?

You can contribute to this repo in several ways:

  1. Write documentation for the various parts of ReactPlay
  2. Suggest changes to the existing docs
  3. Improve the documentation website

Please read CONTRIBUTING for details on our CODE OF CONDUCT, and the process for submitting pull requests to us.

💡 New to Open Source? Follow this guide to jumpstart your Open Source journey 🚀

🍴 Fork and Clone the Repo

First, fork this repo with the Fork button in the top right corner. If you are new to forking, please watch this YouTube Guide to get started.

Once forked, click the bright green <> Code button and copy the URL, then run:

git clone <URL_LINK>

Change into the directory with cd <directory-name>.

⬆ Set Upstream

We recommend setting an upstream repo to make pulling and fetching easier:

git remote add upstream https://github.com/reactplay/docs

Check that it was added:

git remote -v

🌴 Create a branch

Create a separate branch for each issue you work on:

git checkout -b <branch-name>

Keep the branch name clear and straightforward.

🔒 Commit and Push

git add .
git commit -m "<message>"
git push -u origin <branch-name>

The message should describe your changes since the last commit.

🙌 Pull Request

Open the forked repo on GitHub, go to the Pull Requests tab and click New Pull Request. Select the base and compare branches carefully — base is the branch you are merging into, compare is the branch you made your changes on. Then click Create Pull Request and wait until we review and merge it.

Until it gets merged, browse ReactPlay and contribute to it.

Troubleshooting Guide

Here are some common issues faced and their solutions:

Issue 1: npm install is not working

  • Solution: Try deleting node_modules and reinstalling dependencies.

Issue 2: Console errors or warnings

  • Solution: Update dependencies or clear the .next cache.

For more details, see our full Troubleshooting Guide.

About

No description, website, or topics provided.

Resources

Code of conduct

Contributing

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Auto-enable theater mode on YouTube\n(function() {\n function tryTheater() {\n var btn = document.querySelector('button[aria-label=\"Theater mode\"], ytd-player #player button[title=\"Theater mode\"]');\n if (btn && !btn.classList.contains('activated')) {\n btn.click();\n }\n }\n \n // Try immediately\n tryTheater();\n \n // Try after navigation (SPA)\n var lastUrl = location.href;\n setInterval(function() {\n if (location.href !== lastUrl) {\n lastUrl = location.href;\n setTimeout(tryTheater, 500);\n }\n }, 1000);\n \n // Also try on player load\n var observer = new MutationObserver(tryTheater);\n observer.observe(document.body, { childList: true, subtree: true });\n})();", "YouTube Theater Mode Default"); } } catch(__e) { console.warn('[Userscript:YouTube Theater Mode Default]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

Repository files navigation

ReactPlay Docs

Official documentation for ReactPlay, built with Docora — a Next.js documentation theme.

Check the ReactPlay Official Repository for more information.

What is ReactPlay

ReactPlay

react-play is an open-source web app that helps you learn ReactJS faster with a hands-on practice model. It is a collection of ReactJS projects you can use to learn ReactJS.

Is that all? Nope. You can also create your projects and share them with the world. The best part is that the ReactJS experts will review your project code before it gets part of the ReactPlay app. Isn't that a pure WIN-WIN?

This repository serves as the documentation for ReactPlay. It includes information on how to perform various activities on the platform.

Develop

Requires Node.js 20.9 or later.

npm install
npm run dev

The site runs at http://localhost:3000 and redirects to the default locale at /en.

Build and preview a production bundle:

npm run build
npm run start

Project structure

reactplay-docora/
├── content/ # All documentation, one folder per locale
│ ├── en/
│ │ ├── index.mdx # Landing page (/en)
│ │ └── docs/ # Guides (/en/docs/...)
│ └── bn/ # Bengali translation, same tree
├── app/ # Next.js App Router
│ ├── [locale]/ # Locale layout and content catch-all
│ ├── api/ # Search and assistant routes
│ └── globals.css # Theme stylesheet
├── lib/source.ts # Content source
├── docs.config.ts # Site configuration (nav, footer, i18n, socials)
├── next.config.ts # Next.js configuration
└── public/ # Static assets

Write

Every file under content/ becomes a route:

FileRoute
content/en/index.mdx/en
content/en/docs/1.getting-started/2.contribution-guide.mdx/en/docs/getting-started/contribution-guide
content/bn/docs/1.getting-started/2.contribution-guide.mdx/bn/docs/getting-started/contribution-guide

The numeric prefix sets sidebar order and is stripped from the URL. A folder becomes a sidebar section; its title and icon come from the .navigation.yml beside its pages.

Pages are MDX and can use Docora's MDC components:

---title: Contribution Guidedescription: Where to start contributing to ReactPlay.icon: heart-handshake---
::tip
New to open-source? Follow [this guide](https://opensource.guide/how-to-contribute/) to jumpstart your Open Source journey 🚀
::

Translations

Locales are declared in docs.config.ts. To add one, add it to i18n.locales, copy content/en to content/<code> and translate it — routes, the sidebar and the language switcher follow automatically. Interface strings are overridden per locale under i18n.messages.

🤩 How to contribute to this repo?

You can contribute to this repo in several ways:

  1. Write documentation for the various parts of ReactPlay
  2. Suggest changes to the existing docs
  3. Improve the documentation website

Please read CONTRIBUTING for details on our CODE OF CONDUCT, and the process for submitting pull requests to us.

💡 New to Open Source? Follow this guide to jumpstart your Open Source journey 🚀

🍴 Fork and Clone the Repo

First, fork this repo with the Fork button in the top right corner. If you are new to forking, please watch this YouTube Guide to get started.

Once forked, click the bright green <> Code button and copy the URL, then run:

git clone <URL_LINK>

Change into the directory with cd <directory-name>.

⬆ Set Upstream

We recommend setting an upstream repo to make pulling and fetching easier:

git remote add upstream https://github.com/reactplay/docs

Check that it was added:

git remote -v

🌴 Create a branch

Create a separate branch for each issue you work on:

git checkout -b <branch-name>

Keep the branch name clear and straightforward.

🔒 Commit and Push

git add .
git commit -m "<message>"
git push -u origin <branch-name>

The message should describe your changes since the last commit.

🙌 Pull Request

Open the forked repo on GitHub, go to the Pull Requests tab and click New Pull Request. Select the base and compare branches carefully — base is the branch you are merging into, compare is the branch you made your changes on. Then click Create Pull Request and wait until we review and merge it.

Until it gets merged, browse ReactPlay and contribute to it.

Troubleshooting Guide

Here are some common issues faced and their solutions:

Issue 1: npm install is not working

  • Solution: Try deleting node_modules and reinstalling dependencies.

Issue 2: Console errors or warnings

  • Solution: Update dependencies or clear the .next cache.

For more details, see our full Troubleshooting Guide.

About

No description, website, or topics provided.

Resources

Code of conduct

Contributing

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Remove or un-stick sticky/fixed headers that block content\n(function() {\n function unstick() {\n document.querySelectorAll('header, nav, [role=\"banner\"], .header, .navbar, .sticky, .fixed-top, [style*=\"position: fixed\"], [style*=\"position:sticky\"]').forEach(function(el) {\n if (el.style.position === 'fixed' || el.style.position === 'sticky' || \n getComputedStyle(el).position === 'fixed' || getComputedStyle(el).position === 'sticky') {\n el.style.position = 'static';\n el.style.top = 'auto';\n el.style.zIndex = 'auto';\n }\n });\n }\n \n unstick();\n \n var observer = new MutationObserver(unstick);\n observer.observe(document.body, { childList: true, subtree: true, attributes: true, attributeFilter: ['style', 'class'] });\n})();", "Kill Sticky Headers"); } } catch(__e) { console.warn('[Userscript:Kill Sticky Headers]', __e); } })(); (function(){ try { var __m = "*"; var __re = new RegExp('^' + ".*" + '
Skip to content

Repository files navigation

ReactPlay Docs

Official documentation for ReactPlay, built with Docora — a Next.js documentation theme.

Check the ReactPlay Official Repository for more information.

What is ReactPlay

ReactPlay

react-play is an open-source web app that helps you learn ReactJS faster with a hands-on practice model. It is a collection of ReactJS projects you can use to learn ReactJS.

Is that all? Nope. You can also create your projects and share them with the world. The best part is that the ReactJS experts will review your project code before it gets part of the ReactPlay app. Isn't that a pure WIN-WIN?

This repository serves as the documentation for ReactPlay. It includes information on how to perform various activities on the platform.

Develop

Requires Node.js 20.9 or later.

npm install
npm run dev

The site runs at http://localhost:3000 and redirects to the default locale at /en.

Build and preview a production bundle:

npm run build
npm run start

Project structure

reactplay-docora/
├── content/ # All documentation, one folder per locale
│ ├── en/
│ │ ├── index.mdx # Landing page (/en)
│ │ └── docs/ # Guides (/en/docs/...)
│ └── bn/ # Bengali translation, same tree
├── app/ # Next.js App Router
│ ├── [locale]/ # Locale layout and content catch-all
│ ├── api/ # Search and assistant routes
│ └── globals.css # Theme stylesheet
├── lib/source.ts # Content source
├── docs.config.ts # Site configuration (nav, footer, i18n, socials)
├── next.config.ts # Next.js configuration
└── public/ # Static assets

Write

Every file under content/ becomes a route:

FileRoute
content/en/index.mdx/en
content/en/docs/1.getting-started/2.contribution-guide.mdx/en/docs/getting-started/contribution-guide
content/bn/docs/1.getting-started/2.contribution-guide.mdx/bn/docs/getting-started/contribution-guide

The numeric prefix sets sidebar order and is stripped from the URL. A folder becomes a sidebar section; its title and icon come from the .navigation.yml beside its pages.

Pages are MDX and can use Docora's MDC components:

---title: Contribution Guidedescription: Where to start contributing to ReactPlay.icon: heart-handshake---
::tip
New to open-source? Follow [this guide](https://opensource.guide/how-to-contribute/) to jumpstart your Open Source journey 🚀
::

Translations

Locales are declared in docs.config.ts. To add one, add it to i18n.locales, copy content/en to content/<code> and translate it — routes, the sidebar and the language switcher follow automatically. Interface strings are overridden per locale under i18n.messages.

🤩 How to contribute to this repo?

You can contribute to this repo in several ways:

  1. Write documentation for the various parts of ReactPlay
  2. Suggest changes to the existing docs
  3. Improve the documentation website

Please read CONTRIBUTING for details on our CODE OF CONDUCT, and the process for submitting pull requests to us.

💡 New to Open Source? Follow this guide to jumpstart your Open Source journey 🚀

🍴 Fork and Clone the Repo

First, fork this repo with the Fork button in the top right corner. If you are new to forking, please watch this YouTube Guide to get started.

Once forked, click the bright green <> Code button and copy the URL, then run:

git clone <URL_LINK>

Change into the directory with cd <directory-name>.

⬆ Set Upstream

We recommend setting an upstream repo to make pulling and fetching easier:

git remote add upstream https://github.com/reactplay/docs

Check that it was added:

git remote -v

🌴 Create a branch

Create a separate branch for each issue you work on:

git checkout -b <branch-name>

Keep the branch name clear and straightforward.

🔒 Commit and Push

git add .
git commit -m "<message>"
git push -u origin <branch-name>

The message should describe your changes since the last commit.

🙌 Pull Request

Open the forked repo on GitHub, go to the Pull Requests tab and click New Pull Request. Select the base and compare branches carefully — base is the branch you are merging into, compare is the branch you made your changes on. Then click Create Pull Request and wait until we review and merge it.

Until it gets merged, browse ReactPlay and contribute to it.

Troubleshooting Guide

Here are some common issues faced and their solutions:

Issue 1: npm install is not working

  • Solution: Try deleting node_modules and reinstalling dependencies.

Issue 2: Console errors or warnings

  • Solution: Update dependencies or clear the .next cache.

For more details, see our full Troubleshooting Guide.

About

No description, website, or topics provided.

Resources

Code of conduct

Contributing

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages

, 'i'); if (__m === '*' || __re.test(location.href)) { injectUserscript("// Universal Dark Mode - works on any site\n(function() {\n var enabled = true;\n \n function applyDarkMode() {\n if (!enabled) return;\n \n // Create style element if it doesn't exist\n var style = document.getElementById('universal-dark-mode-style');\n if (!style) {\n style = document.createElement('style');\n style.id = 'universal-dark-mode-style';\n document.head.appendChild(style);\n }\n \n // Dark mode CSS - inverts colors but preserves images/video\n style.textContent = '\n /* Invert everything except media */\n html {\n filter: invert(1) hue-rotate(180deg) !important;\n background: #1a1a2e !important;\n }\n \n /* Restore images, videos, iframes, canvas */\n img, video, iframe, canvas, svg, picture, [style*=\"background-image\"] {\n filter: invert(1) hue-rotate(180deg) !important;\n }\n \n /* Preserve specific elements that should not be inverted */\n .no-dark-mode, .no-dark-mode *,\n [data-theme=\"light\"], [data-theme=\"light\"],\n .ace_editor, .ace_editor *,\n .CodeMirror, .CodeMirror *,\n .monaco-editor, .monaco-editor *,\n .markdown-body pre, .markdown-body pre *,\n .highlight, .highlight *,\n pre code, pre code * {\n filter: none !important;\n }\n \n /* Fix common UI elements */\n .modal, .popup, .dropdown-menu, .tooltip, .popover {\n filter: invert(1) hue-rotate(180deg) !important;\n background: #2d2d44 !important;\n border-color: #444 !important;\n }\n \n /* Scrollbars */\n ::-webkit-scrollbar { background: #1a1a2e !important; }\n ::-webkit-scrollbar-thumb { background: #444 !important; }\n ::-webkit-scrollbar-thumb:hover { background: #555 !important; }\n \n /* Selection */\n ::selection { background: #4ecdc4 !important; color: #1a1a2e !important; }\n ::-moz-selection { background: #4ecdc4 !important; color: #1a1a2e !important; }\n ';\n }\n \n function removeDarkMode() {\n var style = document.getElementById('universal-dark-mode-style');\n if (style) style.remove();\n }\n \n // Toggle with Alt+Shift+D\n document.addEventListener('keydown', function(e) {\n if (e.altKey && e.shiftKey && e.key === 'D') {\n e.preventDefault();\n enabled = !enabled;\n if (enabled) {\n applyDarkMode();\n console.log('[Universal Dark Mode] Enabled');\n } else {\n removeDarkMode();\n console.log('[Universal Dark Mode] Disabled');\n }\n }\n });\n \n // Apply on load\n applyDarkMode();\n \n // Re-apply on dynamic content\n var observer = new MutationObserver(function(mutations) {\n if (enabled && !document.getElementById('universal-dark-mode-style')) {\n applyDarkMode();\n }\n });\n observer.observe(document.head, { childList: true });\n \n console.log('[Universal Dark Mode] Loaded - Press Alt+Shift+D to toggle');\n})();", "Universal Dark Mode"); } } catch(__e) { console.warn('[Userscript:Universal Dark Mode]', __e); } })(); })();
Skip to content

Repository files navigation

ReactPlay Docs

Official documentation for ReactPlay, built with Docora — a Next.js documentation theme.

Check the ReactPlay Official Repository for more information.

What is ReactPlay

ReactPlay

react-play is an open-source web app that helps you learn ReactJS faster with a hands-on practice model. It is a collection of ReactJS projects you can use to learn ReactJS.

Is that all? Nope. You can also create your projects and share them with the world. The best part is that the ReactJS experts will review your project code before it gets part of the ReactPlay app. Isn't that a pure WIN-WIN?

This repository serves as the documentation for ReactPlay. It includes information on how to perform various activities on the platform.

Develop

Requires Node.js 20.9 or later.

npm install
npm run dev

The site runs at http://localhost:3000 and redirects to the default locale at /en.

Build and preview a production bundle:

npm run build
npm run start

Project structure

reactplay-docora/
├── content/ # All documentation, one folder per locale
│ ├── en/
│ │ ├── index.mdx # Landing page (/en)
│ │ └── docs/ # Guides (/en/docs/...)
│ └── bn/ # Bengali translation, same tree
├── app/ # Next.js App Router
│ ├── [locale]/ # Locale layout and content catch-all
│ ├── api/ # Search and assistant routes
│ └── globals.css # Theme stylesheet
├── lib/source.ts # Content source
├── docs.config.ts # Site configuration (nav, footer, i18n, socials)
├── next.config.ts # Next.js configuration
└── public/ # Static assets

Write

Every file under content/ becomes a route:

FileRoute
content/en/index.mdx/en
content/en/docs/1.getting-started/2.contribution-guide.mdx/en/docs/getting-started/contribution-guide
content/bn/docs/1.getting-started/2.contribution-guide.mdx/bn/docs/getting-started/contribution-guide

The numeric prefix sets sidebar order and is stripped from the URL. A folder becomes a sidebar section; its title and icon come from the .navigation.yml beside its pages.

Pages are MDX and can use Docora's MDC components:

---title: Contribution Guidedescription: Where to start contributing to ReactPlay.icon: heart-handshake---
::tip
New to open-source? Follow [this guide](https://opensource.guide/how-to-contribute/) to jumpstart your Open Source journey 🚀
::

Translations

Locales are declared in docs.config.ts. To add one, add it to i18n.locales, copy content/en to content/<code> and translate it — routes, the sidebar and the language switcher follow automatically. Interface strings are overridden per locale under i18n.messages.

🤩 How to contribute to this repo?

You can contribute to this repo in several ways:

  1. Write documentation for the various parts of ReactPlay
  2. Suggest changes to the existing docs
  3. Improve the documentation website

Please read CONTRIBUTING for details on our CODE OF CONDUCT, and the process for submitting pull requests to us.

💡 New to Open Source? Follow this guide to jumpstart your Open Source journey 🚀

🍴 Fork and Clone the Repo

First, fork this repo with the Fork button in the top right corner. If you are new to forking, please watch this YouTube Guide to get started.

Once forked, click the bright green <> Code button and copy the URL, then run:

git clone <URL_LINK>

Change into the directory with cd <directory-name>.

⬆ Set Upstream

We recommend setting an upstream repo to make pulling and fetching easier:

git remote add upstream https://github.com/reactplay/docs

Check that it was added:

git remote -v

🌴 Create a branch

Create a separate branch for each issue you work on:

git checkout -b <branch-name>

Keep the branch name clear and straightforward.

🔒 Commit and Push

git add .
git commit -m "<message>"
git push -u origin <branch-name>

The message should describe your changes since the last commit.

🙌 Pull Request

Open the forked repo on GitHub, go to the Pull Requests tab and click New Pull Request. Select the base and compare branches carefully — base is the branch you are merging into, compare is the branch you made your changes on. Then click Create Pull Request and wait until we review and merge it.

Until it gets merged, browse ReactPlay and contribute to it.

Troubleshooting Guide

Here are some common issues faced and their solutions:

Issue 1: npm install is not working

  • Solution: Try deleting node_modules and reinstalling dependencies.

Issue 2: Console errors or warnings

  • Solution: Update dependencies or clear the .next cache.

For more details, see our full Troubleshooting Guide.

About

No description, website, or topics provided.

Resources

Code of conduct

Contributing

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages