diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml
index e86d2915c0d59..dfa1583e92245 100644
--- a/.github/workflows/build.yml
+++ b/.github/workflows/build.yml
@@ -136,4 +136,4 @@ jobs:
(matrix.os == 'ubuntu-latest') &&
((github.event_name == 'push') || (github.event_name == 'pull_request_target'))
run: |
- npm run sync-orama
+ cd apps/site && npm run sync-orama
diff --git a/.github/workflows/lighthouse.yml b/.github/workflows/lighthouse.yml
index 049336b7fe4f2..7a4ed817e6728 100644
--- a/.github/workflows/lighthouse.yml
+++ b/.github/workflows/lighthouse.yml
@@ -106,7 +106,7 @@ jobs:
# Run as a separate file so we do not have to inline all of our formatting logic.
# See https://github.com/actions/github-script#run-a-separate-file for more info.
script: |
- const { formatLighthouseResults } = await import('${{github.workspace}}/scripts/lighthouse/index.mjs')
+ const { formatLighthouseResults } = await import('${{github.workspace}}/apps/site/scripts/lighthouse/index.mjs')
await formatLighthouseResults({core})
- name: Add Comment to PR
diff --git a/.github/workflows/lint-and-tests.yml b/.github/workflows/lint-and-tests.yml
index 941adca8e3361..4649c1286eb27 100644
--- a/.github/workflows/lint-and-tests.yml
+++ b/.github/workflows/lint-and-tests.yml
@@ -45,9 +45,8 @@ jobs:
# This step is responsible for providing a reusable string that can be used within other steps and jobs
# that use the `turbo` cli command as a way of easily providing shared arguments to the `turbo` command
id: turborepo_arguments
- # See https://turbo.build/repo/docs/reference/command-line-reference/run#--cache-dir
# See https://turbo.build/repo/docs/reference/command-line-reference/run#--force
- run: echo "turbo_args=--force=true --cache-dir=.turbo/cache" >> "$GITHUB_OUTPUT"
+ run: echo "turbo_args=--force=true" >> "$GITHUB_OUTPUT"
lint:
# This Job should run either on `merge_groups` or `push` events
@@ -126,11 +125,7 @@ jobs:
github.event.pull_request.head.ref != 'chore/crowdin')
# We want to enforce that the actual `turbo@latest` package is used instead of a possible hijack from the user
# the `${{ needs.base.outputs.turbo_args }}` is a string substitution happening from the base job
- run: npx --package=turbo@latest -- turbo lint:js lint:md lint:css prettier ${{ needs.base.outputs.turbo_args }}
-
- - name: Run `tsc build`
- # We want to ensure that the whole codebase is passing and successfully compiles with TypeScript
- run: npx --package=typescript@latest -- tsc --build .
+ run: npx --package=turbo@latest -- turbo lint check-types prettier ${{ needs.base.outputs.turbo_args }}
- name: Save Lint Cache
# We only want to save caches on `push` events or `pull_request_target` events
@@ -227,6 +222,7 @@ jobs:
# sha reference has no stable git tag reference or URL. see https://github.com/chromaui/chromatic-cli/issues/797
uses: chromaui/action@5f6574e351eb055223ae8ea9e1a734d1d695ea9c
with:
+ workingDir: apps/site
buildScriptName: storybook:build
projectToken: ${{ secrets.CHROMATIC_PROJECT_TOKEN }}
exitOnceUploaded: true
diff --git a/.husky/pre-commit b/.husky/pre-commit
index 98819fd136e06..0b30eeabf5b20 100755
--- a/.husky/pre-commit
+++ b/.husky/pre-commit
@@ -5,4 +5,4 @@
npx lint-staged
# verify typescript staged files
-npx tsc --build .
+npx tsc --build apps/site
diff --git a/.lintstagedrc.json b/.lintstagedrc.json
index 63f877513b56b..4b80a42c97bcb 100644
--- a/.lintstagedrc.json
+++ b/.lintstagedrc.json
@@ -1,5 +1,8 @@
{
- "**/*.{js,mjs,ts,tsx,md,mdx}": ["eslint --fix", "prettier --check --write"],
+ "**/*.{js,mjs,ts,tsx,md,mdx}": [
+ "turbo run lint:lint-staged --",
+ "prettier --check --write"
+ ],
"**/*.css": ["stylelint --allow-empty-input", "prettier --write"],
"**/*.{json,yml}": ["prettier --check --write"]
}
diff --git a/COLLABORATOR_GUIDE.md b/COLLABORATOR_GUIDE.md
index ddb826925700b..be844b55769b7 100644
--- a/COLLABORATOR_GUIDE.md
+++ b/COLLABORATOR_GUIDE.md
@@ -96,41 +96,45 @@ The Website also uses several other Open Source libraries (not limited to) liste
### Structure of this Repository
-- React Components are defined on `/components`
-- React Templates are defined on `/layouts`
-- Global Stylesheets are declared on `/styles`
+⚠️ The repository is actively under migration to a multi-package workspace.
+Locations are subject to change. (If you are someone updating these paths,
+please document those changes here.)
+
+- React Components are defined on `apps/site/components`
+- React Templates are defined on `apps/site/layouts`
+- Global Stylesheets are declared on `apps/site/styles`
- Styles are done with [PostCSS][]
-- Public files are stored on `/public`
- - Static Images, JavaScript files, and others are stored within `/public/static`
-- Internationalisation is done on `/i18n`
- - React Localisation Data is stored within `/i18n/locales`
+- Public files are stored on `apps/site/public`
+ - Static Images, JavaScript files, and others are stored within `apps/site/public/static`
+- Internationalisation is done on `apps/site/i18n`
+ - React Localisation Data is stored within `apps/site/i18n/locales`
- We use the [ICU Message Syntax](https://formatjs.io/docs/core-concepts/icu-syntax/) for Translations
- - Configuration for Locales is done within `/i18n/config.json`
-- Website Content is defined within `/pages`
- - Initial development usually happens in English: `/pages/en`
- - Localized versions of `/pages/en` are done within `/pages/{localeCode}`
+ - Configuration for Locales is done within `apps/site/i18n/config.json`
+- Website Content is defined within `apps/site/pages`
+ - Initial development usually happens in English: `apps/site/pages/en`
+ - Localized versions of `/pages/en` are done within `apps/site/pages/{localeCode}`
- All content is in Markdown and is per locale.
- The top of each Markdown file is a YAML (Frontmatter) block for page-specific localization information passed to various templates.
- - The bulk of the Markdown content for each page is referenced as `{children}` on their respective JSX Layout (`layouts/`)
-- Multi-Purpose React Hooks are defined on `/hooks`
-- Multi-Purpose TypeScript definitions are defined on `/types`
-- React Context Providers are defined on `/providers`
-- Build-time Data Fetching Scripts are defined on `/next-data`
+ - The bulk of the Markdown content for each page is referenced as `{children}` on their respective JSX Layout (`apps/site/layouts/`)
+- Multi-Purpose React Hooks are defined on `apps/site/hooks`
+- Multi-Purpose TypeScript definitions are defined on `apps/site/types`
+- React Context Providers are defined on `apps/site/providers`
+- Build-time Data Fetching Scripts are defined on `apps/site/next-data`
- Used for Node.js Release data fetching
- Generation of build-time indexes such as blog data
-- Multi-Purpose Scripts are stored within `/scripts`
+- Multi-Purpose Scripts are stored within `apps/site/scripts`
- Such as Node.js Release Blog Post generation
-- Storybook Configuration is done within `/.storybook`
+- Storybook Configuration is done within `apps/site/.storybook`
- We use an almost out-of-the-box Storybook Experience with a few extra customisations
### Adding new Pages
1. Create new page content including the layout, title and copy.
-2. Update the relevant `/layout` to add a link to the new page.
+2. Update the relevant `apps/site/layout` to add a link to the new page.
#### Create the page content
-Create a new markdown file in `/pages/en`.
+Create a new markdown file in `apps/site/pages/en`.
At the top of the markdown file, within the Markdown Frontmatter, set a page the title and layout.
@@ -192,7 +196,7 @@ Finally, if you're unfamiliar with how to use Tailwind or how to use Tailwind wi
- We require that you define one Tailwind Token per line, just as shown on the example above, since this improves readability
- Only write CSS within CSS Modules, avoid writing CSS within JavaScript files
- We recommend creating mixins for reusable animations, effects and more
- - You can create Mixins within the `styles/mixins` folder
+ - You can create Mixins within the `apps/site/styles/mixins` folder
> \[!NOTE]\
> Tailwind is already configured for this repository. You don't need to import any Tailwind module within your CSS module.\
@@ -205,11 +209,11 @@ Finally, if you're unfamiliar with how to use Tailwind or how to use Tailwind wi
### Best practices when creating a Component
-- All React Components should be placed within the `components` folder.
+- All React Components should be placed within the `apps/site/components` folder.
- Each Component should be placed, whenever possible, within a sub-folder, which we call the "Domain" of the Component
- The domain represents where these Components belong to or where they will be used.
- For example, Components used within Article Pages or that are part of the structure of an Article or the Article Layouts,
- should be placed within `components/Article`
+ should be placed within `apps/site/components/Article`
- Each component should have its folder with the name of the Component
- The structure of each component folder follows the following template:
```text
@@ -332,13 +336,13 @@ This is to ensure that the Website is always available and that we do not depend
#### What is `next.dynamic.mjs`?
Our whole Website uses a custom renderer for rendering the pages.
-As you might have seen, within the `pages` directory we have [Next.js Dynamic Route](https://nextjs.org/docs/pages/building-your-application/routing/dynamic-routes) named `[...path].tsx` that matches against all possible routes of the Website.
+As you might have seen, within the `apps/site/pages` directory we have [Next.js Dynamic Route](https://nextjs.org/docs/pages/building-your-application/routing/dynamic-routes) named `[...path].tsx` that matches against all possible routes of the Website.
-This means that each `.md(x)` file within `pages/` is not rendered by Next.js regular App Tree (`pages/_document.tsx` and `pages/_app.tsx`) but a custom render tree.
+This means that each `.md(x)` file within `apps/site/pages/` is not rendered by Next.js regular App Tree (`apps/site/pages/_document.tsx` and `apps/site/pages/_app.tsx`) but a custom render tree.
This custom render uses `getStaticPaths` and [Incremental Static Generation](https://nextjs.org/docs/pages/building-your-application/data-fetching/incremental-static-regeneration) to generate the full list of supported pages of the Website.
For example, this allows us to generate Localized Pages for every page that is not translated, by telling Next.js to create a localised path.
-`next.dynamic.mjs` is responsible for getting a full list of the source pages (`pages/en`) and identifying which pages have been translated.
+`next.dynamic.mjs` is responsible for getting a full list of the source pages (`apps/site/pages/en`) and identifying which pages have been translated.
Non-translated pages will have their Localized contexts and translated React message-bags (`next-intl`) but the content will be the same as the source page (English).
Whereas localized pages will have localized context and content.
diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md
index 88513293b0d01..8faae1e317af5 100644
--- a/CONTRIBUTING.md
+++ b/CONTRIBUTING.md
@@ -91,7 +91,7 @@ for getting things done and landing your contribution.
```bash
npm ci # installs this project's dependencies
- npx turbo dev # starts a development environment
+ npm run dev # starts a development environment
```
7. Perform your changes. In case you're unfamiliar with the structure of this repository, we recommend a read on the [Collaborator Guide](./COLLABORATOR_GUIDE.md)
@@ -103,10 +103,10 @@ for getting things done and landing your contribution.
git merge upstream/main
```
-9. Run `npx turbo format` to confirm that linting and formatting are passing.
+9. Run `npm run format` to confirm that linting and formatting are passing.
```bash
- npx turbo format
+ npm run format
```
10. Once you're happy with your changes, add and commit them to your branch, then push the branch to your fork.
@@ -137,28 +137,28 @@ This repository contains several scripts and commands for performing numerous ta
Commands for Running & Building the Website
-- `npx turbo dev` runs Next.js's Local Development Server, listening by default on `http://localhost:3000/`.
-- `npx turbo build` builds the Application on Production mode. The output is by default within `.next` folder.
+- `npm run dev` runs Next.js's Local Development Server, listening by default on `http://localhost:3000/`.
+- `npm run build` builds the Application on Production mode. The output is by default within `.next` folder.
- This is used for the Node.js Vercel Deployments (Preview & Production)
- `npx turbo deploy` builds the Application on Export Production Mode. The output is by default within `build` folder.
- This is used for the Node.js Legacy Website Server (DigitalOcean)
-- `npx turbo start` starts a web server running serving the built content from `npx turbo build`
+- `npx turbo start` starts a web server running serving the built content from `npm run build`
Commands for Maintenance Tasks and Tests
-- `npx turbo lint` runs the linter for all the js files.
- - `npx turbo lint:fix` attempts to fix any linting errors
-- `npx turbo prettier` runs the prettier for all the js files.
- - `npx turbo prettier:fix` attempts to fix any style errors
-- `npx turbo format` formats and fixes the whole codebase
-- `npx turbo scripts:release-post` generates a release post for the current release
- - **Usage:** `npx turbo scripts:release-post -- --version=vXX.X.X --force`
+- `npm run lint` runs the linter for all files.
+ - `npm run lint:fix` attempts to fix any linting errors
+- `npm run prettier` runs the prettier for all the js files.
+ - `npm run prettier:fix` attempts to fix any style errors
+- `npx turbo format` formats and fixes lints for the whole codebase
+- `npm run scripts:release-post` in the `apps/site` directory generates a release post for the current release
+ - **Usage:** `npm run scripts:release-post -- --version=vXX.X.X --force`
- `npx turbo storybook` starts Storybook's local server
- `npx turbo storybook:build` builds Storybook as a static web application for publishing
-- `npx turbo test` runs all tests locally
+- `npm run test` runs all tests locally
- `npx turbo test:unit` runs jest (unit-tests) locally
diff --git a/.eslintrc.json b/apps/site/.eslintrc.json
similarity index 94%
rename from .eslintrc.json
rename to apps/site/.eslintrc.json
index 81546edb05bb8..49124878b6110 100644
--- a/.eslintrc.json
+++ b/apps/site/.eslintrc.json
@@ -1,5 +1,6 @@
{
"extends": "prettier",
+ "ignorePatterns": ["storybook-static/**"],
"overrides": [
{
"files": ["public/**/*.js"],
@@ -19,6 +20,7 @@
"plugins": ["import"],
"extends": ["eslint:recommended", "next", "next/core-web-vitals"],
"rules": {
+ "import/namespace": "off",
"import/order": [
"error",
{
@@ -48,6 +50,10 @@
"plugin:import/typescript"
],
"parser": "@typescript-eslint/parser",
+ "parserOptions": {
+ "project": true,
+ "tsconfigRootDir": "."
+ },
"rules": {
"@typescript-eslint/consistent-type-imports": "error",
"@typescript-eslint/array-type": ["error", { "default": "generic" }],
diff --git a/.postcssrc.json b/apps/site/.postcssrc.json
similarity index 100%
rename from .postcssrc.json
rename to apps/site/.postcssrc.json
diff --git a/.remarkrc.json b/apps/site/.remarkrc.json
similarity index 100%
rename from .remarkrc.json
rename to apps/site/.remarkrc.json
diff --git a/.storybook/constants.ts b/apps/site/.storybook/constants.ts
similarity index 100%
rename from .storybook/constants.ts
rename to apps/site/.storybook/constants.ts
diff --git a/.storybook/main.ts b/apps/site/.storybook/main.ts
similarity index 100%
rename from .storybook/main.ts
rename to apps/site/.storybook/main.ts
diff --git a/.storybook/preview.tsx b/apps/site/.storybook/preview.tsx
similarity index 100%
rename from .storybook/preview.tsx
rename to apps/site/.storybook/preview.tsx
diff --git a/.stylelintignore b/apps/site/.stylelintignore
similarity index 100%
rename from .stylelintignore
rename to apps/site/.stylelintignore
diff --git a/.stylelintrc.mjs b/apps/site/.stylelintrc.mjs
similarity index 100%
rename from .stylelintrc.mjs
rename to apps/site/.stylelintrc.mjs
diff --git a/apps/site/README.md b/apps/site/README.md
new file mode 100644
index 0000000000000..49dcc7a74dcae
--- /dev/null
+++ b/apps/site/README.md
@@ -0,0 +1 @@
+# Node.js website
diff --git a/app/[locale]/[[...path]]/page.tsx b/apps/site/app/[locale]/[[...path]]/page.tsx
similarity index 100%
rename from app/[locale]/[[...path]]/page.tsx
rename to apps/site/app/[locale]/[[...path]]/page.tsx
diff --git a/app/[locale]/error.tsx b/apps/site/app/[locale]/error.tsx
similarity index 100%
rename from app/[locale]/error.tsx
rename to apps/site/app/[locale]/error.tsx
diff --git a/app/[locale]/feed/[feed]/route.ts b/apps/site/app/[locale]/feed/[feed]/route.ts
similarity index 100%
rename from app/[locale]/feed/[feed]/route.ts
rename to apps/site/app/[locale]/feed/[feed]/route.ts
diff --git a/app/[locale]/layout.tsx b/apps/site/app/[locale]/layout.tsx
similarity index 100%
rename from app/[locale]/layout.tsx
rename to apps/site/app/[locale]/layout.tsx
diff --git a/app/[locale]/next-data/api-data/route.ts b/apps/site/app/[locale]/next-data/api-data/route.ts
similarity index 100%
rename from app/[locale]/next-data/api-data/route.ts
rename to apps/site/app/[locale]/next-data/api-data/route.ts
diff --git a/app/[locale]/next-data/blog-data/[category]/[page]/route.ts b/apps/site/app/[locale]/next-data/blog-data/[category]/[page]/route.ts
similarity index 100%
rename from app/[locale]/next-data/blog-data/[category]/[page]/route.ts
rename to apps/site/app/[locale]/next-data/blog-data/[category]/[page]/route.ts
diff --git a/app/[locale]/next-data/changelog-data/[version]/route.ts b/apps/site/app/[locale]/next-data/changelog-data/[version]/route.ts
similarity index 100%
rename from app/[locale]/next-data/changelog-data/[version]/route.ts
rename to apps/site/app/[locale]/next-data/changelog-data/[version]/route.ts
diff --git a/app/[locale]/next-data/og/route.tsx b/apps/site/app/[locale]/next-data/og/route.tsx
similarity index 100%
rename from app/[locale]/next-data/og/route.tsx
rename to apps/site/app/[locale]/next-data/og/route.tsx
diff --git a/app/[locale]/next-data/page-data/route.ts b/apps/site/app/[locale]/next-data/page-data/route.ts
similarity index 100%
rename from app/[locale]/next-data/page-data/route.ts
rename to apps/site/app/[locale]/next-data/page-data/route.ts
diff --git a/app/[locale]/next-data/release-data/route.ts b/apps/site/app/[locale]/next-data/release-data/route.ts
similarity index 100%
rename from app/[locale]/next-data/release-data/route.ts
rename to apps/site/app/[locale]/next-data/release-data/route.ts
diff --git a/app/[locale]/not-found.tsx b/apps/site/app/[locale]/not-found.tsx
similarity index 100%
rename from app/[locale]/not-found.tsx
rename to apps/site/app/[locale]/not-found.tsx
diff --git a/app/global-error.tsx b/apps/site/app/global-error.tsx
similarity index 100%
rename from app/global-error.tsx
rename to apps/site/app/global-error.tsx
diff --git a/app/robots.ts b/apps/site/app/robots.ts
similarity index 100%
rename from app/robots.ts
rename to apps/site/app/robots.ts
diff --git a/app/sitemap.ts b/apps/site/app/sitemap.ts
similarity index 100%
rename from app/sitemap.ts
rename to apps/site/app/sitemap.ts
diff --git a/authors.json b/apps/site/authors.json
similarity index 100%
rename from authors.json
rename to apps/site/authors.json
diff --git a/client-context.ts b/apps/site/client-context.ts
similarity index 93%
rename from client-context.ts
rename to apps/site/client-context.ts
index 8cbaf094ce217..0ee4c5e38d04f 100644
--- a/client-context.ts
+++ b/apps/site/client-context.ts
@@ -1,8 +1,7 @@
import { cache } from 'react';
import type { ClientSharedServerContext } from '@/types';
-
-import { assignClientContext } from './util/assignClientContext';
+import { assignClientContext } from '@/util/assignClientContext';
// This allows us to have Server-Side Context's of the shared "contextual" data
// which includes the frontmatter, the current pathname from the dynamic segments
diff --git a/components/Blog/BlogHeader/__tests__/index.test.mjs b/apps/site/components/Blog/BlogHeader/__tests__/index.test.mjs
similarity index 100%
rename from components/Blog/BlogHeader/__tests__/index.test.mjs
rename to apps/site/components/Blog/BlogHeader/__tests__/index.test.mjs
diff --git a/components/Blog/BlogHeader/index.module.css b/apps/site/components/Blog/BlogHeader/index.module.css
similarity index 100%
rename from components/Blog/BlogHeader/index.module.css
rename to apps/site/components/Blog/BlogHeader/index.module.css
diff --git a/components/Blog/BlogHeader/index.stories.tsx b/apps/site/components/Blog/BlogHeader/index.stories.tsx
similarity index 100%
rename from components/Blog/BlogHeader/index.stories.tsx
rename to apps/site/components/Blog/BlogHeader/index.stories.tsx
diff --git a/components/Blog/BlogHeader/index.tsx b/apps/site/components/Blog/BlogHeader/index.tsx
similarity index 100%
rename from components/Blog/BlogHeader/index.tsx
rename to apps/site/components/Blog/BlogHeader/index.tsx
diff --git a/components/Common/ActiveLink/__tests__/index.test.mjs b/apps/site/components/Common/ActiveLink/__tests__/index.test.mjs
similarity index 100%
rename from components/Common/ActiveLink/__tests__/index.test.mjs
rename to apps/site/components/Common/ActiveLink/__tests__/index.test.mjs
diff --git a/components/Common/ActiveLink/index.tsx b/apps/site/components/Common/ActiveLink/index.tsx
similarity index 100%
rename from components/Common/ActiveLink/index.tsx
rename to apps/site/components/Common/ActiveLink/index.tsx
diff --git a/components/Common/AvatarGroup/Avatar/index.module.css b/apps/site/components/Common/AvatarGroup/Avatar/index.module.css
similarity index 100%
rename from components/Common/AvatarGroup/Avatar/index.module.css
rename to apps/site/components/Common/AvatarGroup/Avatar/index.module.css
diff --git a/components/Common/AvatarGroup/Avatar/index.stories.tsx b/apps/site/components/Common/AvatarGroup/Avatar/index.stories.tsx
similarity index 100%
rename from components/Common/AvatarGroup/Avatar/index.stories.tsx
rename to apps/site/components/Common/AvatarGroup/Avatar/index.stories.tsx
diff --git a/components/Common/AvatarGroup/Avatar/index.tsx b/apps/site/components/Common/AvatarGroup/Avatar/index.tsx
similarity index 100%
rename from components/Common/AvatarGroup/Avatar/index.tsx
rename to apps/site/components/Common/AvatarGroup/Avatar/index.tsx
diff --git a/components/Common/AvatarGroup/__tests__/index.test.mjs b/apps/site/components/Common/AvatarGroup/__tests__/index.test.mjs
similarity index 100%
rename from components/Common/AvatarGroup/__tests__/index.test.mjs
rename to apps/site/components/Common/AvatarGroup/__tests__/index.test.mjs
diff --git a/components/Common/AvatarGroup/index.module.css b/apps/site/components/Common/AvatarGroup/index.module.css
similarity index 100%
rename from components/Common/AvatarGroup/index.module.css
rename to apps/site/components/Common/AvatarGroup/index.module.css
diff --git a/components/Common/AvatarGroup/index.stories.tsx b/apps/site/components/Common/AvatarGroup/index.stories.tsx
similarity index 100%
rename from components/Common/AvatarGroup/index.stories.tsx
rename to apps/site/components/Common/AvatarGroup/index.stories.tsx
diff --git a/components/Common/AvatarGroup/index.tsx b/apps/site/components/Common/AvatarGroup/index.tsx
similarity index 100%
rename from components/Common/AvatarGroup/index.tsx
rename to apps/site/components/Common/AvatarGroup/index.tsx
diff --git a/components/Common/Badge/index.module.css b/apps/site/components/Common/Badge/index.module.css
similarity index 100%
rename from components/Common/Badge/index.module.css
rename to apps/site/components/Common/Badge/index.module.css
diff --git a/components/Common/Badge/index.stories.tsx b/apps/site/components/Common/Badge/index.stories.tsx
similarity index 100%
rename from components/Common/Badge/index.stories.tsx
rename to apps/site/components/Common/Badge/index.stories.tsx
diff --git a/components/Common/Badge/index.tsx b/apps/site/components/Common/Badge/index.tsx
similarity index 100%
rename from components/Common/Badge/index.tsx
rename to apps/site/components/Common/Badge/index.tsx
diff --git a/components/Common/Banner/index.module.css b/apps/site/components/Common/Banner/index.module.css
similarity index 100%
rename from components/Common/Banner/index.module.css
rename to apps/site/components/Common/Banner/index.module.css
diff --git a/components/Common/Banner/index.stories.tsx b/apps/site/components/Common/Banner/index.stories.tsx
similarity index 100%
rename from components/Common/Banner/index.stories.tsx
rename to apps/site/components/Common/Banner/index.stories.tsx
diff --git a/components/Common/Banner/index.tsx b/apps/site/components/Common/Banner/index.tsx
similarity index 100%
rename from components/Common/Banner/index.tsx
rename to apps/site/components/Common/Banner/index.tsx
diff --git a/components/Common/Blockquote/index.module.css b/apps/site/components/Common/Blockquote/index.module.css
similarity index 89%
rename from components/Common/Blockquote/index.module.css
rename to apps/site/components/Common/Blockquote/index.module.css
index 34835ddd92770..410802f9cb90f 100644
--- a/components/Common/Blockquote/index.module.css
+++ b/apps/site/components/Common/Blockquote/index.module.css
@@ -16,8 +16,8 @@
dark:text-white;
& cite {
- @apply text-base
- font-regular
+ @apply font-regular
+ text-base
not-italic;
&::before {
diff --git a/components/Common/Blockquote/index.stories.tsx b/apps/site/components/Common/Blockquote/index.stories.tsx
similarity index 100%
rename from components/Common/Blockquote/index.stories.tsx
rename to apps/site/components/Common/Blockquote/index.stories.tsx
diff --git a/components/Common/Blockquote/index.tsx b/apps/site/components/Common/Blockquote/index.tsx
similarity index 100%
rename from components/Common/Blockquote/index.tsx
rename to apps/site/components/Common/Blockquote/index.tsx
diff --git a/components/Common/BlogPostCard/__tests__/index.test.mjs b/apps/site/components/Common/BlogPostCard/__tests__/index.test.mjs
similarity index 100%
rename from components/Common/BlogPostCard/__tests__/index.test.mjs
rename to apps/site/components/Common/BlogPostCard/__tests__/index.test.mjs
diff --git a/components/Common/BlogPostCard/index.module.css b/apps/site/components/Common/BlogPostCard/index.module.css
similarity index 100%
rename from components/Common/BlogPostCard/index.module.css
rename to apps/site/components/Common/BlogPostCard/index.module.css
diff --git a/components/Common/BlogPostCard/index.stories.tsx b/apps/site/components/Common/BlogPostCard/index.stories.tsx
similarity index 100%
rename from components/Common/BlogPostCard/index.stories.tsx
rename to apps/site/components/Common/BlogPostCard/index.stories.tsx
diff --git a/components/Common/BlogPostCard/index.tsx b/apps/site/components/Common/BlogPostCard/index.tsx
similarity index 100%
rename from components/Common/BlogPostCard/index.tsx
rename to apps/site/components/Common/BlogPostCard/index.tsx
diff --git a/components/Common/Breadcrumbs/BreadcrumbHomeLink/index.module.css b/apps/site/components/Common/Breadcrumbs/BreadcrumbHomeLink/index.module.css
similarity index 100%
rename from components/Common/Breadcrumbs/BreadcrumbHomeLink/index.module.css
rename to apps/site/components/Common/Breadcrumbs/BreadcrumbHomeLink/index.module.css
diff --git a/components/Common/Breadcrumbs/BreadcrumbHomeLink/index.tsx b/apps/site/components/Common/Breadcrumbs/BreadcrumbHomeLink/index.tsx
similarity index 100%
rename from components/Common/Breadcrumbs/BreadcrumbHomeLink/index.tsx
rename to apps/site/components/Common/Breadcrumbs/BreadcrumbHomeLink/index.tsx
diff --git a/components/Common/Breadcrumbs/BreadcrumbItem/index.module.css b/apps/site/components/Common/Breadcrumbs/BreadcrumbItem/index.module.css
similarity index 100%
rename from components/Common/Breadcrumbs/BreadcrumbItem/index.module.css
rename to apps/site/components/Common/Breadcrumbs/BreadcrumbItem/index.module.css
diff --git a/components/Common/Breadcrumbs/BreadcrumbItem/index.tsx b/apps/site/components/Common/Breadcrumbs/BreadcrumbItem/index.tsx
similarity index 100%
rename from components/Common/Breadcrumbs/BreadcrumbItem/index.tsx
rename to apps/site/components/Common/Breadcrumbs/BreadcrumbItem/index.tsx
diff --git a/components/Common/Breadcrumbs/BreadcrumbLink/index.module.css b/apps/site/components/Common/Breadcrumbs/BreadcrumbLink/index.module.css
similarity index 100%
rename from components/Common/Breadcrumbs/BreadcrumbLink/index.module.css
rename to apps/site/components/Common/Breadcrumbs/BreadcrumbLink/index.module.css
diff --git a/components/Common/Breadcrumbs/BreadcrumbLink/index.tsx b/apps/site/components/Common/Breadcrumbs/BreadcrumbLink/index.tsx
similarity index 100%
rename from components/Common/Breadcrumbs/BreadcrumbLink/index.tsx
rename to apps/site/components/Common/Breadcrumbs/BreadcrumbLink/index.tsx
diff --git a/components/Common/Breadcrumbs/BreadcrumbRoot/index.module.css b/apps/site/components/Common/Breadcrumbs/BreadcrumbRoot/index.module.css
similarity index 100%
rename from components/Common/Breadcrumbs/BreadcrumbRoot/index.module.css
rename to apps/site/components/Common/Breadcrumbs/BreadcrumbRoot/index.module.css
diff --git a/components/Common/Breadcrumbs/BreadcrumbRoot/index.tsx b/apps/site/components/Common/Breadcrumbs/BreadcrumbRoot/index.tsx
similarity index 100%
rename from components/Common/Breadcrumbs/BreadcrumbRoot/index.tsx
rename to apps/site/components/Common/Breadcrumbs/BreadcrumbRoot/index.tsx
diff --git a/components/Common/Breadcrumbs/BreadcrumbTruncatedItem/index.tsx b/apps/site/components/Common/Breadcrumbs/BreadcrumbTruncatedItem/index.tsx
similarity index 100%
rename from components/Common/Breadcrumbs/BreadcrumbTruncatedItem/index.tsx
rename to apps/site/components/Common/Breadcrumbs/BreadcrumbTruncatedItem/index.tsx
diff --git a/components/Common/Breadcrumbs/index.stories.tsx b/apps/site/components/Common/Breadcrumbs/index.stories.tsx
similarity index 100%
rename from components/Common/Breadcrumbs/index.stories.tsx
rename to apps/site/components/Common/Breadcrumbs/index.stories.tsx
diff --git a/components/Common/Breadcrumbs/index.tsx b/apps/site/components/Common/Breadcrumbs/index.tsx
similarity index 100%
rename from components/Common/Breadcrumbs/index.tsx
rename to apps/site/components/Common/Breadcrumbs/index.tsx
diff --git a/components/Common/Button/index.module.css b/apps/site/components/Common/Button/index.module.css
similarity index 96%
rename from components/Common/Button/index.module.css
rename to apps/site/components/Common/Button/index.module.css
index 2b9071dcb1e0c..1c12b1040b718 100644
--- a/components/Common/Button/index.module.css
+++ b/apps/site/components/Common/Button/index.module.css
@@ -1,9 +1,9 @@
.button {
- @apply relative
+ @apply px-4.5
+ relative
inline-flex
items-center
gap-2
- px-4.5
py-2.5
text-center
font-semibold;
@@ -95,7 +95,8 @@
shadow-sm;
&::before {
- @apply absolute
+ @apply bg-gradient-glow-backdrop
+ absolute
left-0
right-0
top-0
@@ -103,7 +104,6 @@
mx-auto
h-full
w-full
- bg-gradient-glow-backdrop
opacity-30
content-[''];
}
diff --git a/components/Common/Button/index.stories.tsx b/apps/site/components/Common/Button/index.stories.tsx
similarity index 100%
rename from components/Common/Button/index.stories.tsx
rename to apps/site/components/Common/Button/index.stories.tsx
diff --git a/components/Common/Button/index.tsx b/apps/site/components/Common/Button/index.tsx
similarity index 100%
rename from components/Common/Button/index.tsx
rename to apps/site/components/Common/Button/index.tsx
diff --git a/components/Common/CodeBox/index.module.css b/apps/site/components/Common/CodeBox/index.module.css
similarity index 93%
rename from components/Common/CodeBox/index.module.css
rename to apps/site/components/Common/CodeBox/index.module.css
index 74221978d5721..929618d231ff2 100644
--- a/components/Common/CodeBox/index.module.css
+++ b/apps/site/components/Common/CodeBox/index.module.css
@@ -10,13 +10,13 @@
p-4;
& > code {
- @apply grid
+ @apply font-ibm-plex-mono
+ font-regular
+ grid
overflow-x-auto
bg-transparent
p-0
- font-ibm-plex-mono
text-sm
- font-regular
leading-snug
text-neutral-400
[counter-reset:line];
@@ -32,13 +32,13 @@
}
&:not(:empty:last-child)::after {
- @apply absolute
+ @apply w-4.5
+ font-ibm-plex-mono
+ absolute
left-0
top-0
mr-4
- w-4.5
text-right
- font-ibm-plex-mono
text-neutral-600
[content:counter(line)]
[counter-increment:line];
diff --git a/components/Common/CodeBox/index.stories.tsx b/apps/site/components/Common/CodeBox/index.stories.tsx
similarity index 100%
rename from components/Common/CodeBox/index.stories.tsx
rename to apps/site/components/Common/CodeBox/index.stories.tsx
diff --git a/components/Common/CodeBox/index.tsx b/apps/site/components/Common/CodeBox/index.tsx
similarity index 100%
rename from components/Common/CodeBox/index.tsx
rename to apps/site/components/Common/CodeBox/index.tsx
diff --git a/components/Common/CodeTabs/index.module.css b/apps/site/components/Common/CodeTabs/index.module.css
similarity index 100%
rename from components/Common/CodeTabs/index.module.css
rename to apps/site/components/Common/CodeTabs/index.module.css
diff --git a/components/Common/CodeTabs/index.stories.tsx b/apps/site/components/Common/CodeTabs/index.stories.tsx
similarity index 100%
rename from components/Common/CodeTabs/index.stories.tsx
rename to apps/site/components/Common/CodeTabs/index.stories.tsx
diff --git a/components/Common/CodeTabs/index.tsx b/apps/site/components/Common/CodeTabs/index.tsx
similarity index 100%
rename from components/Common/CodeTabs/index.tsx
rename to apps/site/components/Common/CodeTabs/index.tsx
diff --git a/components/Common/CrossLink/index.module.css b/apps/site/components/Common/CrossLink/index.module.css
similarity index 100%
rename from components/Common/CrossLink/index.module.css
rename to apps/site/components/Common/CrossLink/index.module.css
diff --git a/components/Common/CrossLink/index.stories.tsx b/apps/site/components/Common/CrossLink/index.stories.tsx
similarity index 100%
rename from components/Common/CrossLink/index.stories.tsx
rename to apps/site/components/Common/CrossLink/index.stories.tsx
diff --git a/components/Common/CrossLink/index.tsx b/apps/site/components/Common/CrossLink/index.tsx
similarity index 100%
rename from components/Common/CrossLink/index.tsx
rename to apps/site/components/Common/CrossLink/index.tsx
diff --git a/components/Common/FormattedTime.tsx b/apps/site/components/Common/FormattedTime.tsx
similarity index 100%
rename from components/Common/FormattedTime.tsx
rename to apps/site/components/Common/FormattedTime.tsx
diff --git a/components/Common/GlowingBackdrop/index.module.css b/apps/site/components/Common/GlowingBackdrop/index.module.css
similarity index 100%
rename from components/Common/GlowingBackdrop/index.module.css
rename to apps/site/components/Common/GlowingBackdrop/index.module.css
diff --git a/components/Common/GlowingBackdrop/index.stories.tsx b/apps/site/components/Common/GlowingBackdrop/index.stories.tsx
similarity index 100%
rename from components/Common/GlowingBackdrop/index.stories.tsx
rename to apps/site/components/Common/GlowingBackdrop/index.stories.tsx
diff --git a/components/Common/GlowingBackdrop/index.tsx b/apps/site/components/Common/GlowingBackdrop/index.tsx
similarity index 100%
rename from components/Common/GlowingBackdrop/index.tsx
rename to apps/site/components/Common/GlowingBackdrop/index.tsx
diff --git a/components/Common/LanguageDropDown/index.module.css b/apps/site/components/Common/LanguageDropDown/index.module.css
similarity index 100%
rename from components/Common/LanguageDropDown/index.module.css
rename to apps/site/components/Common/LanguageDropDown/index.module.css
diff --git a/components/Common/LanguageDropDown/index.stories.tsx b/apps/site/components/Common/LanguageDropDown/index.stories.tsx
similarity index 100%
rename from components/Common/LanguageDropDown/index.stories.tsx
rename to apps/site/components/Common/LanguageDropDown/index.stories.tsx
diff --git a/components/Common/LanguageDropDown/index.tsx b/apps/site/components/Common/LanguageDropDown/index.tsx
similarity index 100%
rename from components/Common/LanguageDropDown/index.tsx
rename to apps/site/components/Common/LanguageDropDown/index.tsx
diff --git a/components/Common/LinkTabs/index.module.css b/apps/site/components/Common/LinkTabs/index.module.css
similarity index 79%
rename from components/Common/LinkTabs/index.module.css
rename to apps/site/components/Common/LinkTabs/index.module.css
index 19f425c0b6713..c8f766392b409 100644
--- a/components/Common/LinkTabs/index.module.css
+++ b/apps/site/components/Common/LinkTabs/index.module.css
@@ -1,13 +1,13 @@
.tabsList {
- @apply mb-6
+ @apply font-open-sans
+ max-xs:hidden
+ mb-6
mt-10
flex
gap-2
border-b
border-b-neutral-200
- font-open-sans
- dark:border-b-neutral-800
- max-xs:hidden;
+ dark:border-b-neutral-800;
.tabsTrigger {
@apply border-b-2
@@ -33,9 +33,9 @@
md:hidden;
> span {
- @apply my-6
+ @apply max-xs:flex
+ my-6
hidden
- w-full
- max-xs:flex;
+ w-full;
}
}
diff --git a/components/Common/LinkTabs/index.stories.tsx b/apps/site/components/Common/LinkTabs/index.stories.tsx
similarity index 100%
rename from components/Common/LinkTabs/index.stories.tsx
rename to apps/site/components/Common/LinkTabs/index.stories.tsx
diff --git a/components/Common/LinkTabs/index.tsx b/apps/site/components/Common/LinkTabs/index.tsx
similarity index 100%
rename from components/Common/LinkTabs/index.tsx
rename to apps/site/components/Common/LinkTabs/index.tsx
diff --git a/components/Common/NodejsLogo/index.module.css b/apps/site/components/Common/NodejsLogo/index.module.css
similarity index 100%
rename from components/Common/NodejsLogo/index.module.css
rename to apps/site/components/Common/NodejsLogo/index.module.css
diff --git a/components/Common/NodejsLogo/index.stories.tsx b/apps/site/components/Common/NodejsLogo/index.stories.tsx
similarity index 100%
rename from components/Common/NodejsLogo/index.stories.tsx
rename to apps/site/components/Common/NodejsLogo/index.stories.tsx
diff --git a/components/Common/NodejsLogo/index.tsx b/apps/site/components/Common/NodejsLogo/index.tsx
similarity index 100%
rename from components/Common/NodejsLogo/index.tsx
rename to apps/site/components/Common/NodejsLogo/index.tsx
diff --git a/components/Common/Notification/index.module.css b/apps/site/components/Common/Notification/index.module.css
similarity index 100%
rename from components/Common/Notification/index.module.css
rename to apps/site/components/Common/Notification/index.module.css
diff --git a/components/Common/Notification/index.stories.tsx b/apps/site/components/Common/Notification/index.stories.tsx
similarity index 100%
rename from components/Common/Notification/index.stories.tsx
rename to apps/site/components/Common/Notification/index.stories.tsx
diff --git a/components/Common/Notification/index.tsx b/apps/site/components/Common/Notification/index.tsx
similarity index 100%
rename from components/Common/Notification/index.tsx
rename to apps/site/components/Common/Notification/index.tsx
diff --git a/components/Common/Pagination/Ellipsis/index.module.css b/apps/site/components/Common/Pagination/Ellipsis/index.module.css
similarity index 100%
rename from components/Common/Pagination/Ellipsis/index.module.css
rename to apps/site/components/Common/Pagination/Ellipsis/index.module.css
diff --git a/components/Common/Pagination/Ellipsis/index.stories.tsx b/apps/site/components/Common/Pagination/Ellipsis/index.stories.tsx
similarity index 100%
rename from components/Common/Pagination/Ellipsis/index.stories.tsx
rename to apps/site/components/Common/Pagination/Ellipsis/index.stories.tsx
diff --git a/components/Common/Pagination/Ellipsis/index.tsx b/apps/site/components/Common/Pagination/Ellipsis/index.tsx
similarity index 100%
rename from components/Common/Pagination/Ellipsis/index.tsx
rename to apps/site/components/Common/Pagination/Ellipsis/index.tsx
diff --git a/components/Common/Pagination/PaginationListItem/__tests__/index.test.mjs b/apps/site/components/Common/Pagination/PaginationListItem/__tests__/index.test.mjs
similarity index 100%
rename from components/Common/Pagination/PaginationListItem/__tests__/index.test.mjs
rename to apps/site/components/Common/Pagination/PaginationListItem/__tests__/index.test.mjs
diff --git a/components/Common/Pagination/PaginationListItem/index.module.css b/apps/site/components/Common/Pagination/PaginationListItem/index.module.css
similarity index 88%
rename from components/Common/Pagination/PaginationListItem/index.module.css
rename to apps/site/components/Common/Pagination/PaginationListItem/index.module.css
index 82802976a6b8e..bcc57af3fe933 100644
--- a/components/Common/Pagination/PaginationListItem/index.module.css
+++ b/apps/site/components/Common/Pagination/PaginationListItem/index.module.css
@@ -1,7 +1,9 @@
.listItem,
.listItem:link,
.listItem:active {
- @apply flex
+ @apply aria-current:bg-green-600
+ aria-current:text-white
+ flex
size-10
items-center
justify-center
@@ -9,8 +11,6 @@
px-3
py-2.5
text-neutral-800
- aria-current:bg-green-600
- aria-current:text-white
dark:text-neutral-200;
&:hover {
diff --git a/components/Common/Pagination/PaginationListItem/index.stories.tsx b/apps/site/components/Common/Pagination/PaginationListItem/index.stories.tsx
similarity index 100%
rename from components/Common/Pagination/PaginationListItem/index.stories.tsx
rename to apps/site/components/Common/Pagination/PaginationListItem/index.stories.tsx
diff --git a/components/Common/Pagination/PaginationListItem/index.tsx b/apps/site/components/Common/Pagination/PaginationListItem/index.tsx
similarity index 100%
rename from components/Common/Pagination/PaginationListItem/index.tsx
rename to apps/site/components/Common/Pagination/PaginationListItem/index.tsx
diff --git a/components/Common/Pagination/__tests__/index.test.mjs b/apps/site/components/Common/Pagination/__tests__/index.test.mjs
similarity index 100%
rename from components/Common/Pagination/__tests__/index.test.mjs
rename to apps/site/components/Common/Pagination/__tests__/index.test.mjs
diff --git a/components/Common/Pagination/index.module.css b/apps/site/components/Common/Pagination/index.module.css
similarity index 100%
rename from components/Common/Pagination/index.module.css
rename to apps/site/components/Common/Pagination/index.module.css
diff --git a/components/Common/Pagination/index.stories.tsx b/apps/site/components/Common/Pagination/index.stories.tsx
similarity index 100%
rename from components/Common/Pagination/index.stories.tsx
rename to apps/site/components/Common/Pagination/index.stories.tsx
diff --git a/components/Common/Pagination/index.tsx b/apps/site/components/Common/Pagination/index.tsx
similarity index 100%
rename from components/Common/Pagination/index.tsx
rename to apps/site/components/Common/Pagination/index.tsx
diff --git a/components/Common/Pagination/useGetPageElements.tsx b/apps/site/components/Common/Pagination/useGetPageElements.tsx
similarity index 100%
rename from components/Common/Pagination/useGetPageElements.tsx
rename to apps/site/components/Common/Pagination/useGetPageElements.tsx
diff --git a/components/Common/PrevNextArrow.tsx b/apps/site/components/Common/PrevNextArrow.tsx
similarity index 100%
rename from components/Common/PrevNextArrow.tsx
rename to apps/site/components/Common/PrevNextArrow.tsx
diff --git a/components/Common/Preview/index.module.css b/apps/site/components/Common/Preview/index.module.css
similarity index 68%
rename from components/Common/Preview/index.module.css
rename to apps/site/components/Common/Preview/index.module.css
index 1819679deed12..d2a68ff0df3fb 100644
--- a/components/Common/Preview/index.module.css
+++ b/apps/site/components/Common/Preview/index.module.css
@@ -1,25 +1,25 @@
.root {
- @apply relative
+ @apply @container/preview
+ relative
flex
aspect-[1.90/1]
items-center
rounded
border
border-neutral-900
- bg-neutral-950
- @container/preview;
+ bg-neutral-950;
&::after {
- @apply absolute
+ @apply bg-gradient-radial
+ @md/preview:blur-3xl
+ absolute
inset-0
m-auto
aspect-square
w-1/3
rounded-full
- bg-gradient-radial
blur-2xl
- content-['']
- @md/preview:blur-3xl;
+ content-[''];
&.announcements {
@apply from-green-700/90;
@@ -35,7 +35,15 @@
}
.container {
- @apply z-10
+ @apply @sm/preview:text-base
+ @md/preview:gap-6
+ @md/preview:text-lg
+ @lg/preview:gap-8
+ @lg/preview:text-xl
+ @xl/preview:gap-12
+ @xl/preview:text-2xl
+ @2xl/preview:text-3xl
+ z-10
mx-auto
flex
w-2/3
@@ -45,37 +53,29 @@
text-center
text-xs
font-semibold
- text-white
- @sm/preview:text-base
- @md/preview:gap-6
- @md/preview:text-lg
- @lg/preview:gap-8
- @lg/preview:text-xl
- @xl/preview:gap-12
- @xl/preview:text-2xl
- @2xl/preview:text-3xl;
+ text-white;
.hexagon {
- @apply absolute
- inset-0
- m-auto
- size-full
- @md/preview:h-3/5
+ @apply @md/preview:h-3/5
@md/preview:w-3/5
@lg/preview:h-2/3
@lg/preview:w-2/3
@xl/preview:h-3/5
@xl/preview:w-3/5
@2xl/preview:h-2/3
- @2xl/preview:w-2/3;
+ @2xl/preview:w-2/3
+ absolute
+ inset-0
+ m-auto
+ size-full;
}
.logo {
- @apply mx-auto
- size-6
- @md/preview:size-14
+ @apply @md/preview:size-14
@lg/preview:size-16
- @xl/preview:size-20;
+ @xl/preview:size-20
+ mx-auto
+ size-6;
}
}
}
diff --git a/components/Common/Preview/index.stories.tsx b/apps/site/components/Common/Preview/index.stories.tsx
similarity index 100%
rename from components/Common/Preview/index.stories.tsx
rename to apps/site/components/Common/Preview/index.stories.tsx
diff --git a/components/Common/Preview/index.tsx b/apps/site/components/Common/Preview/index.tsx
similarity index 100%
rename from components/Common/Preview/index.tsx
rename to apps/site/components/Common/Preview/index.tsx
diff --git a/components/Common/ProgressionSidebar/ProgressionSidebarGroup/index.module.css b/apps/site/components/Common/ProgressionSidebar/ProgressionSidebarGroup/index.module.css
similarity index 100%
rename from components/Common/ProgressionSidebar/ProgressionSidebarGroup/index.module.css
rename to apps/site/components/Common/ProgressionSidebar/ProgressionSidebarGroup/index.module.css
diff --git a/components/Common/ProgressionSidebar/ProgressionSidebarGroup/index.tsx b/apps/site/components/Common/ProgressionSidebar/ProgressionSidebarGroup/index.tsx
similarity index 100%
rename from components/Common/ProgressionSidebar/ProgressionSidebarGroup/index.tsx
rename to apps/site/components/Common/ProgressionSidebar/ProgressionSidebarGroup/index.tsx
diff --git a/components/Common/ProgressionSidebar/ProgressionSidebarIcon/index.tsx b/apps/site/components/Common/ProgressionSidebar/ProgressionSidebarIcon/index.tsx
similarity index 100%
rename from components/Common/ProgressionSidebar/ProgressionSidebarIcon/index.tsx
rename to apps/site/components/Common/ProgressionSidebar/ProgressionSidebarIcon/index.tsx
diff --git a/components/Common/ProgressionSidebar/ProgressionSidebarItem/index.module.css b/apps/site/components/Common/ProgressionSidebar/ProgressionSidebarItem/index.module.css
similarity index 93%
rename from components/Common/ProgressionSidebar/ProgressionSidebarItem/index.module.css
rename to apps/site/components/Common/ProgressionSidebar/ProgressionSidebarItem/index.module.css
index 0bd4ef2b487ae..60342f4abb796 100644
--- a/components/Common/ProgressionSidebar/ProgressionSidebarItem/index.module.css
+++ b/apps/site/components/Common/ProgressionSidebar/ProgressionSidebarItem/index.module.css
@@ -1,5 +1,6 @@
a.item {
- @apply relative
+ @apply font-regular
+ relative
z-20
flex
w-full
@@ -7,7 +8,6 @@ a.item {
gap-1
overflow-hidden
text-sm
- font-regular
text-neutral-800
dark:text-neutral-200;
diff --git a/components/Common/ProgressionSidebar/ProgressionSidebarItem/index.tsx b/apps/site/components/Common/ProgressionSidebar/ProgressionSidebarItem/index.tsx
similarity index 100%
rename from components/Common/ProgressionSidebar/ProgressionSidebarItem/index.tsx
rename to apps/site/components/Common/ProgressionSidebar/ProgressionSidebarItem/index.tsx
diff --git a/components/Common/ProgressionSidebar/index.module.css b/apps/site/components/Common/ProgressionSidebar/index.module.css
similarity index 89%
rename from components/Common/ProgressionSidebar/index.module.css
rename to apps/site/components/Common/ProgressionSidebar/index.module.css
index 0e968e12d4c9b..c986e4572678c 100644
--- a/components/Common/ProgressionSidebar/index.module.css
+++ b/apps/site/components/Common/ProgressionSidebar/index.module.css
@@ -9,11 +9,11 @@
bg-white
px-4
py-6
- dark:border-neutral-900
- dark:bg-neutral-950
sm:border-r
md:max-w-xs
- lg:px-6;
+ lg:px-6
+ dark:border-neutral-900
+ dark:bg-neutral-950;
> section {
@apply hidden
diff --git a/components/Common/ProgressionSidebar/index.stories.tsx b/apps/site/components/Common/ProgressionSidebar/index.stories.tsx
similarity index 100%
rename from components/Common/ProgressionSidebar/index.stories.tsx
rename to apps/site/components/Common/ProgressionSidebar/index.stories.tsx
diff --git a/components/Common/ProgressionSidebar/index.tsx b/apps/site/components/Common/ProgressionSidebar/index.tsx
similarity index 100%
rename from components/Common/ProgressionSidebar/index.tsx
rename to apps/site/components/Common/ProgressionSidebar/index.tsx
diff --git a/components/Common/Search/States/WithAllResults.tsx b/apps/site/components/Common/Search/States/WithAllResults.tsx
similarity index 100%
rename from components/Common/Search/States/WithAllResults.tsx
rename to apps/site/components/Common/Search/States/WithAllResults.tsx
diff --git a/components/Common/Search/States/WithError.tsx b/apps/site/components/Common/Search/States/WithError.tsx
similarity index 100%
rename from components/Common/Search/States/WithError.tsx
rename to apps/site/components/Common/Search/States/WithError.tsx
diff --git a/components/Common/Search/States/WithNoResults.tsx b/apps/site/components/Common/Search/States/WithNoResults.tsx
similarity index 100%
rename from components/Common/Search/States/WithNoResults.tsx
rename to apps/site/components/Common/Search/States/WithNoResults.tsx
diff --git a/components/Common/Search/States/WithPoweredBy.tsx b/apps/site/components/Common/Search/States/WithPoweredBy.tsx
similarity index 100%
rename from components/Common/Search/States/WithPoweredBy.tsx
rename to apps/site/components/Common/Search/States/WithPoweredBy.tsx
diff --git a/components/Common/Search/States/WithSearchBox.tsx b/apps/site/components/Common/Search/States/WithSearchBox.tsx
similarity index 100%
rename from components/Common/Search/States/WithSearchBox.tsx
rename to apps/site/components/Common/Search/States/WithSearchBox.tsx
diff --git a/components/Common/Search/States/WithSearchResult.tsx b/apps/site/components/Common/Search/States/WithSearchResult.tsx
similarity index 100%
rename from components/Common/Search/States/WithSearchResult.tsx
rename to apps/site/components/Common/Search/States/WithSearchResult.tsx
diff --git a/components/Common/Search/States/index.module.css b/apps/site/components/Common/Search/States/index.module.css
similarity index 97%
rename from components/Common/Search/States/index.module.css
rename to apps/site/components/Common/Search/States/index.module.css
index 5c63e61444668..a4a3f7041c97e 100644
--- a/components/Common/Search/States/index.module.css
+++ b/apps/site/components/Common/Search/States/index.module.css
@@ -16,18 +16,18 @@
h-screen
w-full
bg-neutral-100
- dark:bg-neutral-950
md:h-[450px]
md:max-w-3xl
md:rounded-xl
- md:shadow-lg;
+ md:shadow-lg
+ dark:bg-neutral-950;
}
.searchBoxInnerPanel {
@apply pt-12
text-neutral-800
- dark:text-neutral-400
- md:pt-2;
+ md:pt-2
+ dark:text-neutral-400;
}
.searchBoxMagnifyingGlassIcon {
diff --git a/components/Common/Search/index.module.css b/apps/site/components/Common/Search/index.module.css
similarity index 92%
rename from components/Common/Search/index.module.css
rename to apps/site/components/Common/Search/index.module.css
index 9523d21b74526..3006def0ca790 100644
--- a/components/Common/Search/index.module.css
+++ b/apps/site/components/Common/Search/index.module.css
@@ -20,14 +20,14 @@
}
.shortcutIndicator {
- @apply invisible
+ @apply font-ibm-plex-mono
+ invisible
flex
flex-1
items-center
justify-end
self-center
px-1
- font-ibm-plex-mono
text-xs
motion-safe:transition-opacity
motion-safe:duration-100
diff --git a/components/Common/Search/index.tsx b/apps/site/components/Common/Search/index.tsx
similarity index 100%
rename from components/Common/Search/index.tsx
rename to apps/site/components/Common/Search/index.tsx
diff --git a/components/Common/Search/utils.ts b/apps/site/components/Common/Search/utils.ts
similarity index 100%
rename from components/Common/Search/utils.ts
rename to apps/site/components/Common/Search/utils.ts
diff --git a/components/Common/Select/__tests__/index.test.mjs b/apps/site/components/Common/Select/__tests__/index.test.mjs
similarity index 100%
rename from components/Common/Select/__tests__/index.test.mjs
rename to apps/site/components/Common/Select/__tests__/index.test.mjs
diff --git a/components/Common/Select/index.module.css b/apps/site/components/Common/Select/index.module.css
similarity index 98%
rename from components/Common/Select/index.module.css
rename to apps/site/components/Common/Select/index.module.css
index 3b1051d7fec6c..aaedbd4355e22 100644
--- a/components/Common/Select/index.module.css
+++ b/apps/site/components/Common/Select/index.module.css
@@ -13,7 +13,8 @@
}
.trigger {
- @apply inline-flex
+ @apply shadow-xs
+ inline-flex
h-11
w-full
min-w-[17rem]
@@ -30,7 +31,6 @@
text-base
font-medium
text-neutral-900
- shadow-xs
outline-none
focus:border-neutral-500
focus:ring-1
diff --git a/components/Common/Select/index.stories.tsx b/apps/site/components/Common/Select/index.stories.tsx
similarity index 100%
rename from components/Common/Select/index.stories.tsx
rename to apps/site/components/Common/Select/index.stories.tsx
diff --git a/components/Common/Select/index.tsx b/apps/site/components/Common/Select/index.tsx
similarity index 100%
rename from components/Common/Select/index.tsx
rename to apps/site/components/Common/Select/index.tsx
diff --git a/components/Common/Tabs/__tests__/index.test.mjs b/apps/site/components/Common/Tabs/__tests__/index.test.mjs
similarity index 100%
rename from components/Common/Tabs/__tests__/index.test.mjs
rename to apps/site/components/Common/Tabs/__tests__/index.test.mjs
diff --git a/components/Common/Tabs/index.module.css b/apps/site/components/Common/Tabs/index.module.css
similarity index 93%
rename from components/Common/Tabs/index.module.css
rename to apps/site/components/Common/Tabs/index.module.css
index e0a835b5910ec..ca7f665064769 100644
--- a/components/Common/Tabs/index.module.css
+++ b/apps/site/components/Common/Tabs/index.module.css
@@ -2,10 +2,10 @@
@apply max-w-full;
.tabsList {
- @apply flex
+ @apply font-open-sans
+ flex
gap-2
- overflow-x-auto
- font-open-sans;
+ overflow-x-auto;
.tabsTrigger {
@apply whitespace-nowrap
diff --git a/components/Common/Tabs/index.stories.tsx b/apps/site/components/Common/Tabs/index.stories.tsx
similarity index 100%
rename from components/Common/Tabs/index.stories.tsx
rename to apps/site/components/Common/Tabs/index.stories.tsx
diff --git a/components/Common/Tabs/index.tsx b/apps/site/components/Common/Tabs/index.tsx
similarity index 100%
rename from components/Common/Tabs/index.tsx
rename to apps/site/components/Common/Tabs/index.tsx
diff --git a/components/Common/ThemeToggle/__tests__/index.test.mjs b/apps/site/components/Common/ThemeToggle/__tests__/index.test.mjs
similarity index 100%
rename from components/Common/ThemeToggle/__tests__/index.test.mjs
rename to apps/site/components/Common/ThemeToggle/__tests__/index.test.mjs
diff --git a/components/Common/ThemeToggle/index.module.css b/apps/site/components/Common/ThemeToggle/index.module.css
similarity index 100%
rename from components/Common/ThemeToggle/index.module.css
rename to apps/site/components/Common/ThemeToggle/index.module.css
diff --git a/components/Common/ThemeToggle/index.stories.tsx b/apps/site/components/Common/ThemeToggle/index.stories.tsx
similarity index 100%
rename from components/Common/ThemeToggle/index.stories.tsx
rename to apps/site/components/Common/ThemeToggle/index.stories.tsx
diff --git a/components/Common/ThemeToggle/index.tsx b/apps/site/components/Common/ThemeToggle/index.tsx
similarity index 100%
rename from components/Common/ThemeToggle/index.tsx
rename to apps/site/components/Common/ThemeToggle/index.tsx
diff --git a/components/Containers/Footer/index.module.css b/apps/site/components/Containers/Footer/index.module.css
similarity index 94%
rename from components/Containers/Footer/index.module.css
rename to apps/site/components/Containers/Footer/index.module.css
index 732cace0cabf8..e388fa5341dba 100644
--- a/components/Containers/Footer/index.module.css
+++ b/apps/site/components/Containers/Footer/index.module.css
@@ -7,12 +7,12 @@
border-neutral-200
bg-white
py-4
- dark:border-neutral-900
- dark:bg-neutral-950
sm:px-8
md:flex-row
md:justify-between
- md:py-5;
+ md:py-5
+ dark:border-neutral-900
+ dark:bg-neutral-950;
.sectionPrimary {
@apply flex
diff --git a/components/Containers/Footer/index.stories.tsx b/apps/site/components/Containers/Footer/index.stories.tsx
similarity index 100%
rename from components/Containers/Footer/index.stories.tsx
rename to apps/site/components/Containers/Footer/index.stories.tsx
diff --git a/components/Containers/Footer/index.tsx b/apps/site/components/Containers/Footer/index.tsx
similarity index 100%
rename from components/Containers/Footer/index.tsx
rename to apps/site/components/Containers/Footer/index.tsx
diff --git a/components/Containers/MetaBar/index.module.css b/apps/site/components/Containers/MetaBar/index.module.css
similarity index 87%
rename from components/Containers/MetaBar/index.module.css
rename to apps/site/components/Containers/MetaBar/index.module.css
index cd5e94ec8f05f..e8b649d5f554c 100644
--- a/components/Containers/MetaBar/index.module.css
+++ b/apps/site/components/Containers/MetaBar/index.module.css
@@ -9,8 +9,8 @@
px-4
py-6
[overflow-wrap:anywhere]
- dark:border-neutral-900
- lg:px-6;
+ lg:px-6
+ dark:border-neutral-900;
dl {
@apply w-full;
@@ -34,12 +34,12 @@
dark:text-white;
a {
- @apply font-semibold
+ @apply max-xs:inline-block
+ max-xs:py-1
+ font-semibold
text-neutral-900
underline
- dark:text-white
- max-xs:inline-block
- max-xs:py-1;
+ dark:text-white;
&:hover {
@apply text-neutral-800
diff --git a/components/Containers/MetaBar/index.stories.tsx b/apps/site/components/Containers/MetaBar/index.stories.tsx
similarity index 100%
rename from components/Containers/MetaBar/index.stories.tsx
rename to apps/site/components/Containers/MetaBar/index.stories.tsx
diff --git a/components/Containers/MetaBar/index.tsx b/apps/site/components/Containers/MetaBar/index.tsx
similarity index 100%
rename from components/Containers/MetaBar/index.tsx
rename to apps/site/components/Containers/MetaBar/index.tsx
diff --git a/components/Containers/NavBar/NavItem/index.module.css b/apps/site/components/Containers/NavBar/NavItem/index.module.css
similarity index 100%
rename from components/Containers/NavBar/NavItem/index.module.css
rename to apps/site/components/Containers/NavBar/NavItem/index.module.css
diff --git a/components/Containers/NavBar/NavItem/index.stories.tsx b/apps/site/components/Containers/NavBar/NavItem/index.stories.tsx
similarity index 100%
rename from components/Containers/NavBar/NavItem/index.stories.tsx
rename to apps/site/components/Containers/NavBar/NavItem/index.stories.tsx
diff --git a/components/Containers/NavBar/NavItem/index.tsx b/apps/site/components/Containers/NavBar/NavItem/index.tsx
similarity index 100%
rename from components/Containers/NavBar/NavItem/index.tsx
rename to apps/site/components/Containers/NavBar/NavItem/index.tsx
diff --git a/components/Containers/NavBar/index.module.css b/apps/site/components/Containers/NavBar/index.module.css
similarity index 87%
rename from components/Containers/NavBar/index.module.css
rename to apps/site/components/Containers/NavBar/index.module.css
index 21cdde580c668..edde385bda4e2 100644
--- a/components/Containers/NavBar/index.module.css
+++ b/apps/site/components/Containers/NavBar/index.module.css
@@ -1,15 +1,15 @@
.container {
@apply border-neutral-200
bg-white
- dark:border-neutral-900
- dark:bg-neutral-950
lg:flex
lg:h-16
lg:flex-row
lg:items-center
lg:gap-8
lg:border-b
- lg:px-8;
+ lg:px-8
+ dark:border-neutral-900
+ dark:bg-neutral-950;
}
.nodeIconAndMobileItemsToggler {
@@ -20,12 +20,12 @@
border-b
border-neutral-200
px-4
- dark:border-neutral-900
lg:flex
lg:h-full
lg:items-center
lg:border-0
- lg:px-0;
+ lg:px-0
+ dark:border-neutral-900;
}
.nodeIconWrapper {
@@ -59,11 +59,11 @@
border-b
border-neutral-200
p-4
- dark:border-neutral-900
lg:flex-1
lg:flex-row
lg:border-0
- lg:p-0;
+ lg:p-0
+ dark:border-neutral-900;
}
.actionsWrapper {
@@ -73,9 +73,9 @@
border-b
border-neutral-200
p-4
- dark:border-neutral-900
lg:border-0
- lg:p-0;
+ lg:p-0
+ dark:border-neutral-900;
}
.ghIconWrapper {
diff --git a/components/Containers/NavBar/index.stories.tsx b/apps/site/components/Containers/NavBar/index.stories.tsx
similarity index 100%
rename from components/Containers/NavBar/index.stories.tsx
rename to apps/site/components/Containers/NavBar/index.stories.tsx
diff --git a/components/Containers/NavBar/index.tsx b/apps/site/components/Containers/NavBar/index.tsx
similarity index 100%
rename from components/Containers/NavBar/index.tsx
rename to apps/site/components/Containers/NavBar/index.tsx
diff --git a/components/Containers/Sidebar/SidebarGroup/index.module.css b/apps/site/components/Containers/Sidebar/SidebarGroup/index.module.css
similarity index 100%
rename from components/Containers/Sidebar/SidebarGroup/index.module.css
rename to apps/site/components/Containers/Sidebar/SidebarGroup/index.module.css
diff --git a/components/Containers/Sidebar/SidebarGroup/index.stories.tsx b/apps/site/components/Containers/Sidebar/SidebarGroup/index.stories.tsx
similarity index 100%
rename from components/Containers/Sidebar/SidebarGroup/index.stories.tsx
rename to apps/site/components/Containers/Sidebar/SidebarGroup/index.stories.tsx
diff --git a/components/Containers/Sidebar/SidebarGroup/index.tsx b/apps/site/components/Containers/Sidebar/SidebarGroup/index.tsx
similarity index 100%
rename from components/Containers/Sidebar/SidebarGroup/index.tsx
rename to apps/site/components/Containers/Sidebar/SidebarGroup/index.tsx
diff --git a/components/Containers/Sidebar/SidebarItem/index.module.css b/apps/site/components/Containers/Sidebar/SidebarItem/index.module.css
similarity index 87%
rename from components/Containers/Sidebar/SidebarItem/index.module.css
rename to apps/site/components/Containers/Sidebar/SidebarItem/index.module.css
index 773b98537e28c..38c89b9fd6028 100644
--- a/components/Containers/Sidebar/SidebarItem/index.module.css
+++ b/apps/site/components/Containers/Sidebar/SidebarItem/index.module.css
@@ -13,9 +13,9 @@
}
.label {
- @apply w-full
- text-sm
- font-regular;
+ @apply font-regular
+ w-full
+ text-sm;
}
.icon {
diff --git a/components/Containers/Sidebar/SidebarItem/index.stories.tsx b/apps/site/components/Containers/Sidebar/SidebarItem/index.stories.tsx
similarity index 100%
rename from components/Containers/Sidebar/SidebarItem/index.stories.tsx
rename to apps/site/components/Containers/Sidebar/SidebarItem/index.stories.tsx
diff --git a/components/Containers/Sidebar/SidebarItem/index.tsx b/apps/site/components/Containers/Sidebar/SidebarItem/index.tsx
similarity index 100%
rename from components/Containers/Sidebar/SidebarItem/index.tsx
rename to apps/site/components/Containers/Sidebar/SidebarItem/index.tsx
diff --git a/components/Containers/Sidebar/index.module.css b/apps/site/components/Containers/Sidebar/index.module.css
similarity index 90%
rename from components/Containers/Sidebar/index.module.css
rename to apps/site/components/Containers/Sidebar/index.module.css
index 370c181d5ca63..7324ae7ba9f29 100644
--- a/components/Containers/Sidebar/index.module.css
+++ b/apps/site/components/Containers/Sidebar/index.module.css
@@ -10,11 +10,11 @@
bg-white
px-4
py-6
- dark:border-r-neutral-900
- dark:bg-neutral-950
sm:border-r
md:max-w-xs
- lg:px-6;
+ lg:px-6
+ dark:border-r-neutral-900
+ dark:bg-neutral-950;
> section {
@apply hidden
diff --git a/components/Containers/Sidebar/index.stories.tsx b/apps/site/components/Containers/Sidebar/index.stories.tsx
similarity index 100%
rename from components/Containers/Sidebar/index.stories.tsx
rename to apps/site/components/Containers/Sidebar/index.stories.tsx
diff --git a/components/Containers/Sidebar/index.tsx b/apps/site/components/Containers/Sidebar/index.tsx
similarity index 100%
rename from components/Containers/Sidebar/index.tsx
rename to apps/site/components/Containers/Sidebar/index.tsx
diff --git a/components/Downloads/ChangelogModal/index.module.css b/apps/site/components/Downloads/ChangelogModal/index.module.css
similarity index 94%
rename from components/Downloads/ChangelogModal/index.module.css
rename to apps/site/components/Downloads/ChangelogModal/index.module.css
index c5588e21c7f61..844d065eab38d 100644
--- a/components/Downloads/ChangelogModal/index.module.css
+++ b/apps/site/components/Downloads/ChangelogModal/index.module.css
@@ -21,12 +21,12 @@
bg-white
p-6
focus:outline-none
- dark:border-neutral-900
- dark:bg-neutral-950
sm:my-20
sm:p-8
lg:max-w-[900px]
- xl:p-12;
+ xl:p-12
+ dark:border-neutral-900
+ dark:bg-neutral-950;
}
.close {
@@ -52,9 +52,9 @@
}
.description {
- @apply mb-4
+ @apply font-regular
+ mb-4
text-lg
- font-regular
text-neutral-800
dark:text-neutral-200;
}
diff --git a/components/Downloads/ChangelogModal/index.stories.tsx b/apps/site/components/Downloads/ChangelogModal/index.stories.tsx
similarity index 100%
rename from components/Downloads/ChangelogModal/index.stories.tsx
rename to apps/site/components/Downloads/ChangelogModal/index.stories.tsx
diff --git a/components/Downloads/ChangelogModal/index.tsx b/apps/site/components/Downloads/ChangelogModal/index.tsx
similarity index 100%
rename from components/Downloads/ChangelogModal/index.tsx
rename to apps/site/components/Downloads/ChangelogModal/index.tsx
diff --git a/components/Downloads/DownloadButton/index.module.css b/apps/site/components/Downloads/DownloadButton/index.module.css
similarity index 100%
rename from components/Downloads/DownloadButton/index.module.css
rename to apps/site/components/Downloads/DownloadButton/index.module.css
diff --git a/components/Downloads/DownloadButton/index.stories.tsx b/apps/site/components/Downloads/DownloadButton/index.stories.tsx
similarity index 100%
rename from components/Downloads/DownloadButton/index.stories.tsx
rename to apps/site/components/Downloads/DownloadButton/index.stories.tsx
diff --git a/components/Downloads/DownloadButton/index.tsx b/apps/site/components/Downloads/DownloadButton/index.tsx
similarity index 100%
rename from components/Downloads/DownloadButton/index.tsx
rename to apps/site/components/Downloads/DownloadButton/index.tsx
diff --git a/components/Downloads/DownloadLink.tsx b/apps/site/components/Downloads/DownloadLink.tsx
similarity index 100%
rename from components/Downloads/DownloadLink.tsx
rename to apps/site/components/Downloads/DownloadLink.tsx
diff --git a/components/Downloads/DownloadReleasesTable.tsx b/apps/site/components/Downloads/DownloadReleasesTable.tsx
similarity index 100%
rename from components/Downloads/DownloadReleasesTable.tsx
rename to apps/site/components/Downloads/DownloadReleasesTable.tsx
diff --git a/components/Downloads/Release/BitnessDropdown.tsx b/apps/site/components/Downloads/Release/BitnessDropdown.tsx
similarity index 100%
rename from components/Downloads/Release/BitnessDropdown.tsx
rename to apps/site/components/Downloads/Release/BitnessDropdown.tsx
diff --git a/components/Downloads/Release/BlogPostLink.tsx b/apps/site/components/Downloads/Release/BlogPostLink.tsx
similarity index 100%
rename from components/Downloads/Release/BlogPostLink.tsx
rename to apps/site/components/Downloads/Release/BlogPostLink.tsx
diff --git a/components/Downloads/Release/ChangelogLink.tsx b/apps/site/components/Downloads/Release/ChangelogLink.tsx
similarity index 100%
rename from components/Downloads/Release/ChangelogLink.tsx
rename to apps/site/components/Downloads/Release/ChangelogLink.tsx
diff --git a/components/Downloads/Release/DownloadButton.tsx b/apps/site/components/Downloads/Release/DownloadButton.tsx
similarity index 100%
rename from components/Downloads/Release/DownloadButton.tsx
rename to apps/site/components/Downloads/Release/DownloadButton.tsx
diff --git a/components/Downloads/Release/LinkWithArrow.tsx b/apps/site/components/Downloads/Release/LinkWithArrow.tsx
similarity index 100%
rename from components/Downloads/Release/LinkWithArrow.tsx
rename to apps/site/components/Downloads/Release/LinkWithArrow.tsx
diff --git a/components/Downloads/Release/NpmLink.tsx b/apps/site/components/Downloads/Release/NpmLink.tsx
similarity index 100%
rename from components/Downloads/Release/NpmLink.tsx
rename to apps/site/components/Downloads/Release/NpmLink.tsx
diff --git a/components/Downloads/Release/OperatingSystemDropdown.tsx b/apps/site/components/Downloads/Release/OperatingSystemDropdown.tsx
similarity index 100%
rename from components/Downloads/Release/OperatingSystemDropdown.tsx
rename to apps/site/components/Downloads/Release/OperatingSystemDropdown.tsx
diff --git a/components/Downloads/Release/PlatformDropdown.tsx b/apps/site/components/Downloads/Release/PlatformDropdown.tsx
similarity index 100%
rename from components/Downloads/Release/PlatformDropdown.tsx
rename to apps/site/components/Downloads/Release/PlatformDropdown.tsx
diff --git a/components/Downloads/Release/ReleaseCodeBox.tsx b/apps/site/components/Downloads/Release/ReleaseCodeBox.tsx
similarity index 100%
rename from components/Downloads/Release/ReleaseCodeBox.tsx
rename to apps/site/components/Downloads/Release/ReleaseCodeBox.tsx
diff --git a/components/Downloads/Release/ReleaseStatus.tsx b/apps/site/components/Downloads/Release/ReleaseStatus.tsx
similarity index 100%
rename from components/Downloads/Release/ReleaseStatus.tsx
rename to apps/site/components/Downloads/Release/ReleaseStatus.tsx
diff --git a/components/Downloads/Release/ReleaseVersion.tsx b/apps/site/components/Downloads/Release/ReleaseVersion.tsx
similarity index 100%
rename from components/Downloads/Release/ReleaseVersion.tsx
rename to apps/site/components/Downloads/Release/ReleaseVersion.tsx
diff --git a/components/Downloads/Release/SourceButton.tsx b/apps/site/components/Downloads/Release/SourceButton.tsx
similarity index 100%
rename from components/Downloads/Release/SourceButton.tsx
rename to apps/site/components/Downloads/Release/SourceButton.tsx
diff --git a/components/Downloads/Release/VerifyingBinariesLink.tsx b/apps/site/components/Downloads/Release/VerifyingBinariesLink.tsx
similarity index 100%
rename from components/Downloads/Release/VerifyingBinariesLink.tsx
rename to apps/site/components/Downloads/Release/VerifyingBinariesLink.tsx
diff --git a/components/Downloads/Release/VersionDropdown.tsx b/apps/site/components/Downloads/Release/VersionDropdown.tsx
similarity index 100%
rename from components/Downloads/Release/VersionDropdown.tsx
rename to apps/site/components/Downloads/Release/VersionDropdown.tsx
diff --git a/components/Icons/HexagonGrid.stories.tsx b/apps/site/components/Icons/HexagonGrid.stories.tsx
similarity index 100%
rename from components/Icons/HexagonGrid.stories.tsx
rename to apps/site/components/Icons/HexagonGrid.stories.tsx
diff --git a/components/Icons/HexagonGrid.tsx b/apps/site/components/Icons/HexagonGrid.tsx
similarity index 100%
rename from components/Icons/HexagonGrid.tsx
rename to apps/site/components/Icons/HexagonGrid.tsx
diff --git a/components/Icons/Logos/JsIconGreen.tsx b/apps/site/components/Icons/Logos/JsIconGreen.tsx
similarity index 100%
rename from components/Icons/Logos/JsIconGreen.tsx
rename to apps/site/components/Icons/Logos/JsIconGreen.tsx
diff --git a/components/Icons/Logos/JsIconWhite.tsx b/apps/site/components/Icons/Logos/JsIconWhite.tsx
similarity index 100%
rename from components/Icons/Logos/JsIconWhite.tsx
rename to apps/site/components/Icons/Logos/JsIconWhite.tsx
diff --git a/components/Icons/Logos/NodejsDark.tsx b/apps/site/components/Icons/Logos/NodejsDark.tsx
similarity index 100%
rename from components/Icons/Logos/NodejsDark.tsx
rename to apps/site/components/Icons/Logos/NodejsDark.tsx
diff --git a/components/Icons/Logos/NodejsDarkPride.tsx b/apps/site/components/Icons/Logos/NodejsDarkPride.tsx
similarity index 100%
rename from components/Icons/Logos/NodejsDarkPride.tsx
rename to apps/site/components/Icons/Logos/NodejsDarkPride.tsx
diff --git a/components/Icons/Logos/NodejsLight.tsx b/apps/site/components/Icons/Logos/NodejsLight.tsx
similarity index 100%
rename from components/Icons/Logos/NodejsLight.tsx
rename to apps/site/components/Icons/Logos/NodejsLight.tsx
diff --git a/components/Icons/Logos/NodejsLightPride.tsx b/apps/site/components/Icons/Logos/NodejsLightPride.tsx
similarity index 100%
rename from components/Icons/Logos/NodejsLightPride.tsx
rename to apps/site/components/Icons/Logos/NodejsLightPride.tsx
diff --git a/components/Icons/Logos/NodejsStackedBlack.tsx b/apps/site/components/Icons/Logos/NodejsStackedBlack.tsx
similarity index 100%
rename from components/Icons/Logos/NodejsStackedBlack.tsx
rename to apps/site/components/Icons/Logos/NodejsStackedBlack.tsx
diff --git a/components/Icons/Logos/NodejsStackedDark.tsx b/apps/site/components/Icons/Logos/NodejsStackedDark.tsx
similarity index 100%
rename from components/Icons/Logos/NodejsStackedDark.tsx
rename to apps/site/components/Icons/Logos/NodejsStackedDark.tsx
diff --git a/components/Icons/Logos/NodejsStackedLight.tsx b/apps/site/components/Icons/Logos/NodejsStackedLight.tsx
similarity index 100%
rename from components/Icons/Logos/NodejsStackedLight.tsx
rename to apps/site/components/Icons/Logos/NodejsStackedLight.tsx
diff --git a/components/Icons/Logos/NodejsStackedWhite.tsx b/apps/site/components/Icons/Logos/NodejsStackedWhite.tsx
similarity index 100%
rename from components/Icons/Logos/NodejsStackedWhite.tsx
rename to apps/site/components/Icons/Logos/NodejsStackedWhite.tsx
diff --git a/components/Icons/Platform/Apple.tsx b/apps/site/components/Icons/Platform/Apple.tsx
similarity index 100%
rename from components/Icons/Platform/Apple.tsx
rename to apps/site/components/Icons/Platform/Apple.tsx
diff --git a/components/Icons/Platform/Choco.tsx b/apps/site/components/Icons/Platform/Choco.tsx
similarity index 100%
rename from components/Icons/Platform/Choco.tsx
rename to apps/site/components/Icons/Platform/Choco.tsx
diff --git a/components/Icons/Platform/Docker.tsx b/apps/site/components/Icons/Platform/Docker.tsx
similarity index 100%
rename from components/Icons/Platform/Docker.tsx
rename to apps/site/components/Icons/Platform/Docker.tsx
diff --git a/components/Icons/Platform/FNM.tsx b/apps/site/components/Icons/Platform/FNM.tsx
similarity index 100%
rename from components/Icons/Platform/FNM.tsx
rename to apps/site/components/Icons/Platform/FNM.tsx
diff --git a/components/Icons/Platform/Generic.tsx b/apps/site/components/Icons/Platform/Generic.tsx
similarity index 100%
rename from components/Icons/Platform/Generic.tsx
rename to apps/site/components/Icons/Platform/Generic.tsx
diff --git a/components/Icons/Platform/Homebrew.tsx b/apps/site/components/Icons/Platform/Homebrew.tsx
similarity index 100%
rename from components/Icons/Platform/Homebrew.tsx
rename to apps/site/components/Icons/Platform/Homebrew.tsx
diff --git a/components/Icons/Platform/Linux.tsx b/apps/site/components/Icons/Platform/Linux.tsx
similarity index 100%
rename from components/Icons/Platform/Linux.tsx
rename to apps/site/components/Icons/Platform/Linux.tsx
diff --git a/components/Icons/Platform/Microsoft.tsx b/apps/site/components/Icons/Platform/Microsoft.tsx
similarity index 100%
rename from components/Icons/Platform/Microsoft.tsx
rename to apps/site/components/Icons/Platform/Microsoft.tsx
diff --git a/components/Icons/Platform/NVM.tsx b/apps/site/components/Icons/Platform/NVM.tsx
similarity index 100%
rename from components/Icons/Platform/NVM.tsx
rename to apps/site/components/Icons/Platform/NVM.tsx
diff --git a/components/Icons/Social/GitHub.tsx b/apps/site/components/Icons/Social/GitHub.tsx
similarity index 100%
rename from components/Icons/Social/GitHub.tsx
rename to apps/site/components/Icons/Social/GitHub.tsx
diff --git a/components/Icons/Social/LinkedIn.tsx b/apps/site/components/Icons/Social/LinkedIn.tsx
similarity index 100%
rename from components/Icons/Social/LinkedIn.tsx
rename to apps/site/components/Icons/Social/LinkedIn.tsx
diff --git a/components/Icons/Social/Mastodon.tsx b/apps/site/components/Icons/Social/Mastodon.tsx
similarity index 100%
rename from components/Icons/Social/Mastodon.tsx
rename to apps/site/components/Icons/Social/Mastodon.tsx
diff --git a/components/Icons/Social/Slack.tsx b/apps/site/components/Icons/Social/Slack.tsx
similarity index 100%
rename from components/Icons/Social/Slack.tsx
rename to apps/site/components/Icons/Social/Slack.tsx
diff --git a/components/Icons/Social/Twitter.tsx b/apps/site/components/Icons/Social/Twitter.tsx
similarity index 100%
rename from components/Icons/Social/Twitter.tsx
rename to apps/site/components/Icons/Social/Twitter.tsx
diff --git a/components/Link.tsx b/apps/site/components/Link.tsx
similarity index 100%
rename from components/Link.tsx
rename to apps/site/components/Link.tsx
diff --git a/components/MDX/Calendar/Event/index.module.css b/apps/site/components/MDX/Calendar/Event/index.module.css
similarity index 100%
rename from components/MDX/Calendar/Event/index.module.css
rename to apps/site/components/MDX/Calendar/Event/index.module.css
diff --git a/components/MDX/Calendar/Event/index.stories.tsx b/apps/site/components/MDX/Calendar/Event/index.stories.tsx
similarity index 100%
rename from components/MDX/Calendar/Event/index.stories.tsx
rename to apps/site/components/MDX/Calendar/Event/index.stories.tsx
diff --git a/components/MDX/Calendar/Event/index.tsx b/apps/site/components/MDX/Calendar/Event/index.tsx
similarity index 100%
rename from components/MDX/Calendar/Event/index.tsx
rename to apps/site/components/MDX/Calendar/Event/index.tsx
diff --git a/components/MDX/Calendar/UpcomingMeetings.tsx b/apps/site/components/MDX/Calendar/UpcomingMeetings.tsx
similarity index 100%
rename from components/MDX/Calendar/UpcomingMeetings.tsx
rename to apps/site/components/MDX/Calendar/UpcomingMeetings.tsx
diff --git a/components/MDX/Calendar/calendar.module.css b/apps/site/components/MDX/Calendar/calendar.module.css
similarity index 100%
rename from components/MDX/Calendar/calendar.module.css
rename to apps/site/components/MDX/Calendar/calendar.module.css
diff --git a/components/MDX/Calendar/utils.ts b/apps/site/components/MDX/Calendar/utils.ts
similarity index 100%
rename from components/MDX/Calendar/utils.ts
rename to apps/site/components/MDX/Calendar/utils.ts
diff --git a/components/MDX/CodeBox/index.stories.tsx b/apps/site/components/MDX/CodeBox/index.stories.tsx
similarity index 100%
rename from components/MDX/CodeBox/index.stories.tsx
rename to apps/site/components/MDX/CodeBox/index.stories.tsx
diff --git a/components/MDX/CodeBox/index.tsx b/apps/site/components/MDX/CodeBox/index.tsx
similarity index 100%
rename from components/MDX/CodeBox/index.tsx
rename to apps/site/components/MDX/CodeBox/index.tsx
diff --git a/components/MDX/CodeTabs/index.stories.tsx b/apps/site/components/MDX/CodeTabs/index.stories.tsx
similarity index 100%
rename from components/MDX/CodeTabs/index.stories.tsx
rename to apps/site/components/MDX/CodeTabs/index.stories.tsx
diff --git a/components/MDX/CodeTabs/index.tsx b/apps/site/components/MDX/CodeTabs/index.tsx
similarity index 100%
rename from components/MDX/CodeTabs/index.tsx
rename to apps/site/components/MDX/CodeTabs/index.tsx
diff --git a/components/MDX/Image/index.tsx b/apps/site/components/MDX/Image/index.tsx
similarity index 100%
rename from components/MDX/Image/index.tsx
rename to apps/site/components/MDX/Image/index.tsx
diff --git a/components/MDX/SearchPage/index.module.css b/apps/site/components/MDX/SearchPage/index.module.css
similarity index 100%
rename from components/MDX/SearchPage/index.module.css
rename to apps/site/components/MDX/SearchPage/index.module.css
diff --git a/components/MDX/SearchPage/index.tsx b/apps/site/components/MDX/SearchPage/index.tsx
similarity index 100%
rename from components/MDX/SearchPage/index.tsx
rename to apps/site/components/MDX/SearchPage/index.tsx
diff --git a/apps/site/components/__design__/colors.stories.tsx b/apps/site/components/__design__/colors.stories.tsx
new file mode 100644
index 0000000000000..1073b9cf0440f
--- /dev/null
+++ b/apps/site/components/__design__/colors.stories.tsx
@@ -0,0 +1,82 @@
+import type { Meta as MetaObj, StoryObj } from '@storybook/react';
+
+export const Colors: StoryObj = {
+ render: () => (
+
+ ),
+};
+
+export default { title: 'Design System' } as MetaObj;
diff --git a/components/__design__/effects.stories.tsx b/apps/site/components/__design__/effects.stories.tsx
similarity index 100%
rename from components/__design__/effects.stories.tsx
rename to apps/site/components/__design__/effects.stories.tsx
diff --git a/components/__design__/font-family.stories.tsx b/apps/site/components/__design__/font-family.stories.tsx
similarity index 81%
rename from components/__design__/font-family.stories.tsx
rename to apps/site/components/__design__/font-family.stories.tsx
index 5bc1ba857c25a..92c510fec522c 100644
--- a/components/__design__/font-family.stories.tsx
+++ b/apps/site/components/__design__/font-family.stories.tsx
@@ -4,13 +4,13 @@ export const FontFamily: StoryObj = {
render: () => (
-
Text XS/Regular
+
Text XS/Regular
Text XS/Medium
Text XS/SemiBold
Text XS/Bold
-
Text SM/Regular
+
Text SM/Regular
Text SM/Medium
Text SM/SemiBold
Text SM/Bold
@@ -22,49 +22,49 @@ export const FontFamily: StoryObj = {
Text Base/Bold
-
Text LG/Regular
+
Text LG/Regular
Text LG/Medium
Text LG/SemiBold
Text LG/Bold
-
Text XL/Regular
+
Text XL/Regular
Text XL/Medium
Text XL/SemiBold
Text XL/Bold
-
Text 2XL/Regular
+
Text 2XL/Regular
Text 2XL/Medium
Text 2XL/SemiBold
Text 2XL/Bold
-
Text 3XL/Regular
+
Text 3XL/Regular
Text 3XL/Medium
Text 3XL/SemiBold
Text 3XL/Bold
-
Text 4XL/Regular
+
Text 4XL/Regular
Text 4XL/Medium
Text 4XL/SemiBold
Text 4XL/Bold
-
Text 5XL/Regular
+
Text 5XL/Regular
Text 5XL/Medium
Text 5XL/SemiBold
Text 5XL/Bold
-
Text 6XL/Regular
+
Text 6XL/Regular
Text 6XL/Medium
Text 6XL/SemiBold
Text 6XL/Bold
-
Text 7XL/Regular
+
Text 7XL/Regular
Text 7XL/Medium
Text 7XL/SemiBold
Text 7XL/Bold
diff --git a/components/__design__/list.stories.tsx b/apps/site/components/__design__/list.stories.tsx
similarity index 100%
rename from components/__design__/list.stories.tsx
rename to apps/site/components/__design__/list.stories.tsx
diff --git a/components/__design__/node-logos.stories.tsx b/apps/site/components/__design__/node-logos.stories.tsx
similarity index 100%
rename from components/__design__/node-logos.stories.tsx
rename to apps/site/components/__design__/node-logos.stories.tsx
diff --git a/components/__design__/platform-logos.stories.tsx b/apps/site/components/__design__/platform-logos.stories.tsx
similarity index 100%
rename from components/__design__/platform-logos.stories.tsx
rename to apps/site/components/__design__/platform-logos.stories.tsx
diff --git a/components/__design__/social-logos.stories.tsx b/apps/site/components/__design__/social-logos.stories.tsx
similarity index 100%
rename from components/__design__/social-logos.stories.tsx
rename to apps/site/components/__design__/social-logos.stories.tsx
diff --git a/components/__design__/table.stories.tsx b/apps/site/components/__design__/table.stories.tsx
similarity index 100%
rename from components/__design__/table.stories.tsx
rename to apps/site/components/__design__/table.stories.tsx
diff --git a/components/__design__/text.stories.tsx b/apps/site/components/__design__/text.stories.tsx
similarity index 100%
rename from components/__design__/text.stories.tsx
rename to apps/site/components/__design__/text.stories.tsx
diff --git a/components/__mocks__/github-slugger.mjs b/apps/site/components/__mocks__/github-slugger.mjs
similarity index 100%
rename from components/__mocks__/github-slugger.mjs
rename to apps/site/components/__mocks__/github-slugger.mjs
diff --git a/components/__mocks__/next-intl.mjs b/apps/site/components/__mocks__/next-intl.mjs
similarity index 100%
rename from components/__mocks__/next-intl.mjs
rename to apps/site/components/__mocks__/next-intl.mjs
diff --git a/components/__mocks__/next-router.mjs b/apps/site/components/__mocks__/next-router.mjs
similarity index 100%
rename from components/__mocks__/next-router.mjs
rename to apps/site/components/__mocks__/next-router.mjs
diff --git a/components/mdxRenderer.tsx b/apps/site/components/mdxRenderer.tsx
similarity index 100%
rename from components/mdxRenderer.tsx
rename to apps/site/components/mdxRenderer.tsx
diff --git a/components/withBadge.tsx b/apps/site/components/withBadge.tsx
similarity index 100%
rename from components/withBadge.tsx
rename to apps/site/components/withBadge.tsx
diff --git a/components/withBanner.tsx b/apps/site/components/withBanner.tsx
similarity index 100%
rename from components/withBanner.tsx
rename to apps/site/components/withBanner.tsx
diff --git a/components/withBlogCategories.tsx b/apps/site/components/withBlogCategories.tsx
similarity index 85%
rename from components/withBlogCategories.tsx
rename to apps/site/components/withBlogCategories.tsx
index c682f929afaa2..7be3f6a890a6a 100644
--- a/components/withBlogCategories.tsx
+++ b/apps/site/components/withBlogCategories.tsx
@@ -30,7 +30,7 @@ const WithBlogCategories: FC
= ({
tabs={categories}
activeTab={blogData.category}
>
-
+
{blogData.posts.map(post => (
= ({
-
+
{
];
return (
-
+
{(previousCrossLink && (
*:nth-child(1) {
@@ -31,22 +31,22 @@
sm:max-lg:block;
> *:first-child {
- @apply overflow-y-auto
+ @apply grid-in-[main]
+ sm:bg-gradient-subtle
+ sm:dark:bg-gradient-subtle-dark
+ xl:px-18
+ overflow-y-auto
overflow-x-hidden
p-4
- grid-in-[main]
motion-safe:scroll-smooth
- sm:bg-gradient-subtle
sm:bg-fixed
- sm:p-12
- sm:dark:bg-gradient-subtle-dark
- xl:px-18;
+ sm:p-12;
}
> *:last-child {
- @apply mt-8
+ @apply grid-in-[metabar]
+ mt-8
border-t
- grid-in-[metabar]
sm:mt-0
lg:max-w-xs
lg:border-l
@@ -55,7 +55,8 @@
}
> *:nth-child(3) {
- @apply sticky
+ @apply grid-in-[footer]
+ sticky
bottom-0
flex
w-full
@@ -66,7 +67,6 @@
border-t-neutral-200
bg-white
py-4
- grid-in-[footer]
dark:border-t-neutral-900
dark:bg-neutral-950;
}
@@ -116,11 +116,11 @@
}
small {
- @apply text-center
+ @apply max-xs:text-xs
+ text-center
text-sm
text-neutral-800
- dark:text-neutral-400
- max-xs:text-xs;
+ dark:text-neutral-400;
sup {
@apply cursor-help;
@@ -158,13 +158,13 @@
.blogLayout,
.downloadLayout {
- @apply flex
- w-full
- justify-center
- bg-gradient-subtle
+ @apply bg-gradient-subtle
dark:bg-gradient-subtle-dark
max-xs:bg-none
- max-xs:dark:bg-none;
+ max-xs:dark:bg-none
+ flex
+ w-full
+ justify-center;
main {
@apply max-w-5xl
@@ -198,33 +198,33 @@
}
.contentLayout {
- @apply mx-auto
+ @apply max-w-8xl
+ max-xs:m-0
+ max-xs:block
+ mx-auto
grid
w-full
- max-w-8xl
grid-rows-[1fr]
- max-xs:m-0
- max-xs:block
sm:grid-cols-[1fr_theme(spacing.52)]
xl:grid-cols-[1fr_theme(spacing.80)];
> *:nth-child(1) {
- @apply flex
+ @apply bg-gradient-subtle
+ dark:bg-gradient-subtle-dark
+ max-xs:border-l-0
+ max-xs:bg-none
+ max-xs:pb-4
+ max-xs:dark:bg-none
+ flex
w-full
justify-center
border-l
border-l-neutral-200
- bg-gradient-subtle
px-4
py-14
- dark:border-l-neutral-900
- dark:bg-gradient-subtle-dark
- max-xs:border-l-0
- max-xs:bg-none
- max-xs:pb-4
- max-xs:dark:bg-none
md:px-14
- lg:px-28;
+ lg:px-28
+ dark:border-l-neutral-900;
main {
@apply max-w-[660px]
@@ -235,12 +235,12 @@
}
> *:nth-child(2) {
- @apply mt-8
- border-t
- xs:mt-0
+ @apply xs:mt-0
xs:max-w-xs
xs:border-l
- xs:border-t-0;
+ xs:border-t-0
+ mt-8
+ border-t;
}
}
diff --git a/middleware.ts b/apps/site/middleware.ts
similarity index 100%
rename from middleware.ts
rename to apps/site/middleware.ts
diff --git a/navigation.json b/apps/site/navigation.json
similarity index 100%
rename from navigation.json
rename to apps/site/navigation.json
diff --git a/navigation.mjs b/apps/site/navigation.mjs
similarity index 100%
rename from navigation.mjs
rename to apps/site/navigation.mjs
diff --git a/next-data/blogData.ts b/apps/site/next-data/blogData.ts
similarity index 100%
rename from next-data/blogData.ts
rename to apps/site/next-data/blogData.ts
diff --git a/next-data/changelogData.ts b/apps/site/next-data/changelogData.ts
similarity index 100%
rename from next-data/changelogData.ts
rename to apps/site/next-data/changelogData.ts
diff --git a/next-data/generators/__tests__/releaseData.test.mjs b/apps/site/next-data/generators/__tests__/releaseData.test.mjs
similarity index 100%
rename from next-data/generators/__tests__/releaseData.test.mjs
rename to apps/site/next-data/generators/__tests__/releaseData.test.mjs
diff --git a/next-data/generators/__tests__/websiteFeeds.test.mjs b/apps/site/next-data/generators/__tests__/websiteFeeds.test.mjs
similarity index 100%
rename from next-data/generators/__tests__/websiteFeeds.test.mjs
rename to apps/site/next-data/generators/__tests__/websiteFeeds.test.mjs
diff --git a/next-data/generators/blogData.mjs b/apps/site/next-data/generators/blogData.mjs
similarity index 100%
rename from next-data/generators/blogData.mjs
rename to apps/site/next-data/generators/blogData.mjs
diff --git a/next-data/generators/changelogData.mjs b/apps/site/next-data/generators/changelogData.mjs
similarity index 100%
rename from next-data/generators/changelogData.mjs
rename to apps/site/next-data/generators/changelogData.mjs
diff --git a/next-data/generators/releaseData.mjs b/apps/site/next-data/generators/releaseData.mjs
similarity index 100%
rename from next-data/generators/releaseData.mjs
rename to apps/site/next-data/generators/releaseData.mjs
diff --git a/next-data/generators/websiteFeeds.mjs b/apps/site/next-data/generators/websiteFeeds.mjs
similarity index 100%
rename from next-data/generators/websiteFeeds.mjs
rename to apps/site/next-data/generators/websiteFeeds.mjs
diff --git a/next-data/providers/blogData.ts b/apps/site/next-data/providers/blogData.ts
similarity index 100%
rename from next-data/providers/blogData.ts
rename to apps/site/next-data/providers/blogData.ts
diff --git a/next-data/providers/changelogData.ts b/apps/site/next-data/providers/changelogData.ts
similarity index 100%
rename from next-data/providers/changelogData.ts
rename to apps/site/next-data/providers/changelogData.ts
diff --git a/next-data/providers/releaseData.ts b/apps/site/next-data/providers/releaseData.ts
similarity index 100%
rename from next-data/providers/releaseData.ts
rename to apps/site/next-data/providers/releaseData.ts
diff --git a/next-data/providers/websiteFeeds.ts b/apps/site/next-data/providers/websiteFeeds.ts
similarity index 100%
rename from next-data/providers/websiteFeeds.ts
rename to apps/site/next-data/providers/websiteFeeds.ts
diff --git a/next-data/releaseData.ts b/apps/site/next-data/releaseData.ts
similarity index 100%
rename from next-data/releaseData.ts
rename to apps/site/next-data/releaseData.ts
diff --git a/next-env.d.ts b/apps/site/next-env.d.ts
similarity index 100%
rename from next-env.d.ts
rename to apps/site/next-env.d.ts
diff --git a/next.calendar.constants.mjs b/apps/site/next.calendar.constants.mjs
similarity index 100%
rename from next.calendar.constants.mjs
rename to apps/site/next.calendar.constants.mjs
diff --git a/next.calendar.mjs b/apps/site/next.calendar.mjs
similarity index 100%
rename from next.calendar.mjs
rename to apps/site/next.calendar.mjs
diff --git a/next.config.mjs b/apps/site/next.config.mjs
similarity index 100%
rename from next.config.mjs
rename to apps/site/next.config.mjs
diff --git a/next.constants.mjs b/apps/site/next.constants.mjs
similarity index 100%
rename from next.constants.mjs
rename to apps/site/next.constants.mjs
diff --git a/next.dynamic.constants.mjs b/apps/site/next.dynamic.constants.mjs
similarity index 100%
rename from next.dynamic.constants.mjs
rename to apps/site/next.dynamic.constants.mjs
diff --git a/next.dynamic.mjs b/apps/site/next.dynamic.mjs
similarity index 100%
rename from next.dynamic.mjs
rename to apps/site/next.dynamic.mjs
diff --git a/next.fonts.ts b/apps/site/next.fonts.ts
similarity index 100%
rename from next.fonts.ts
rename to apps/site/next.fonts.ts
diff --git a/next.helpers.mjs b/apps/site/next.helpers.mjs
similarity index 100%
rename from next.helpers.mjs
rename to apps/site/next.helpers.mjs
diff --git a/next.json.mjs b/apps/site/next.json.mjs
similarity index 100%
rename from next.json.mjs
rename to apps/site/next.json.mjs
diff --git a/next.locales.mjs b/apps/site/next.locales.mjs
similarity index 100%
rename from next.locales.mjs
rename to apps/site/next.locales.mjs
diff --git a/next.mdx.compiler.mjs b/apps/site/next.mdx.compiler.mjs
similarity index 100%
rename from next.mdx.compiler.mjs
rename to apps/site/next.mdx.compiler.mjs
diff --git a/next.mdx.mjs b/apps/site/next.mdx.mjs
similarity index 100%
rename from next.mdx.mjs
rename to apps/site/next.mdx.mjs
diff --git a/next.mdx.shiki.mjs b/apps/site/next.mdx.shiki.mjs
similarity index 100%
rename from next.mdx.shiki.mjs
rename to apps/site/next.mdx.shiki.mjs
diff --git a/next.mdx.use.client.mjs b/apps/site/next.mdx.use.client.mjs
similarity index 100%
rename from next.mdx.use.client.mjs
rename to apps/site/next.mdx.use.client.mjs
diff --git a/next.mdx.use.mjs b/apps/site/next.mdx.use.mjs
similarity index 100%
rename from next.mdx.use.mjs
rename to apps/site/next.mdx.use.mjs
diff --git a/next.orama.mjs b/apps/site/next.orama.mjs
similarity index 100%
rename from next.orama.mjs
rename to apps/site/next.orama.mjs
diff --git a/next.rewrites.mjs b/apps/site/next.rewrites.mjs
similarity index 100%
rename from next.rewrites.mjs
rename to apps/site/next.rewrites.mjs
diff --git a/apps/site/package.json b/apps/site/package.json
new file mode 100644
index 0000000000000..c40fe1fac17fb
--- /dev/null
+++ b/apps/site/package.json
@@ -0,0 +1,125 @@
+{
+ "type": "module",
+ "private": true,
+ "name": "@nodejs/website",
+ "description": "Nodejs.org Website",
+ "homepage": "https://nodejs.org",
+ "repository": {
+ "type": "git",
+ "url": "git+https://github.com/nodejs/nodejs.org.git"
+ },
+ "author": {
+ "name": "Node.js Website Working Group"
+ },
+ "license": "MIT",
+ "engines": {
+ "node": "v20"
+ },
+ "scripts": {
+ "scripts:release-post": "cross-env NODE_NO_WARNINGS=1 node scripts/release-post/index.mjs",
+ "dev": "cross-env NODE_NO_WARNINGS=1 next dev --turbo",
+ "serve": "npm run dev",
+ "build": "cross-env NODE_NO_WARNINGS=1 next build",
+ "start": "cross-env NODE_NO_WARNINGS=1 next start",
+ "deploy": "cross-env NEXT_PUBLIC_STATIC_EXPORT=true npm run build",
+ "check-types": "tsc --noEmit",
+ "lint:js": "eslint \"**/*.{js,mjs,ts,tsx}\" --cache --cache-strategy=content --cache-location=.eslintjscache",
+ "lint:md": "eslint \"**/*.md?(x)\" --cache --cache-strategy=content --cache-location=.eslintmdcache",
+ "lint:css": "stylelint \"**/*.css\" --allow-empty-input --cache --cache-strategy=content --cache-location=.stylelintcache",
+ "lint": "turbo run lint:md lint:js lint:css",
+ "lint:fix": "turbo run lint:md lint:js lint:css --no-cache -- --fix",
+ "sync-orama": "node ./scripts/orama-search/sync-orama-cloud.mjs",
+ "storybook": "cross-env NODE_NO_WARNINGS=1 storybook dev -p 6006 --quiet --no-open",
+ "storybook:build": "cross-env NODE_NO_WARNINGS=1 storybook build --quiet --webpack-stats-json",
+ "test:unit": "cross-env NODE_NO_WARNINGS=1 jest",
+ "test:unit:watch": "npm run test:unit -- --watch",
+ "test": "turbo test:unit"
+ },
+ "dependencies": {
+ "@heroicons/react": "~2.1.1",
+ "@mdx-js/mdx": "^3.0.1",
+ "@nodevu/core": "~0.1.0",
+ "@orama/highlight": "^0.1.5",
+ "@oramacloud/client": "^1.0.13",
+ "@radix-ui/react-accessible-icon": "^1.0.3",
+ "@radix-ui/react-avatar": "^1.0.4",
+ "@radix-ui/react-dialog": "^1.0.5",
+ "@radix-ui/react-dropdown-menu": "^2.0.6",
+ "@radix-ui/react-label": "^2.0.2",
+ "@radix-ui/react-scroll-area": "^1.0.5",
+ "@radix-ui/react-select": "^2.0.0",
+ "@radix-ui/react-slot": "^1.0.2",
+ "@radix-ui/react-tabs": "^1.0.4",
+ "@radix-ui/react-toast": "^1.1.5",
+ "@savvywombat/tailwindcss-grid-areas": "~4.0.0",
+ "@sentry/nextjs": "~8.7.0",
+ "@tailwindcss/container-queries": "~0.1.1",
+ "@types/node": "20.14.0",
+ "@vcarl/remark-headings": "~0.1.0",
+ "@vercel/analytics": "~1.3.1",
+ "@vercel/speed-insights": "~1.0.10",
+ "autoprefixer": "~10.4.18",
+ "classnames": "~2.5.1",
+ "cross-env": "7.0.3",
+ "dedent": "1.5.3",
+ "feed": "~4.2.2",
+ "github-slugger": "~2.0.0",
+ "glob": "~10.4.1",
+ "gray-matter": "~4.0.3",
+ "next": "~14.2.4",
+ "next-intl": "~3.14.1",
+ "next-themes": "~0.3.0",
+ "postcss": "~8.4.38",
+ "postcss-calc": "~10.0.0",
+ "postcss-import": "~16.1.0",
+ "postcss-mixins": "~10.0.1",
+ "postcss-simple-vars": "~7.0.1",
+ "react": "^18.3.1",
+ "react-dom": "^18.3.1",
+ "rehype-autolink-headings": "~7.1.0",
+ "rehype-slug": "~6.0.0",
+ "remark-gfm": "~4.0.0",
+ "remark-reading-time": "~2.0.1",
+ "semver": "~7.6.0",
+ "shiki": "~1.6.2",
+ "tailwindcss": "^3.4.3",
+ "typescript": "~5.4.2",
+ "unist-util-visit": "~5.0.0",
+ "vfile": "~6.0.1",
+ "vfile-matter": "~5.0.0"
+ },
+ "devDependencies": {
+ "@storybook/addon-controls": "~8.1.5",
+ "@storybook/addon-interactions": "~8.1.5",
+ "@storybook/addon-themes": "~8.1.5",
+ "@storybook/addon-viewport": "~8.1.5",
+ "@storybook/nextjs": "~8.1.5",
+ "@testing-library/jest-dom": "~6.4.5",
+ "@testing-library/react": "~15.0.7",
+ "@testing-library/user-event": "~14.5.2",
+ "@types/jest": "29.5.12",
+ "@types/react": "^18.3.1",
+ "@types/react-dom": "^18.3.0",
+ "@types/semver": "~7.5.8",
+ "@typescript-eslint/eslint-plugin": "7.11.0",
+ "@typescript-eslint/parser": "7.11.0",
+ "eslint": "8.57.0",
+ "eslint-config-next": "~14.2.3",
+ "eslint-config-prettier": "9.1.0",
+ "eslint-plugin-mdx": "3.1.5",
+ "eslint-plugin-no-relative-import-paths": "^1.5.3",
+ "eslint-plugin-storybook": "0.8.0",
+ "handlebars": "4.7.8",
+ "jest": "29.7.0",
+ "jest-environment-jsdom": "29.7.0",
+ "jest-junit": "16.0.0",
+ "remark-frontmatter": "5.0.0",
+ "remark-preset-lint-node": "5.0.2",
+ "storybook": "~8.1.5",
+ "stylelint": "16.6.1",
+ "stylelint-config-standard": "36.0.0",
+ "stylelint-order": "6.0.4",
+ "stylelint-selector-bem-pattern": "4.0.0",
+ "user-agent-data-types": "0.4.2"
+ }
+}
diff --git a/pages/en/about/branding.mdx b/apps/site/pages/en/about/branding.mdx
similarity index 100%
rename from pages/en/about/branding.mdx
rename to apps/site/pages/en/about/branding.mdx
diff --git a/pages/en/about/get-involved/collab-summit.md b/apps/site/pages/en/about/get-involved/collab-summit.md
similarity index 100%
rename from pages/en/about/get-involved/collab-summit.md
rename to apps/site/pages/en/about/get-involved/collab-summit.md
diff --git a/pages/en/about/get-involved/contribute.md b/apps/site/pages/en/about/get-involved/contribute.md
similarity index 100%
rename from pages/en/about/get-involved/contribute.md
rename to apps/site/pages/en/about/get-involved/contribute.md
diff --git a/pages/en/about/get-involved/events.mdx b/apps/site/pages/en/about/get-involved/events.mdx
similarity index 100%
rename from pages/en/about/get-involved/events.mdx
rename to apps/site/pages/en/about/get-involved/events.mdx
diff --git a/pages/en/about/get-involved/index.md b/apps/site/pages/en/about/get-involved/index.md
similarity index 100%
rename from pages/en/about/get-involved/index.md
rename to apps/site/pages/en/about/get-involved/index.md
diff --git a/pages/en/about/governance.md b/apps/site/pages/en/about/governance.md
similarity index 100%
rename from pages/en/about/governance.md
rename to apps/site/pages/en/about/governance.md
diff --git a/pages/en/about/index.mdx b/apps/site/pages/en/about/index.mdx
similarity index 100%
rename from pages/en/about/index.mdx
rename to apps/site/pages/en/about/index.mdx
diff --git a/pages/en/about/previous-releases.mdx b/apps/site/pages/en/about/previous-releases.mdx
similarity index 100%
rename from pages/en/about/previous-releases.mdx
rename to apps/site/pages/en/about/previous-releases.mdx
diff --git a/pages/en/about/security-reporting.mdx b/apps/site/pages/en/about/security-reporting.mdx
similarity index 100%
rename from pages/en/about/security-reporting.mdx
rename to apps/site/pages/en/about/security-reporting.mdx
diff --git a/pages/en/blog/announcements/adjusted-release-schedule-covid.md b/apps/site/pages/en/blog/announcements/adjusted-release-schedule-covid.md
similarity index 100%
rename from pages/en/blog/announcements/adjusted-release-schedule-covid.md
rename to apps/site/pages/en/blog/announcements/adjusted-release-schedule-covid.md
diff --git a/pages/en/blog/announcements/apigee-rising-stack-yahoo.md b/apps/site/pages/en/blog/announcements/apigee-rising-stack-yahoo.md
similarity index 100%
rename from pages/en/blog/announcements/apigee-rising-stack-yahoo.md
rename to apps/site/pages/en/blog/announcements/apigee-rising-stack-yahoo.md
diff --git a/pages/en/blog/announcements/appdynamics-newrelic-opbeat-sphinx.md b/apps/site/pages/en/blog/announcements/appdynamics-newrelic-opbeat-sphinx.md
similarity index 100%
rename from pages/en/blog/announcements/appdynamics-newrelic-opbeat-sphinx.md
rename to apps/site/pages/en/blog/announcements/appdynamics-newrelic-opbeat-sphinx.md
diff --git a/pages/en/blog/announcements/cars-dynatrace.md b/apps/site/pages/en/blog/announcements/cars-dynatrace.md
similarity index 100%
rename from pages/en/blog/announcements/cars-dynatrace.md
rename to apps/site/pages/en/blog/announcements/cars-dynatrace.md
diff --git a/pages/en/blog/announcements/diving-into-the-nodejs-website-redesign.md b/apps/site/pages/en/blog/announcements/diving-into-the-nodejs-website-redesign.md
similarity index 100%
rename from pages/en/blog/announcements/diving-into-the-nodejs-website-redesign.md
rename to apps/site/pages/en/blog/announcements/diving-into-the-nodejs-website-redesign.md
diff --git a/pages/en/blog/announcements/foundation-advances-growth.md b/apps/site/pages/en/blog/announcements/foundation-advances-growth.md
similarity index 100%
rename from pages/en/blog/announcements/foundation-advances-growth.md
rename to apps/site/pages/en/blog/announcements/foundation-advances-growth.md
diff --git a/pages/en/blog/announcements/foundation-elects-board.md b/apps/site/pages/en/blog/announcements/foundation-elects-board.md
similarity index 100%
rename from pages/en/blog/announcements/foundation-elects-board.md
rename to apps/site/pages/en/blog/announcements/foundation-elects-board.md
diff --git a/pages/en/blog/announcements/foundation-express-news.md b/apps/site/pages/en/blog/announcements/foundation-express-news.md
similarity index 100%
rename from pages/en/blog/announcements/foundation-express-news.md
rename to apps/site/pages/en/blog/announcements/foundation-express-news.md
diff --git a/pages/en/blog/announcements/foundation-v4-announce.md b/apps/site/pages/en/blog/announcements/foundation-v4-announce.md
similarity index 100%
rename from pages/en/blog/announcements/foundation-v4-announce.md
rename to apps/site/pages/en/blog/announcements/foundation-v4-announce.md
diff --git a/pages/en/blog/announcements/interactive-2015-keynotes.md b/apps/site/pages/en/blog/announcements/interactive-2015-keynotes.md
similarity index 100%
rename from pages/en/blog/announcements/interactive-2015-keynotes.md
rename to apps/site/pages/en/blog/announcements/interactive-2015-keynotes.md
diff --git a/pages/en/blog/announcements/interactive-2015-programming.md b/apps/site/pages/en/blog/announcements/interactive-2015-programming.md
similarity index 100%
rename from pages/en/blog/announcements/interactive-2015-programming.md
rename to apps/site/pages/en/blog/announcements/interactive-2015-programming.md
diff --git a/pages/en/blog/announcements/interactive-2015.md b/apps/site/pages/en/blog/announcements/interactive-2015.md
similarity index 100%
rename from pages/en/blog/announcements/interactive-2015.md
rename to apps/site/pages/en/blog/announcements/interactive-2015.md
diff --git a/pages/en/blog/announcements/interactive-2016-ams.md b/apps/site/pages/en/blog/announcements/interactive-2016-ams.md
similarity index 100%
rename from pages/en/blog/announcements/interactive-2016-ams.md
rename to apps/site/pages/en/blog/announcements/interactive-2016-ams.md
diff --git a/pages/en/blog/announcements/interactive-2016-north-america-schedule.md b/apps/site/pages/en/blog/announcements/interactive-2016-north-america-schedule.md
similarity index 100%
rename from pages/en/blog/announcements/interactive-2016-north-america-schedule.md
rename to apps/site/pages/en/blog/announcements/interactive-2016-north-america-schedule.md
diff --git a/pages/en/blog/announcements/node-js-march-17-incident.md b/apps/site/pages/en/blog/announcements/node-js-march-17-incident.md
similarity index 100%
rename from pages/en/blog/announcements/node-js-march-17-incident.md
rename to apps/site/pages/en/blog/announcements/node-js-march-17-incident.md
diff --git a/pages/en/blog/announcements/nodejs-certified-developer-program.md b/apps/site/pages/en/blog/announcements/nodejs-certified-developer-program.md
similarity index 100%
rename from pages/en/blog/announcements/nodejs-certified-developer-program.md
rename to apps/site/pages/en/blog/announcements/nodejs-certified-developer-program.md
diff --git a/pages/en/blog/announcements/nodejs-foundation-momentum-release.md b/apps/site/pages/en/blog/announcements/nodejs-foundation-momentum-release.md
similarity index 100%
rename from pages/en/blog/announcements/nodejs-foundation-momentum-release.md
rename to apps/site/pages/en/blog/announcements/nodejs-foundation-momentum-release.md
diff --git a/pages/en/blog/announcements/nodejs-foundation-survey.md b/apps/site/pages/en/blog/announcements/nodejs-foundation-survey.md
similarity index 100%
rename from pages/en/blog/announcements/nodejs-foundation-survey.md
rename to apps/site/pages/en/blog/announcements/nodejs-foundation-survey.md
diff --git a/pages/en/blog/announcements/nodejs-security-project.md b/apps/site/pages/en/blog/announcements/nodejs-security-project.md
similarity index 100%
rename from pages/en/blog/announcements/nodejs-security-project.md
rename to apps/site/pages/en/blog/announcements/nodejs-security-project.md
diff --git a/pages/en/blog/announcements/nodejs-trademarks-transferred-to-openjs-foundation.md b/apps/site/pages/en/blog/announcements/nodejs-trademarks-transferred-to-openjs-foundation.md
similarity index 100%
rename from pages/en/blog/announcements/nodejs-trademarks-transferred-to-openjs-foundation.md
rename to apps/site/pages/en/blog/announcements/nodejs-trademarks-transferred-to-openjs-foundation.md
diff --git a/pages/en/blog/announcements/nodejs16-eol.md b/apps/site/pages/en/blog/announcements/nodejs16-eol.md
similarity index 100%
rename from pages/en/blog/announcements/nodejs16-eol.md
rename to apps/site/pages/en/blog/announcements/nodejs16-eol.md
diff --git a/pages/en/blog/announcements/retiring-the-node-js-community-committee.md b/apps/site/pages/en/blog/announcements/retiring-the-node-js-community-committee.md
similarity index 100%
rename from pages/en/blog/announcements/retiring-the-node-js-community-committee.md
rename to apps/site/pages/en/blog/announcements/retiring-the-node-js-community-committee.md
diff --git a/pages/en/blog/announcements/update-v8-5.4.md b/apps/site/pages/en/blog/announcements/update-v8-5.4.md
similarity index 100%
rename from pages/en/blog/announcements/update-v8-5.4.md
rename to apps/site/pages/en/blog/announcements/update-v8-5.4.md
diff --git a/pages/en/blog/announcements/v18-release-announce.md b/apps/site/pages/en/blog/announcements/v18-release-announce.md
similarity index 100%
rename from pages/en/blog/announcements/v18-release-announce.md
rename to apps/site/pages/en/blog/announcements/v18-release-announce.md
diff --git a/pages/en/blog/announcements/v19-release-announce.md b/apps/site/pages/en/blog/announcements/v19-release-announce.md
similarity index 100%
rename from pages/en/blog/announcements/v19-release-announce.md
rename to apps/site/pages/en/blog/announcements/v19-release-announce.md
diff --git a/pages/en/blog/announcements/v20-release-announce.md b/apps/site/pages/en/blog/announcements/v20-release-announce.md
similarity index 100%
rename from pages/en/blog/announcements/v20-release-announce.md
rename to apps/site/pages/en/blog/announcements/v20-release-announce.md
diff --git a/pages/en/blog/announcements/v21-release-announce.md b/apps/site/pages/en/blog/announcements/v21-release-announce.md
similarity index 100%
rename from pages/en/blog/announcements/v21-release-announce.md
rename to apps/site/pages/en/blog/announcements/v21-release-announce.md
diff --git a/pages/en/blog/announcements/v22-release-announce.md b/apps/site/pages/en/blog/announcements/v22-release-announce.md
similarity index 100%
rename from pages/en/blog/announcements/v22-release-announce.md
rename to apps/site/pages/en/blog/announcements/v22-release-announce.md
diff --git a/pages/en/blog/announcements/v5-to-v7.md b/apps/site/pages/en/blog/announcements/v5-to-v7.md
similarity index 100%
rename from pages/en/blog/announcements/v5-to-v7.md
rename to apps/site/pages/en/blog/announcements/v5-to-v7.md
diff --git a/pages/en/blog/announcements/v6-release.md b/apps/site/pages/en/blog/announcements/v6-release.md
similarity index 100%
rename from pages/en/blog/announcements/v6-release.md
rename to apps/site/pages/en/blog/announcements/v6-release.md
diff --git a/pages/en/blog/announcements/welcome-google.md b/apps/site/pages/en/blog/announcements/welcome-google.md
similarity index 100%
rename from pages/en/blog/announcements/welcome-google.md
rename to apps/site/pages/en/blog/announcements/welcome-google.md
diff --git a/pages/en/blog/announcements/welcome-redhat.md b/apps/site/pages/en/blog/announcements/welcome-redhat.md
similarity index 100%
rename from pages/en/blog/announcements/welcome-redhat.md
rename to apps/site/pages/en/blog/announcements/welcome-redhat.md
diff --git a/pages/en/blog/community/2017-election.md b/apps/site/pages/en/blog/community/2017-election.md
similarity index 100%
rename from pages/en/blog/community/2017-election.md
rename to apps/site/pages/en/blog/community/2017-election.md
diff --git a/pages/en/blog/community/building-nodejs-together.md b/apps/site/pages/en/blog/community/building-nodejs-together.md
similarity index 100%
rename from pages/en/blog/community/building-nodejs-together.md
rename to apps/site/pages/en/blog/community/building-nodejs-together.md
diff --git a/pages/en/blog/community/domain-postmortem.md b/apps/site/pages/en/blog/community/domain-postmortem.md
similarity index 100%
rename from pages/en/blog/community/domain-postmortem.md
rename to apps/site/pages/en/blog/community/domain-postmortem.md
diff --git a/pages/en/blog/community/foundation-benefits-all.md b/apps/site/pages/en/blog/community/foundation-benefits-all.md
similarity index 100%
rename from pages/en/blog/community/foundation-benefits-all.md
rename to apps/site/pages/en/blog/community/foundation-benefits-all.md
diff --git a/pages/en/blog/community/individual-membership.md b/apps/site/pages/en/blog/community/individual-membership.md
similarity index 100%
rename from pages/en/blog/community/individual-membership.md
rename to apps/site/pages/en/blog/community/individual-membership.md
diff --git a/pages/en/blog/community/next-chapter.md b/apps/site/pages/en/blog/community/next-chapter.md
similarity index 100%
rename from pages/en/blog/community/next-chapter.md
rename to apps/site/pages/en/blog/community/next-chapter.md
diff --git a/pages/en/blog/community/node-leaders-building-open-neutral-foundation.md b/apps/site/pages/en/blog/community/node-leaders-building-open-neutral-foundation.md
similarity index 100%
rename from pages/en/blog/community/node-leaders-building-open-neutral-foundation.md
rename to apps/site/pages/en/blog/community/node-leaders-building-open-neutral-foundation.md
diff --git a/pages/en/blog/community/node-v5.md b/apps/site/pages/en/blog/community/node-v5.md
similarity index 100%
rename from pages/en/blog/community/node-v5.md
rename to apps/site/pages/en/blog/community/node-v5.md
diff --git a/pages/en/blog/community/quality-with-speed.md b/apps/site/pages/en/blog/community/quality-with-speed.md
similarity index 100%
rename from pages/en/blog/community/quality-with-speed.md
rename to apps/site/pages/en/blog/community/quality-with-speed.md
diff --git a/pages/en/blog/community/transitions.md b/apps/site/pages/en/blog/community/transitions.md
similarity index 100%
rename from pages/en/blog/community/transitions.md
rename to apps/site/pages/en/blog/community/transitions.md
diff --git a/pages/en/blog/events/collab-summit-2024-london.md b/apps/site/pages/en/blog/events/collab-summit-2024-london.md
similarity index 100%
rename from pages/en/blog/events/collab-summit-2024-london.md
rename to apps/site/pages/en/blog/events/collab-summit-2024-london.md
diff --git a/pages/en/blog/feature/streams2.md b/apps/site/pages/en/blog/feature/streams2.md
similarity index 100%
rename from pages/en/blog/feature/streams2.md
rename to apps/site/pages/en/blog/feature/streams2.md
diff --git a/pages/en/blog/index.md b/apps/site/pages/en/blog/index.md
similarity index 100%
rename from pages/en/blog/index.md
rename to apps/site/pages/en/blog/index.md
diff --git a/pages/en/blog/module/multi-server-continuous-deployment-with-fleet.md b/apps/site/pages/en/blog/module/multi-server-continuous-deployment-with-fleet.md
similarity index 100%
rename from pages/en/blog/module/multi-server-continuous-deployment-with-fleet.md
rename to apps/site/pages/en/blog/module/multi-server-continuous-deployment-with-fleet.md
diff --git a/pages/en/blog/module/service-logging-in-json-with-bunyan.md b/apps/site/pages/en/blog/module/service-logging-in-json-with-bunyan.md
similarity index 100%
rename from pages/en/blog/module/service-logging-in-json-with-bunyan.md
rename to apps/site/pages/en/blog/module/service-logging-in-json-with-bunyan.md
diff --git a/pages/en/blog/npm/2013-outage-postmortem.md b/apps/site/pages/en/blog/npm/2013-outage-postmortem.md
similarity index 100%
rename from pages/en/blog/npm/2013-outage-postmortem.md
rename to apps/site/pages/en/blog/npm/2013-outage-postmortem.md
diff --git a/pages/en/blog/npm/managing-node-js-dependencies-with-shrinkwrap.md b/apps/site/pages/en/blog/npm/managing-node-js-dependencies-with-shrinkwrap.md
similarity index 100%
rename from pages/en/blog/npm/managing-node-js-dependencies-with-shrinkwrap.md
rename to apps/site/pages/en/blog/npm/managing-node-js-dependencies-with-shrinkwrap.md
diff --git a/pages/en/blog/npm/npm-1-0-global-vs-local-installation.md b/apps/site/pages/en/blog/npm/npm-1-0-global-vs-local-installation.md
similarity index 100%
rename from pages/en/blog/npm/npm-1-0-global-vs-local-installation.md
rename to apps/site/pages/en/blog/npm/npm-1-0-global-vs-local-installation.md
diff --git a/pages/en/blog/npm/npm-1-0-link.md b/apps/site/pages/en/blog/npm/npm-1-0-link.md
similarity index 100%
rename from pages/en/blog/npm/npm-1-0-link.md
rename to apps/site/pages/en/blog/npm/npm-1-0-link.md
diff --git a/pages/en/blog/npm/npm-1-0-released.md b/apps/site/pages/en/blog/npm/npm-1-0-released.md
similarity index 100%
rename from pages/en/blog/npm/npm-1-0-released.md
rename to apps/site/pages/en/blog/npm/npm-1-0-released.md
diff --git a/pages/en/blog/npm/npm-1-0-the-new-ls.md b/apps/site/pages/en/blog/npm/npm-1-0-the-new-ls.md
similarity index 100%
rename from pages/en/blog/npm/npm-1-0-the-new-ls.md
rename to apps/site/pages/en/blog/npm/npm-1-0-the-new-ls.md
diff --git a/pages/en/blog/npm/peer-dependencies.mdx b/apps/site/pages/en/blog/npm/peer-dependencies.mdx
similarity index 100%
rename from pages/en/blog/npm/peer-dependencies.mdx
rename to apps/site/pages/en/blog/npm/peer-dependencies.mdx
diff --git a/pages/en/blog/release/v0.10.0.md b/apps/site/pages/en/blog/release/v0.10.0.md
similarity index 100%
rename from pages/en/blog/release/v0.10.0.md
rename to apps/site/pages/en/blog/release/v0.10.0.md
diff --git a/pages/en/blog/release/v0.10.1.md b/apps/site/pages/en/blog/release/v0.10.1.md
similarity index 100%
rename from pages/en/blog/release/v0.10.1.md
rename to apps/site/pages/en/blog/release/v0.10.1.md
diff --git a/pages/en/blog/release/v0.10.10.md b/apps/site/pages/en/blog/release/v0.10.10.md
similarity index 100%
rename from pages/en/blog/release/v0.10.10.md
rename to apps/site/pages/en/blog/release/v0.10.10.md
diff --git a/pages/en/blog/release/v0.10.11.md b/apps/site/pages/en/blog/release/v0.10.11.md
similarity index 100%
rename from pages/en/blog/release/v0.10.11.md
rename to apps/site/pages/en/blog/release/v0.10.11.md
diff --git a/pages/en/blog/release/v0.10.12.md b/apps/site/pages/en/blog/release/v0.10.12.md
similarity index 100%
rename from pages/en/blog/release/v0.10.12.md
rename to apps/site/pages/en/blog/release/v0.10.12.md
diff --git a/pages/en/blog/release/v0.10.13.md b/apps/site/pages/en/blog/release/v0.10.13.md
similarity index 100%
rename from pages/en/blog/release/v0.10.13.md
rename to apps/site/pages/en/blog/release/v0.10.13.md
diff --git a/pages/en/blog/release/v0.10.14.md b/apps/site/pages/en/blog/release/v0.10.14.md
similarity index 100%
rename from pages/en/blog/release/v0.10.14.md
rename to apps/site/pages/en/blog/release/v0.10.14.md
diff --git a/pages/en/blog/release/v0.10.15.md b/apps/site/pages/en/blog/release/v0.10.15.md
similarity index 100%
rename from pages/en/blog/release/v0.10.15.md
rename to apps/site/pages/en/blog/release/v0.10.15.md
diff --git a/pages/en/blog/release/v0.10.16.md b/apps/site/pages/en/blog/release/v0.10.16.md
similarity index 100%
rename from pages/en/blog/release/v0.10.16.md
rename to apps/site/pages/en/blog/release/v0.10.16.md
diff --git a/pages/en/blog/release/v0.10.17.md b/apps/site/pages/en/blog/release/v0.10.17.md
similarity index 100%
rename from pages/en/blog/release/v0.10.17.md
rename to apps/site/pages/en/blog/release/v0.10.17.md
diff --git a/pages/en/blog/release/v0.10.18.md b/apps/site/pages/en/blog/release/v0.10.18.md
similarity index 100%
rename from pages/en/blog/release/v0.10.18.md
rename to apps/site/pages/en/blog/release/v0.10.18.md
diff --git a/pages/en/blog/release/v0.10.19.md b/apps/site/pages/en/blog/release/v0.10.19.md
similarity index 100%
rename from pages/en/blog/release/v0.10.19.md
rename to apps/site/pages/en/blog/release/v0.10.19.md
diff --git a/pages/en/blog/release/v0.10.2.md b/apps/site/pages/en/blog/release/v0.10.2.md
similarity index 100%
rename from pages/en/blog/release/v0.10.2.md
rename to apps/site/pages/en/blog/release/v0.10.2.md
diff --git a/pages/en/blog/release/v0.10.20.md b/apps/site/pages/en/blog/release/v0.10.20.md
similarity index 100%
rename from pages/en/blog/release/v0.10.20.md
rename to apps/site/pages/en/blog/release/v0.10.20.md
diff --git a/pages/en/blog/release/v0.10.21.md b/apps/site/pages/en/blog/release/v0.10.21.md
similarity index 100%
rename from pages/en/blog/release/v0.10.21.md
rename to apps/site/pages/en/blog/release/v0.10.21.md
diff --git a/pages/en/blog/release/v0.10.22.md b/apps/site/pages/en/blog/release/v0.10.22.md
similarity index 100%
rename from pages/en/blog/release/v0.10.22.md
rename to apps/site/pages/en/blog/release/v0.10.22.md
diff --git a/pages/en/blog/release/v0.10.23.md b/apps/site/pages/en/blog/release/v0.10.23.md
similarity index 100%
rename from pages/en/blog/release/v0.10.23.md
rename to apps/site/pages/en/blog/release/v0.10.23.md
diff --git a/pages/en/blog/release/v0.10.24.md b/apps/site/pages/en/blog/release/v0.10.24.md
similarity index 100%
rename from pages/en/blog/release/v0.10.24.md
rename to apps/site/pages/en/blog/release/v0.10.24.md
diff --git a/pages/en/blog/release/v0.10.25.md b/apps/site/pages/en/blog/release/v0.10.25.md
similarity index 100%
rename from pages/en/blog/release/v0.10.25.md
rename to apps/site/pages/en/blog/release/v0.10.25.md
diff --git a/pages/en/blog/release/v0.10.26.md b/apps/site/pages/en/blog/release/v0.10.26.md
similarity index 100%
rename from pages/en/blog/release/v0.10.26.md
rename to apps/site/pages/en/blog/release/v0.10.26.md
diff --git a/pages/en/blog/release/v0.10.27.md b/apps/site/pages/en/blog/release/v0.10.27.md
similarity index 100%
rename from pages/en/blog/release/v0.10.27.md
rename to apps/site/pages/en/blog/release/v0.10.27.md
diff --git a/pages/en/blog/release/v0.10.28.md b/apps/site/pages/en/blog/release/v0.10.28.md
similarity index 100%
rename from pages/en/blog/release/v0.10.28.md
rename to apps/site/pages/en/blog/release/v0.10.28.md
diff --git a/pages/en/blog/release/v0.10.29.md b/apps/site/pages/en/blog/release/v0.10.29.md
similarity index 100%
rename from pages/en/blog/release/v0.10.29.md
rename to apps/site/pages/en/blog/release/v0.10.29.md
diff --git a/pages/en/blog/release/v0.10.3.md b/apps/site/pages/en/blog/release/v0.10.3.md
similarity index 100%
rename from pages/en/blog/release/v0.10.3.md
rename to apps/site/pages/en/blog/release/v0.10.3.md
diff --git a/pages/en/blog/release/v0.10.30.md b/apps/site/pages/en/blog/release/v0.10.30.md
similarity index 100%
rename from pages/en/blog/release/v0.10.30.md
rename to apps/site/pages/en/blog/release/v0.10.30.md
diff --git a/pages/en/blog/release/v0.10.31.md b/apps/site/pages/en/blog/release/v0.10.31.md
similarity index 100%
rename from pages/en/blog/release/v0.10.31.md
rename to apps/site/pages/en/blog/release/v0.10.31.md
diff --git a/pages/en/blog/release/v0.10.32.md b/apps/site/pages/en/blog/release/v0.10.32.md
similarity index 100%
rename from pages/en/blog/release/v0.10.32.md
rename to apps/site/pages/en/blog/release/v0.10.32.md
diff --git a/pages/en/blog/release/v0.10.33.md b/apps/site/pages/en/blog/release/v0.10.33.md
similarity index 100%
rename from pages/en/blog/release/v0.10.33.md
rename to apps/site/pages/en/blog/release/v0.10.33.md
diff --git a/pages/en/blog/release/v0.10.34.md b/apps/site/pages/en/blog/release/v0.10.34.md
similarity index 100%
rename from pages/en/blog/release/v0.10.34.md
rename to apps/site/pages/en/blog/release/v0.10.34.md
diff --git a/pages/en/blog/release/v0.10.35.md b/apps/site/pages/en/blog/release/v0.10.35.md
similarity index 100%
rename from pages/en/blog/release/v0.10.35.md
rename to apps/site/pages/en/blog/release/v0.10.35.md
diff --git a/pages/en/blog/release/v0.10.36.md b/apps/site/pages/en/blog/release/v0.10.36.md
similarity index 100%
rename from pages/en/blog/release/v0.10.36.md
rename to apps/site/pages/en/blog/release/v0.10.36.md
diff --git a/pages/en/blog/release/v0.10.37.md b/apps/site/pages/en/blog/release/v0.10.37.md
similarity index 100%
rename from pages/en/blog/release/v0.10.37.md
rename to apps/site/pages/en/blog/release/v0.10.37.md
diff --git a/pages/en/blog/release/v0.10.38.md b/apps/site/pages/en/blog/release/v0.10.38.md
similarity index 100%
rename from pages/en/blog/release/v0.10.38.md
rename to apps/site/pages/en/blog/release/v0.10.38.md
diff --git a/pages/en/blog/release/v0.10.39.md b/apps/site/pages/en/blog/release/v0.10.39.md
similarity index 100%
rename from pages/en/blog/release/v0.10.39.md
rename to apps/site/pages/en/blog/release/v0.10.39.md
diff --git a/pages/en/blog/release/v0.10.4.md b/apps/site/pages/en/blog/release/v0.10.4.md
similarity index 100%
rename from pages/en/blog/release/v0.10.4.md
rename to apps/site/pages/en/blog/release/v0.10.4.md
diff --git a/pages/en/blog/release/v0.10.40.md b/apps/site/pages/en/blog/release/v0.10.40.md
similarity index 100%
rename from pages/en/blog/release/v0.10.40.md
rename to apps/site/pages/en/blog/release/v0.10.40.md
diff --git a/pages/en/blog/release/v0.10.41.md b/apps/site/pages/en/blog/release/v0.10.41.md
similarity index 100%
rename from pages/en/blog/release/v0.10.41.md
rename to apps/site/pages/en/blog/release/v0.10.41.md
diff --git a/pages/en/blog/release/v0.10.42.md b/apps/site/pages/en/blog/release/v0.10.42.md
similarity index 100%
rename from pages/en/blog/release/v0.10.42.md
rename to apps/site/pages/en/blog/release/v0.10.42.md
diff --git a/pages/en/blog/release/v0.10.43.md b/apps/site/pages/en/blog/release/v0.10.43.md
similarity index 100%
rename from pages/en/blog/release/v0.10.43.md
rename to apps/site/pages/en/blog/release/v0.10.43.md
diff --git a/pages/en/blog/release/v0.10.44.md b/apps/site/pages/en/blog/release/v0.10.44.md
similarity index 100%
rename from pages/en/blog/release/v0.10.44.md
rename to apps/site/pages/en/blog/release/v0.10.44.md
diff --git a/pages/en/blog/release/v0.10.45.md b/apps/site/pages/en/blog/release/v0.10.45.md
similarity index 100%
rename from pages/en/blog/release/v0.10.45.md
rename to apps/site/pages/en/blog/release/v0.10.45.md
diff --git a/pages/en/blog/release/v0.10.46.md b/apps/site/pages/en/blog/release/v0.10.46.md
similarity index 100%
rename from pages/en/blog/release/v0.10.46.md
rename to apps/site/pages/en/blog/release/v0.10.46.md
diff --git a/pages/en/blog/release/v0.10.47.md b/apps/site/pages/en/blog/release/v0.10.47.md
similarity index 100%
rename from pages/en/blog/release/v0.10.47.md
rename to apps/site/pages/en/blog/release/v0.10.47.md
diff --git a/pages/en/blog/release/v0.10.48.md b/apps/site/pages/en/blog/release/v0.10.48.md
similarity index 100%
rename from pages/en/blog/release/v0.10.48.md
rename to apps/site/pages/en/blog/release/v0.10.48.md
diff --git a/pages/en/blog/release/v0.10.5.md b/apps/site/pages/en/blog/release/v0.10.5.md
similarity index 100%
rename from pages/en/blog/release/v0.10.5.md
rename to apps/site/pages/en/blog/release/v0.10.5.md
diff --git a/pages/en/blog/release/v0.10.6.md b/apps/site/pages/en/blog/release/v0.10.6.md
similarity index 100%
rename from pages/en/blog/release/v0.10.6.md
rename to apps/site/pages/en/blog/release/v0.10.6.md
diff --git a/pages/en/blog/release/v0.10.7.md b/apps/site/pages/en/blog/release/v0.10.7.md
similarity index 100%
rename from pages/en/blog/release/v0.10.7.md
rename to apps/site/pages/en/blog/release/v0.10.7.md
diff --git a/pages/en/blog/release/v0.10.8.md b/apps/site/pages/en/blog/release/v0.10.8.md
similarity index 100%
rename from pages/en/blog/release/v0.10.8.md
rename to apps/site/pages/en/blog/release/v0.10.8.md
diff --git a/pages/en/blog/release/v0.10.9.md b/apps/site/pages/en/blog/release/v0.10.9.md
similarity index 100%
rename from pages/en/blog/release/v0.10.9.md
rename to apps/site/pages/en/blog/release/v0.10.9.md
diff --git a/pages/en/blog/release/v0.11.0.md b/apps/site/pages/en/blog/release/v0.11.0.md
similarity index 100%
rename from pages/en/blog/release/v0.11.0.md
rename to apps/site/pages/en/blog/release/v0.11.0.md
diff --git a/pages/en/blog/release/v0.11.1.md b/apps/site/pages/en/blog/release/v0.11.1.md
similarity index 100%
rename from pages/en/blog/release/v0.11.1.md
rename to apps/site/pages/en/blog/release/v0.11.1.md
diff --git a/pages/en/blog/release/v0.11.10.md b/apps/site/pages/en/blog/release/v0.11.10.md
similarity index 100%
rename from pages/en/blog/release/v0.11.10.md
rename to apps/site/pages/en/blog/release/v0.11.10.md
diff --git a/pages/en/blog/release/v0.11.11.md b/apps/site/pages/en/blog/release/v0.11.11.md
similarity index 100%
rename from pages/en/blog/release/v0.11.11.md
rename to apps/site/pages/en/blog/release/v0.11.11.md
diff --git a/pages/en/blog/release/v0.11.12.md b/apps/site/pages/en/blog/release/v0.11.12.md
similarity index 100%
rename from pages/en/blog/release/v0.11.12.md
rename to apps/site/pages/en/blog/release/v0.11.12.md
diff --git a/pages/en/blog/release/v0.11.14.md b/apps/site/pages/en/blog/release/v0.11.14.md
similarity index 100%
rename from pages/en/blog/release/v0.11.14.md
rename to apps/site/pages/en/blog/release/v0.11.14.md
diff --git a/pages/en/blog/release/v0.11.15.md b/apps/site/pages/en/blog/release/v0.11.15.md
similarity index 100%
rename from pages/en/blog/release/v0.11.15.md
rename to apps/site/pages/en/blog/release/v0.11.15.md
diff --git a/pages/en/blog/release/v0.11.16.md b/apps/site/pages/en/blog/release/v0.11.16.md
similarity index 100%
rename from pages/en/blog/release/v0.11.16.md
rename to apps/site/pages/en/blog/release/v0.11.16.md
diff --git a/pages/en/blog/release/v0.11.2.md b/apps/site/pages/en/blog/release/v0.11.2.md
similarity index 100%
rename from pages/en/blog/release/v0.11.2.md
rename to apps/site/pages/en/blog/release/v0.11.2.md
diff --git a/pages/en/blog/release/v0.11.3.md b/apps/site/pages/en/blog/release/v0.11.3.md
similarity index 100%
rename from pages/en/blog/release/v0.11.3.md
rename to apps/site/pages/en/blog/release/v0.11.3.md
diff --git a/pages/en/blog/release/v0.11.4.md b/apps/site/pages/en/blog/release/v0.11.4.md
similarity index 100%
rename from pages/en/blog/release/v0.11.4.md
rename to apps/site/pages/en/blog/release/v0.11.4.md
diff --git a/pages/en/blog/release/v0.11.5.md b/apps/site/pages/en/blog/release/v0.11.5.md
similarity index 100%
rename from pages/en/blog/release/v0.11.5.md
rename to apps/site/pages/en/blog/release/v0.11.5.md
diff --git a/pages/en/blog/release/v0.11.6.md b/apps/site/pages/en/blog/release/v0.11.6.md
similarity index 100%
rename from pages/en/blog/release/v0.11.6.md
rename to apps/site/pages/en/blog/release/v0.11.6.md
diff --git a/pages/en/blog/release/v0.11.7.md b/apps/site/pages/en/blog/release/v0.11.7.md
similarity index 100%
rename from pages/en/blog/release/v0.11.7.md
rename to apps/site/pages/en/blog/release/v0.11.7.md
diff --git a/pages/en/blog/release/v0.11.8.md b/apps/site/pages/en/blog/release/v0.11.8.md
similarity index 100%
rename from pages/en/blog/release/v0.11.8.md
rename to apps/site/pages/en/blog/release/v0.11.8.md
diff --git a/pages/en/blog/release/v0.11.9.md b/apps/site/pages/en/blog/release/v0.11.9.md
similarity index 100%
rename from pages/en/blog/release/v0.11.9.md
rename to apps/site/pages/en/blog/release/v0.11.9.md
diff --git a/pages/en/blog/release/v0.12.0.md b/apps/site/pages/en/blog/release/v0.12.0.md
similarity index 100%
rename from pages/en/blog/release/v0.12.0.md
rename to apps/site/pages/en/blog/release/v0.12.0.md
diff --git a/pages/en/blog/release/v0.12.1.md b/apps/site/pages/en/blog/release/v0.12.1.md
similarity index 100%
rename from pages/en/blog/release/v0.12.1.md
rename to apps/site/pages/en/blog/release/v0.12.1.md
diff --git a/pages/en/blog/release/v0.12.10.md b/apps/site/pages/en/blog/release/v0.12.10.md
similarity index 100%
rename from pages/en/blog/release/v0.12.10.md
rename to apps/site/pages/en/blog/release/v0.12.10.md
diff --git a/pages/en/blog/release/v0.12.11.md b/apps/site/pages/en/blog/release/v0.12.11.md
similarity index 100%
rename from pages/en/blog/release/v0.12.11.md
rename to apps/site/pages/en/blog/release/v0.12.11.md
diff --git a/pages/en/blog/release/v0.12.12.md b/apps/site/pages/en/blog/release/v0.12.12.md
similarity index 100%
rename from pages/en/blog/release/v0.12.12.md
rename to apps/site/pages/en/blog/release/v0.12.12.md
diff --git a/pages/en/blog/release/v0.12.13.md b/apps/site/pages/en/blog/release/v0.12.13.md
similarity index 100%
rename from pages/en/blog/release/v0.12.13.md
rename to apps/site/pages/en/blog/release/v0.12.13.md
diff --git a/pages/en/blog/release/v0.12.14.md b/apps/site/pages/en/blog/release/v0.12.14.md
similarity index 100%
rename from pages/en/blog/release/v0.12.14.md
rename to apps/site/pages/en/blog/release/v0.12.14.md
diff --git a/pages/en/blog/release/v0.12.15.md b/apps/site/pages/en/blog/release/v0.12.15.md
similarity index 100%
rename from pages/en/blog/release/v0.12.15.md
rename to apps/site/pages/en/blog/release/v0.12.15.md
diff --git a/pages/en/blog/release/v0.12.16.md b/apps/site/pages/en/blog/release/v0.12.16.md
similarity index 100%
rename from pages/en/blog/release/v0.12.16.md
rename to apps/site/pages/en/blog/release/v0.12.16.md
diff --git a/pages/en/blog/release/v0.12.17.md b/apps/site/pages/en/blog/release/v0.12.17.md
similarity index 100%
rename from pages/en/blog/release/v0.12.17.md
rename to apps/site/pages/en/blog/release/v0.12.17.md
diff --git a/pages/en/blog/release/v0.12.18.md b/apps/site/pages/en/blog/release/v0.12.18.md
similarity index 100%
rename from pages/en/blog/release/v0.12.18.md
rename to apps/site/pages/en/blog/release/v0.12.18.md
diff --git a/pages/en/blog/release/v0.12.2.md b/apps/site/pages/en/blog/release/v0.12.2.md
similarity index 100%
rename from pages/en/blog/release/v0.12.2.md
rename to apps/site/pages/en/blog/release/v0.12.2.md
diff --git a/pages/en/blog/release/v0.12.3.md b/apps/site/pages/en/blog/release/v0.12.3.md
similarity index 100%
rename from pages/en/blog/release/v0.12.3.md
rename to apps/site/pages/en/blog/release/v0.12.3.md
diff --git a/pages/en/blog/release/v0.12.4.md b/apps/site/pages/en/blog/release/v0.12.4.md
similarity index 100%
rename from pages/en/blog/release/v0.12.4.md
rename to apps/site/pages/en/blog/release/v0.12.4.md
diff --git a/pages/en/blog/release/v0.12.5.md b/apps/site/pages/en/blog/release/v0.12.5.md
similarity index 100%
rename from pages/en/blog/release/v0.12.5.md
rename to apps/site/pages/en/blog/release/v0.12.5.md
diff --git a/pages/en/blog/release/v0.12.6.md b/apps/site/pages/en/blog/release/v0.12.6.md
similarity index 100%
rename from pages/en/blog/release/v0.12.6.md
rename to apps/site/pages/en/blog/release/v0.12.6.md
diff --git a/pages/en/blog/release/v0.12.7.md b/apps/site/pages/en/blog/release/v0.12.7.md
similarity index 100%
rename from pages/en/blog/release/v0.12.7.md
rename to apps/site/pages/en/blog/release/v0.12.7.md
diff --git a/pages/en/blog/release/v0.12.8.md b/apps/site/pages/en/blog/release/v0.12.8.md
similarity index 100%
rename from pages/en/blog/release/v0.12.8.md
rename to apps/site/pages/en/blog/release/v0.12.8.md
diff --git a/pages/en/blog/release/v0.12.9.md b/apps/site/pages/en/blog/release/v0.12.9.md
similarity index 100%
rename from pages/en/blog/release/v0.12.9.md
rename to apps/site/pages/en/blog/release/v0.12.9.md
diff --git a/pages/en/blog/release/v0.4.10.md b/apps/site/pages/en/blog/release/v0.4.10.md
similarity index 100%
rename from pages/en/blog/release/v0.4.10.md
rename to apps/site/pages/en/blog/release/v0.4.10.md
diff --git a/pages/en/blog/release/v0.4.11.md b/apps/site/pages/en/blog/release/v0.4.11.md
similarity index 100%
rename from pages/en/blog/release/v0.4.11.md
rename to apps/site/pages/en/blog/release/v0.4.11.md
diff --git a/pages/en/blog/release/v0.4.12.md b/apps/site/pages/en/blog/release/v0.4.12.md
similarity index 100%
rename from pages/en/blog/release/v0.4.12.md
rename to apps/site/pages/en/blog/release/v0.4.12.md
diff --git a/pages/en/blog/release/v0.4.3.md b/apps/site/pages/en/blog/release/v0.4.3.md
similarity index 100%
rename from pages/en/blog/release/v0.4.3.md
rename to apps/site/pages/en/blog/release/v0.4.3.md
diff --git a/pages/en/blog/release/v0.4.4.md b/apps/site/pages/en/blog/release/v0.4.4.md
similarity index 100%
rename from pages/en/blog/release/v0.4.4.md
rename to apps/site/pages/en/blog/release/v0.4.4.md
diff --git a/pages/en/blog/release/v0.4.5.md b/apps/site/pages/en/blog/release/v0.4.5.md
similarity index 100%
rename from pages/en/blog/release/v0.4.5.md
rename to apps/site/pages/en/blog/release/v0.4.5.md
diff --git a/pages/en/blog/release/v0.4.6.md b/apps/site/pages/en/blog/release/v0.4.6.md
similarity index 100%
rename from pages/en/blog/release/v0.4.6.md
rename to apps/site/pages/en/blog/release/v0.4.6.md
diff --git a/pages/en/blog/release/v0.4.7.md b/apps/site/pages/en/blog/release/v0.4.7.md
similarity index 100%
rename from pages/en/blog/release/v0.4.7.md
rename to apps/site/pages/en/blog/release/v0.4.7.md
diff --git a/pages/en/blog/release/v0.4.8.md b/apps/site/pages/en/blog/release/v0.4.8.md
similarity index 100%
rename from pages/en/blog/release/v0.4.8.md
rename to apps/site/pages/en/blog/release/v0.4.8.md
diff --git a/pages/en/blog/release/v0.4.9.md b/apps/site/pages/en/blog/release/v0.4.9.md
similarity index 100%
rename from pages/en/blog/release/v0.4.9.md
rename to apps/site/pages/en/blog/release/v0.4.9.md
diff --git a/pages/en/blog/release/v0.5.0.md b/apps/site/pages/en/blog/release/v0.5.0.md
similarity index 100%
rename from pages/en/blog/release/v0.5.0.md
rename to apps/site/pages/en/blog/release/v0.5.0.md
diff --git a/pages/en/blog/release/v0.5.1.md b/apps/site/pages/en/blog/release/v0.5.1.md
similarity index 100%
rename from pages/en/blog/release/v0.5.1.md
rename to apps/site/pages/en/blog/release/v0.5.1.md
diff --git a/pages/en/blog/release/v0.5.10.md b/apps/site/pages/en/blog/release/v0.5.10.md
similarity index 100%
rename from pages/en/blog/release/v0.5.10.md
rename to apps/site/pages/en/blog/release/v0.5.10.md
diff --git a/pages/en/blog/release/v0.5.2.md b/apps/site/pages/en/blog/release/v0.5.2.md
similarity index 100%
rename from pages/en/blog/release/v0.5.2.md
rename to apps/site/pages/en/blog/release/v0.5.2.md
diff --git a/pages/en/blog/release/v0.5.3.md b/apps/site/pages/en/blog/release/v0.5.3.md
similarity index 100%
rename from pages/en/blog/release/v0.5.3.md
rename to apps/site/pages/en/blog/release/v0.5.3.md
diff --git a/pages/en/blog/release/v0.5.4.md b/apps/site/pages/en/blog/release/v0.5.4.md
similarity index 100%
rename from pages/en/blog/release/v0.5.4.md
rename to apps/site/pages/en/blog/release/v0.5.4.md
diff --git a/pages/en/blog/release/v0.5.5.md b/apps/site/pages/en/blog/release/v0.5.5.md
similarity index 100%
rename from pages/en/blog/release/v0.5.5.md
rename to apps/site/pages/en/blog/release/v0.5.5.md
diff --git a/pages/en/blog/release/v0.5.6.md b/apps/site/pages/en/blog/release/v0.5.6.md
similarity index 100%
rename from pages/en/blog/release/v0.5.6.md
rename to apps/site/pages/en/blog/release/v0.5.6.md
diff --git a/pages/en/blog/release/v0.5.7.md b/apps/site/pages/en/blog/release/v0.5.7.md
similarity index 100%
rename from pages/en/blog/release/v0.5.7.md
rename to apps/site/pages/en/blog/release/v0.5.7.md
diff --git a/pages/en/blog/release/v0.5.8.md b/apps/site/pages/en/blog/release/v0.5.8.md
similarity index 100%
rename from pages/en/blog/release/v0.5.8.md
rename to apps/site/pages/en/blog/release/v0.5.8.md
diff --git a/pages/en/blog/release/v0.5.9.md b/apps/site/pages/en/blog/release/v0.5.9.md
similarity index 100%
rename from pages/en/blog/release/v0.5.9.md
rename to apps/site/pages/en/blog/release/v0.5.9.md
diff --git a/pages/en/blog/release/v0.6.0.md b/apps/site/pages/en/blog/release/v0.6.0.md
similarity index 100%
rename from pages/en/blog/release/v0.6.0.md
rename to apps/site/pages/en/blog/release/v0.6.0.md
diff --git a/pages/en/blog/release/v0.6.1.md b/apps/site/pages/en/blog/release/v0.6.1.md
similarity index 100%
rename from pages/en/blog/release/v0.6.1.md
rename to apps/site/pages/en/blog/release/v0.6.1.md
diff --git a/pages/en/blog/release/v0.6.10.md b/apps/site/pages/en/blog/release/v0.6.10.md
similarity index 100%
rename from pages/en/blog/release/v0.6.10.md
rename to apps/site/pages/en/blog/release/v0.6.10.md
diff --git a/pages/en/blog/release/v0.6.11.md b/apps/site/pages/en/blog/release/v0.6.11.md
similarity index 100%
rename from pages/en/blog/release/v0.6.11.md
rename to apps/site/pages/en/blog/release/v0.6.11.md
diff --git a/pages/en/blog/release/v0.6.12.md b/apps/site/pages/en/blog/release/v0.6.12.md
similarity index 100%
rename from pages/en/blog/release/v0.6.12.md
rename to apps/site/pages/en/blog/release/v0.6.12.md
diff --git a/pages/en/blog/release/v0.6.13.md b/apps/site/pages/en/blog/release/v0.6.13.md
similarity index 100%
rename from pages/en/blog/release/v0.6.13.md
rename to apps/site/pages/en/blog/release/v0.6.13.md
diff --git a/pages/en/blog/release/v0.6.14.md b/apps/site/pages/en/blog/release/v0.6.14.md
similarity index 100%
rename from pages/en/blog/release/v0.6.14.md
rename to apps/site/pages/en/blog/release/v0.6.14.md
diff --git a/pages/en/blog/release/v0.6.15.md b/apps/site/pages/en/blog/release/v0.6.15.md
similarity index 100%
rename from pages/en/blog/release/v0.6.15.md
rename to apps/site/pages/en/blog/release/v0.6.15.md
diff --git a/pages/en/blog/release/v0.6.16.md b/apps/site/pages/en/blog/release/v0.6.16.md
similarity index 100%
rename from pages/en/blog/release/v0.6.16.md
rename to apps/site/pages/en/blog/release/v0.6.16.md
diff --git a/pages/en/blog/release/v0.6.17.md b/apps/site/pages/en/blog/release/v0.6.17.md
similarity index 100%
rename from pages/en/blog/release/v0.6.17.md
rename to apps/site/pages/en/blog/release/v0.6.17.md
diff --git a/pages/en/blog/release/v0.6.18.md b/apps/site/pages/en/blog/release/v0.6.18.md
similarity index 100%
rename from pages/en/blog/release/v0.6.18.md
rename to apps/site/pages/en/blog/release/v0.6.18.md
diff --git a/pages/en/blog/release/v0.6.19.md b/apps/site/pages/en/blog/release/v0.6.19.md
similarity index 100%
rename from pages/en/blog/release/v0.6.19.md
rename to apps/site/pages/en/blog/release/v0.6.19.md
diff --git a/pages/en/blog/release/v0.6.2.md b/apps/site/pages/en/blog/release/v0.6.2.md
similarity index 100%
rename from pages/en/blog/release/v0.6.2.md
rename to apps/site/pages/en/blog/release/v0.6.2.md
diff --git a/pages/en/blog/release/v0.6.20.md b/apps/site/pages/en/blog/release/v0.6.20.md
similarity index 100%
rename from pages/en/blog/release/v0.6.20.md
rename to apps/site/pages/en/blog/release/v0.6.20.md
diff --git a/pages/en/blog/release/v0.6.21.md b/apps/site/pages/en/blog/release/v0.6.21.md
similarity index 100%
rename from pages/en/blog/release/v0.6.21.md
rename to apps/site/pages/en/blog/release/v0.6.21.md
diff --git a/pages/en/blog/release/v0.6.3.md b/apps/site/pages/en/blog/release/v0.6.3.md
similarity index 100%
rename from pages/en/blog/release/v0.6.3.md
rename to apps/site/pages/en/blog/release/v0.6.3.md
diff --git a/pages/en/blog/release/v0.6.4.md b/apps/site/pages/en/blog/release/v0.6.4.md
similarity index 100%
rename from pages/en/blog/release/v0.6.4.md
rename to apps/site/pages/en/blog/release/v0.6.4.md
diff --git a/pages/en/blog/release/v0.6.5.md b/apps/site/pages/en/blog/release/v0.6.5.md
similarity index 100%
rename from pages/en/blog/release/v0.6.5.md
rename to apps/site/pages/en/blog/release/v0.6.5.md
diff --git a/pages/en/blog/release/v0.6.6.md b/apps/site/pages/en/blog/release/v0.6.6.md
similarity index 100%
rename from pages/en/blog/release/v0.6.6.md
rename to apps/site/pages/en/blog/release/v0.6.6.md
diff --git a/pages/en/blog/release/v0.6.7.md b/apps/site/pages/en/blog/release/v0.6.7.md
similarity index 100%
rename from pages/en/blog/release/v0.6.7.md
rename to apps/site/pages/en/blog/release/v0.6.7.md
diff --git a/pages/en/blog/release/v0.6.8.md b/apps/site/pages/en/blog/release/v0.6.8.md
similarity index 100%
rename from pages/en/blog/release/v0.6.8.md
rename to apps/site/pages/en/blog/release/v0.6.8.md
diff --git a/pages/en/blog/release/v0.6.9.md b/apps/site/pages/en/blog/release/v0.6.9.md
similarity index 100%
rename from pages/en/blog/release/v0.6.9.md
rename to apps/site/pages/en/blog/release/v0.6.9.md
diff --git a/pages/en/blog/release/v0.7.0.md b/apps/site/pages/en/blog/release/v0.7.0.md
similarity index 100%
rename from pages/en/blog/release/v0.7.0.md
rename to apps/site/pages/en/blog/release/v0.7.0.md
diff --git a/pages/en/blog/release/v0.7.1.md b/apps/site/pages/en/blog/release/v0.7.1.md
similarity index 100%
rename from pages/en/blog/release/v0.7.1.md
rename to apps/site/pages/en/blog/release/v0.7.1.md
diff --git a/pages/en/blog/release/v0.7.10.md b/apps/site/pages/en/blog/release/v0.7.10.md
similarity index 100%
rename from pages/en/blog/release/v0.7.10.md
rename to apps/site/pages/en/blog/release/v0.7.10.md
diff --git a/pages/en/blog/release/v0.7.11.md b/apps/site/pages/en/blog/release/v0.7.11.md
similarity index 100%
rename from pages/en/blog/release/v0.7.11.md
rename to apps/site/pages/en/blog/release/v0.7.11.md
diff --git a/pages/en/blog/release/v0.7.12.md b/apps/site/pages/en/blog/release/v0.7.12.md
similarity index 100%
rename from pages/en/blog/release/v0.7.12.md
rename to apps/site/pages/en/blog/release/v0.7.12.md
diff --git a/pages/en/blog/release/v0.7.2.md b/apps/site/pages/en/blog/release/v0.7.2.md
similarity index 100%
rename from pages/en/blog/release/v0.7.2.md
rename to apps/site/pages/en/blog/release/v0.7.2.md
diff --git a/pages/en/blog/release/v0.7.3.md b/apps/site/pages/en/blog/release/v0.7.3.md
similarity index 100%
rename from pages/en/blog/release/v0.7.3.md
rename to apps/site/pages/en/blog/release/v0.7.3.md
diff --git a/pages/en/blog/release/v0.7.4.md b/apps/site/pages/en/blog/release/v0.7.4.md
similarity index 100%
rename from pages/en/blog/release/v0.7.4.md
rename to apps/site/pages/en/blog/release/v0.7.4.md
diff --git a/pages/en/blog/release/v0.7.5.md b/apps/site/pages/en/blog/release/v0.7.5.md
similarity index 100%
rename from pages/en/blog/release/v0.7.5.md
rename to apps/site/pages/en/blog/release/v0.7.5.md
diff --git a/pages/en/blog/release/v0.7.6.md b/apps/site/pages/en/blog/release/v0.7.6.md
similarity index 100%
rename from pages/en/blog/release/v0.7.6.md
rename to apps/site/pages/en/blog/release/v0.7.6.md
diff --git a/pages/en/blog/release/v0.7.7.md b/apps/site/pages/en/blog/release/v0.7.7.md
similarity index 100%
rename from pages/en/blog/release/v0.7.7.md
rename to apps/site/pages/en/blog/release/v0.7.7.md
diff --git a/pages/en/blog/release/v0.7.8.md b/apps/site/pages/en/blog/release/v0.7.8.md
similarity index 100%
rename from pages/en/blog/release/v0.7.8.md
rename to apps/site/pages/en/blog/release/v0.7.8.md
diff --git a/pages/en/blog/release/v0.7.9.md b/apps/site/pages/en/blog/release/v0.7.9.md
similarity index 100%
rename from pages/en/blog/release/v0.7.9.md
rename to apps/site/pages/en/blog/release/v0.7.9.md
diff --git a/pages/en/blog/release/v0.8.0.md b/apps/site/pages/en/blog/release/v0.8.0.md
similarity index 100%
rename from pages/en/blog/release/v0.8.0.md
rename to apps/site/pages/en/blog/release/v0.8.0.md
diff --git a/pages/en/blog/release/v0.8.1.md b/apps/site/pages/en/blog/release/v0.8.1.md
similarity index 100%
rename from pages/en/blog/release/v0.8.1.md
rename to apps/site/pages/en/blog/release/v0.8.1.md
diff --git a/pages/en/blog/release/v0.8.10.md b/apps/site/pages/en/blog/release/v0.8.10.md
similarity index 100%
rename from pages/en/blog/release/v0.8.10.md
rename to apps/site/pages/en/blog/release/v0.8.10.md
diff --git a/pages/en/blog/release/v0.8.11.md b/apps/site/pages/en/blog/release/v0.8.11.md
similarity index 100%
rename from pages/en/blog/release/v0.8.11.md
rename to apps/site/pages/en/blog/release/v0.8.11.md
diff --git a/pages/en/blog/release/v0.8.12.md b/apps/site/pages/en/blog/release/v0.8.12.md
similarity index 100%
rename from pages/en/blog/release/v0.8.12.md
rename to apps/site/pages/en/blog/release/v0.8.12.md
diff --git a/pages/en/blog/release/v0.8.13.md b/apps/site/pages/en/blog/release/v0.8.13.md
similarity index 100%
rename from pages/en/blog/release/v0.8.13.md
rename to apps/site/pages/en/blog/release/v0.8.13.md
diff --git a/pages/en/blog/release/v0.8.14.md b/apps/site/pages/en/blog/release/v0.8.14.md
similarity index 100%
rename from pages/en/blog/release/v0.8.14.md
rename to apps/site/pages/en/blog/release/v0.8.14.md
diff --git a/pages/en/blog/release/v0.8.15.md b/apps/site/pages/en/blog/release/v0.8.15.md
similarity index 100%
rename from pages/en/blog/release/v0.8.15.md
rename to apps/site/pages/en/blog/release/v0.8.15.md
diff --git a/pages/en/blog/release/v0.8.16.md b/apps/site/pages/en/blog/release/v0.8.16.md
similarity index 100%
rename from pages/en/blog/release/v0.8.16.md
rename to apps/site/pages/en/blog/release/v0.8.16.md
diff --git a/pages/en/blog/release/v0.8.17.md b/apps/site/pages/en/blog/release/v0.8.17.md
similarity index 100%
rename from pages/en/blog/release/v0.8.17.md
rename to apps/site/pages/en/blog/release/v0.8.17.md
diff --git a/pages/en/blog/release/v0.8.18.md b/apps/site/pages/en/blog/release/v0.8.18.md
similarity index 100%
rename from pages/en/blog/release/v0.8.18.md
rename to apps/site/pages/en/blog/release/v0.8.18.md
diff --git a/pages/en/blog/release/v0.8.19.md b/apps/site/pages/en/blog/release/v0.8.19.md
similarity index 100%
rename from pages/en/blog/release/v0.8.19.md
rename to apps/site/pages/en/blog/release/v0.8.19.md
diff --git a/pages/en/blog/release/v0.8.2.md b/apps/site/pages/en/blog/release/v0.8.2.md
similarity index 100%
rename from pages/en/blog/release/v0.8.2.md
rename to apps/site/pages/en/blog/release/v0.8.2.md
diff --git a/pages/en/blog/release/v0.8.20.md b/apps/site/pages/en/blog/release/v0.8.20.md
similarity index 100%
rename from pages/en/blog/release/v0.8.20.md
rename to apps/site/pages/en/blog/release/v0.8.20.md
diff --git a/pages/en/blog/release/v0.8.21.md b/apps/site/pages/en/blog/release/v0.8.21.md
similarity index 100%
rename from pages/en/blog/release/v0.8.21.md
rename to apps/site/pages/en/blog/release/v0.8.21.md
diff --git a/pages/en/blog/release/v0.8.22.md b/apps/site/pages/en/blog/release/v0.8.22.md
similarity index 100%
rename from pages/en/blog/release/v0.8.22.md
rename to apps/site/pages/en/blog/release/v0.8.22.md
diff --git a/pages/en/blog/release/v0.8.23.md b/apps/site/pages/en/blog/release/v0.8.23.md
similarity index 100%
rename from pages/en/blog/release/v0.8.23.md
rename to apps/site/pages/en/blog/release/v0.8.23.md
diff --git a/pages/en/blog/release/v0.8.24.md b/apps/site/pages/en/blog/release/v0.8.24.md
similarity index 100%
rename from pages/en/blog/release/v0.8.24.md
rename to apps/site/pages/en/blog/release/v0.8.24.md
diff --git a/pages/en/blog/release/v0.8.25.md b/apps/site/pages/en/blog/release/v0.8.25.md
similarity index 100%
rename from pages/en/blog/release/v0.8.25.md
rename to apps/site/pages/en/blog/release/v0.8.25.md
diff --git a/pages/en/blog/release/v0.8.26.md b/apps/site/pages/en/blog/release/v0.8.26.md
similarity index 100%
rename from pages/en/blog/release/v0.8.26.md
rename to apps/site/pages/en/blog/release/v0.8.26.md
diff --git a/pages/en/blog/release/v0.8.27.md b/apps/site/pages/en/blog/release/v0.8.27.md
similarity index 100%
rename from pages/en/blog/release/v0.8.27.md
rename to apps/site/pages/en/blog/release/v0.8.27.md
diff --git a/pages/en/blog/release/v0.8.28.md b/apps/site/pages/en/blog/release/v0.8.28.md
similarity index 100%
rename from pages/en/blog/release/v0.8.28.md
rename to apps/site/pages/en/blog/release/v0.8.28.md
diff --git a/pages/en/blog/release/v0.8.3.md b/apps/site/pages/en/blog/release/v0.8.3.md
similarity index 100%
rename from pages/en/blog/release/v0.8.3.md
rename to apps/site/pages/en/blog/release/v0.8.3.md
diff --git a/pages/en/blog/release/v0.8.4.md b/apps/site/pages/en/blog/release/v0.8.4.md
similarity index 100%
rename from pages/en/blog/release/v0.8.4.md
rename to apps/site/pages/en/blog/release/v0.8.4.md
diff --git a/pages/en/blog/release/v0.8.5.md b/apps/site/pages/en/blog/release/v0.8.5.md
similarity index 100%
rename from pages/en/blog/release/v0.8.5.md
rename to apps/site/pages/en/blog/release/v0.8.5.md
diff --git a/pages/en/blog/release/v0.8.6.md b/apps/site/pages/en/blog/release/v0.8.6.md
similarity index 100%
rename from pages/en/blog/release/v0.8.6.md
rename to apps/site/pages/en/blog/release/v0.8.6.md
diff --git a/pages/en/blog/release/v0.8.7.md b/apps/site/pages/en/blog/release/v0.8.7.md
similarity index 100%
rename from pages/en/blog/release/v0.8.7.md
rename to apps/site/pages/en/blog/release/v0.8.7.md
diff --git a/pages/en/blog/release/v0.8.8.md b/apps/site/pages/en/blog/release/v0.8.8.md
similarity index 100%
rename from pages/en/blog/release/v0.8.8.md
rename to apps/site/pages/en/blog/release/v0.8.8.md
diff --git a/pages/en/blog/release/v0.8.9.md b/apps/site/pages/en/blog/release/v0.8.9.md
similarity index 100%
rename from pages/en/blog/release/v0.8.9.md
rename to apps/site/pages/en/blog/release/v0.8.9.md
diff --git a/pages/en/blog/release/v0.9.0.md b/apps/site/pages/en/blog/release/v0.9.0.md
similarity index 100%
rename from pages/en/blog/release/v0.9.0.md
rename to apps/site/pages/en/blog/release/v0.9.0.md
diff --git a/pages/en/blog/release/v0.9.1.md b/apps/site/pages/en/blog/release/v0.9.1.md
similarity index 100%
rename from pages/en/blog/release/v0.9.1.md
rename to apps/site/pages/en/blog/release/v0.9.1.md
diff --git a/pages/en/blog/release/v0.9.10.md b/apps/site/pages/en/blog/release/v0.9.10.md
similarity index 100%
rename from pages/en/blog/release/v0.9.10.md
rename to apps/site/pages/en/blog/release/v0.9.10.md
diff --git a/pages/en/blog/release/v0.9.11.md b/apps/site/pages/en/blog/release/v0.9.11.md
similarity index 100%
rename from pages/en/blog/release/v0.9.11.md
rename to apps/site/pages/en/blog/release/v0.9.11.md
diff --git a/pages/en/blog/release/v0.9.12.md b/apps/site/pages/en/blog/release/v0.9.12.md
similarity index 100%
rename from pages/en/blog/release/v0.9.12.md
rename to apps/site/pages/en/blog/release/v0.9.12.md
diff --git a/pages/en/blog/release/v0.9.2.md b/apps/site/pages/en/blog/release/v0.9.2.md
similarity index 100%
rename from pages/en/blog/release/v0.9.2.md
rename to apps/site/pages/en/blog/release/v0.9.2.md
diff --git a/pages/en/blog/release/v0.9.3.md b/apps/site/pages/en/blog/release/v0.9.3.md
similarity index 100%
rename from pages/en/blog/release/v0.9.3.md
rename to apps/site/pages/en/blog/release/v0.9.3.md
diff --git a/pages/en/blog/release/v0.9.4.md b/apps/site/pages/en/blog/release/v0.9.4.md
similarity index 100%
rename from pages/en/blog/release/v0.9.4.md
rename to apps/site/pages/en/blog/release/v0.9.4.md
diff --git a/pages/en/blog/release/v0.9.5.md b/apps/site/pages/en/blog/release/v0.9.5.md
similarity index 100%
rename from pages/en/blog/release/v0.9.5.md
rename to apps/site/pages/en/blog/release/v0.9.5.md
diff --git a/pages/en/blog/release/v0.9.6.md b/apps/site/pages/en/blog/release/v0.9.6.md
similarity index 100%
rename from pages/en/blog/release/v0.9.6.md
rename to apps/site/pages/en/blog/release/v0.9.6.md
diff --git a/pages/en/blog/release/v0.9.7.md b/apps/site/pages/en/blog/release/v0.9.7.md
similarity index 100%
rename from pages/en/blog/release/v0.9.7.md
rename to apps/site/pages/en/blog/release/v0.9.7.md
diff --git a/pages/en/blog/release/v0.9.8.md b/apps/site/pages/en/blog/release/v0.9.8.md
similarity index 100%
rename from pages/en/blog/release/v0.9.8.md
rename to apps/site/pages/en/blog/release/v0.9.8.md
diff --git a/pages/en/blog/release/v10.0.0.md b/apps/site/pages/en/blog/release/v10.0.0.md
similarity index 100%
rename from pages/en/blog/release/v10.0.0.md
rename to apps/site/pages/en/blog/release/v10.0.0.md
diff --git a/pages/en/blog/release/v10.1.0.md b/apps/site/pages/en/blog/release/v10.1.0.md
similarity index 100%
rename from pages/en/blog/release/v10.1.0.md
rename to apps/site/pages/en/blog/release/v10.1.0.md
diff --git a/pages/en/blog/release/v10.10.0.md b/apps/site/pages/en/blog/release/v10.10.0.md
similarity index 100%
rename from pages/en/blog/release/v10.10.0.md
rename to apps/site/pages/en/blog/release/v10.10.0.md
diff --git a/pages/en/blog/release/v10.11.0.md b/apps/site/pages/en/blog/release/v10.11.0.md
similarity index 100%
rename from pages/en/blog/release/v10.11.0.md
rename to apps/site/pages/en/blog/release/v10.11.0.md
diff --git a/pages/en/blog/release/v10.12.0.md b/apps/site/pages/en/blog/release/v10.12.0.md
similarity index 100%
rename from pages/en/blog/release/v10.12.0.md
rename to apps/site/pages/en/blog/release/v10.12.0.md
diff --git a/pages/en/blog/release/v10.13.0.md b/apps/site/pages/en/blog/release/v10.13.0.md
similarity index 100%
rename from pages/en/blog/release/v10.13.0.md
rename to apps/site/pages/en/blog/release/v10.13.0.md
diff --git a/pages/en/blog/release/v10.14.0.md b/apps/site/pages/en/blog/release/v10.14.0.md
similarity index 100%
rename from pages/en/blog/release/v10.14.0.md
rename to apps/site/pages/en/blog/release/v10.14.0.md
diff --git a/pages/en/blog/release/v10.14.1.md b/apps/site/pages/en/blog/release/v10.14.1.md
similarity index 100%
rename from pages/en/blog/release/v10.14.1.md
rename to apps/site/pages/en/blog/release/v10.14.1.md
diff --git a/pages/en/blog/release/v10.14.2.md b/apps/site/pages/en/blog/release/v10.14.2.md
similarity index 100%
rename from pages/en/blog/release/v10.14.2.md
rename to apps/site/pages/en/blog/release/v10.14.2.md
diff --git a/pages/en/blog/release/v10.15.0.md b/apps/site/pages/en/blog/release/v10.15.0.md
similarity index 100%
rename from pages/en/blog/release/v10.15.0.md
rename to apps/site/pages/en/blog/release/v10.15.0.md
diff --git a/pages/en/blog/release/v10.15.1.md b/apps/site/pages/en/blog/release/v10.15.1.md
similarity index 100%
rename from pages/en/blog/release/v10.15.1.md
rename to apps/site/pages/en/blog/release/v10.15.1.md
diff --git a/pages/en/blog/release/v10.15.2.md b/apps/site/pages/en/blog/release/v10.15.2.md
similarity index 100%
rename from pages/en/blog/release/v10.15.2.md
rename to apps/site/pages/en/blog/release/v10.15.2.md
diff --git a/pages/en/blog/release/v10.15.3.md b/apps/site/pages/en/blog/release/v10.15.3.md
similarity index 100%
rename from pages/en/blog/release/v10.15.3.md
rename to apps/site/pages/en/blog/release/v10.15.3.md
diff --git a/pages/en/blog/release/v10.16.0.md b/apps/site/pages/en/blog/release/v10.16.0.md
similarity index 100%
rename from pages/en/blog/release/v10.16.0.md
rename to apps/site/pages/en/blog/release/v10.16.0.md
diff --git a/pages/en/blog/release/v10.16.1.md b/apps/site/pages/en/blog/release/v10.16.1.md
similarity index 100%
rename from pages/en/blog/release/v10.16.1.md
rename to apps/site/pages/en/blog/release/v10.16.1.md
diff --git a/pages/en/blog/release/v10.16.2.md b/apps/site/pages/en/blog/release/v10.16.2.md
similarity index 100%
rename from pages/en/blog/release/v10.16.2.md
rename to apps/site/pages/en/blog/release/v10.16.2.md
diff --git a/pages/en/blog/release/v10.16.3.md b/apps/site/pages/en/blog/release/v10.16.3.md
similarity index 100%
rename from pages/en/blog/release/v10.16.3.md
rename to apps/site/pages/en/blog/release/v10.16.3.md
diff --git a/pages/en/blog/release/v10.17.0.md b/apps/site/pages/en/blog/release/v10.17.0.md
similarity index 100%
rename from pages/en/blog/release/v10.17.0.md
rename to apps/site/pages/en/blog/release/v10.17.0.md
diff --git a/pages/en/blog/release/v10.18.0.md b/apps/site/pages/en/blog/release/v10.18.0.md
similarity index 100%
rename from pages/en/blog/release/v10.18.0.md
rename to apps/site/pages/en/blog/release/v10.18.0.md
diff --git a/pages/en/blog/release/v10.18.1.md b/apps/site/pages/en/blog/release/v10.18.1.md
similarity index 100%
rename from pages/en/blog/release/v10.18.1.md
rename to apps/site/pages/en/blog/release/v10.18.1.md
diff --git a/pages/en/blog/release/v10.19.0.md b/apps/site/pages/en/blog/release/v10.19.0.md
similarity index 100%
rename from pages/en/blog/release/v10.19.0.md
rename to apps/site/pages/en/blog/release/v10.19.0.md
diff --git a/pages/en/blog/release/v10.2.0.md b/apps/site/pages/en/blog/release/v10.2.0.md
similarity index 100%
rename from pages/en/blog/release/v10.2.0.md
rename to apps/site/pages/en/blog/release/v10.2.0.md
diff --git a/pages/en/blog/release/v10.2.1.md b/apps/site/pages/en/blog/release/v10.2.1.md
similarity index 100%
rename from pages/en/blog/release/v10.2.1.md
rename to apps/site/pages/en/blog/release/v10.2.1.md
diff --git a/pages/en/blog/release/v10.20.0.md b/apps/site/pages/en/blog/release/v10.20.0.md
similarity index 100%
rename from pages/en/blog/release/v10.20.0.md
rename to apps/site/pages/en/blog/release/v10.20.0.md
diff --git a/pages/en/blog/release/v10.20.1.md b/apps/site/pages/en/blog/release/v10.20.1.md
similarity index 100%
rename from pages/en/blog/release/v10.20.1.md
rename to apps/site/pages/en/blog/release/v10.20.1.md
diff --git a/pages/en/blog/release/v10.21.0.md b/apps/site/pages/en/blog/release/v10.21.0.md
similarity index 100%
rename from pages/en/blog/release/v10.21.0.md
rename to apps/site/pages/en/blog/release/v10.21.0.md
diff --git a/pages/en/blog/release/v10.22.0.md b/apps/site/pages/en/blog/release/v10.22.0.md
similarity index 100%
rename from pages/en/blog/release/v10.22.0.md
rename to apps/site/pages/en/blog/release/v10.22.0.md
diff --git a/pages/en/blog/release/v10.22.1.md b/apps/site/pages/en/blog/release/v10.22.1.md
similarity index 100%
rename from pages/en/blog/release/v10.22.1.md
rename to apps/site/pages/en/blog/release/v10.22.1.md
diff --git a/pages/en/blog/release/v10.23.0.md b/apps/site/pages/en/blog/release/v10.23.0.md
similarity index 100%
rename from pages/en/blog/release/v10.23.0.md
rename to apps/site/pages/en/blog/release/v10.23.0.md
diff --git a/pages/en/blog/release/v10.23.1.md b/apps/site/pages/en/blog/release/v10.23.1.md
similarity index 100%
rename from pages/en/blog/release/v10.23.1.md
rename to apps/site/pages/en/blog/release/v10.23.1.md
diff --git a/pages/en/blog/release/v10.23.2.md b/apps/site/pages/en/blog/release/v10.23.2.md
similarity index 100%
rename from pages/en/blog/release/v10.23.2.md
rename to apps/site/pages/en/blog/release/v10.23.2.md
diff --git a/pages/en/blog/release/v10.23.3.md b/apps/site/pages/en/blog/release/v10.23.3.md
similarity index 100%
rename from pages/en/blog/release/v10.23.3.md
rename to apps/site/pages/en/blog/release/v10.23.3.md
diff --git a/pages/en/blog/release/v10.24.0.md b/apps/site/pages/en/blog/release/v10.24.0.md
similarity index 100%
rename from pages/en/blog/release/v10.24.0.md
rename to apps/site/pages/en/blog/release/v10.24.0.md
diff --git a/pages/en/blog/release/v10.24.1.md b/apps/site/pages/en/blog/release/v10.24.1.md
similarity index 100%
rename from pages/en/blog/release/v10.24.1.md
rename to apps/site/pages/en/blog/release/v10.24.1.md
diff --git a/pages/en/blog/release/v10.3.0.md b/apps/site/pages/en/blog/release/v10.3.0.md
similarity index 100%
rename from pages/en/blog/release/v10.3.0.md
rename to apps/site/pages/en/blog/release/v10.3.0.md
diff --git a/pages/en/blog/release/v10.4.0.md b/apps/site/pages/en/blog/release/v10.4.0.md
similarity index 100%
rename from pages/en/blog/release/v10.4.0.md
rename to apps/site/pages/en/blog/release/v10.4.0.md
diff --git a/pages/en/blog/release/v10.4.1.md b/apps/site/pages/en/blog/release/v10.4.1.md
similarity index 100%
rename from pages/en/blog/release/v10.4.1.md
rename to apps/site/pages/en/blog/release/v10.4.1.md
diff --git a/pages/en/blog/release/v10.5.0.md b/apps/site/pages/en/blog/release/v10.5.0.md
similarity index 100%
rename from pages/en/blog/release/v10.5.0.md
rename to apps/site/pages/en/blog/release/v10.5.0.md
diff --git a/pages/en/blog/release/v10.6.0.md b/apps/site/pages/en/blog/release/v10.6.0.md
similarity index 100%
rename from pages/en/blog/release/v10.6.0.md
rename to apps/site/pages/en/blog/release/v10.6.0.md
diff --git a/pages/en/blog/release/v10.7.0.md b/apps/site/pages/en/blog/release/v10.7.0.md
similarity index 100%
rename from pages/en/blog/release/v10.7.0.md
rename to apps/site/pages/en/blog/release/v10.7.0.md
diff --git a/pages/en/blog/release/v10.8.0.md b/apps/site/pages/en/blog/release/v10.8.0.md
similarity index 100%
rename from pages/en/blog/release/v10.8.0.md
rename to apps/site/pages/en/blog/release/v10.8.0.md
diff --git a/pages/en/blog/release/v10.9.0.md b/apps/site/pages/en/blog/release/v10.9.0.md
similarity index 100%
rename from pages/en/blog/release/v10.9.0.md
rename to apps/site/pages/en/blog/release/v10.9.0.md
diff --git a/pages/en/blog/release/v11.0.0.md b/apps/site/pages/en/blog/release/v11.0.0.md
similarity index 100%
rename from pages/en/blog/release/v11.0.0.md
rename to apps/site/pages/en/blog/release/v11.0.0.md
diff --git a/pages/en/blog/release/v11.1.0.md b/apps/site/pages/en/blog/release/v11.1.0.md
similarity index 100%
rename from pages/en/blog/release/v11.1.0.md
rename to apps/site/pages/en/blog/release/v11.1.0.md
diff --git a/pages/en/blog/release/v11.10.0.md b/apps/site/pages/en/blog/release/v11.10.0.md
similarity index 100%
rename from pages/en/blog/release/v11.10.0.md
rename to apps/site/pages/en/blog/release/v11.10.0.md
diff --git a/pages/en/blog/release/v11.10.1.md b/apps/site/pages/en/blog/release/v11.10.1.md
similarity index 100%
rename from pages/en/blog/release/v11.10.1.md
rename to apps/site/pages/en/blog/release/v11.10.1.md
diff --git a/pages/en/blog/release/v11.11.0.md b/apps/site/pages/en/blog/release/v11.11.0.md
similarity index 100%
rename from pages/en/blog/release/v11.11.0.md
rename to apps/site/pages/en/blog/release/v11.11.0.md
diff --git a/pages/en/blog/release/v11.12.0.md b/apps/site/pages/en/blog/release/v11.12.0.md
similarity index 100%
rename from pages/en/blog/release/v11.12.0.md
rename to apps/site/pages/en/blog/release/v11.12.0.md
diff --git a/pages/en/blog/release/v11.13.0.md b/apps/site/pages/en/blog/release/v11.13.0.md
similarity index 100%
rename from pages/en/blog/release/v11.13.0.md
rename to apps/site/pages/en/blog/release/v11.13.0.md
diff --git a/pages/en/blog/release/v11.14.0.md b/apps/site/pages/en/blog/release/v11.14.0.md
similarity index 100%
rename from pages/en/blog/release/v11.14.0.md
rename to apps/site/pages/en/blog/release/v11.14.0.md
diff --git a/pages/en/blog/release/v11.15.0.md b/apps/site/pages/en/blog/release/v11.15.0.md
similarity index 100%
rename from pages/en/blog/release/v11.15.0.md
rename to apps/site/pages/en/blog/release/v11.15.0.md
diff --git a/pages/en/blog/release/v11.2.0.md b/apps/site/pages/en/blog/release/v11.2.0.md
similarity index 100%
rename from pages/en/blog/release/v11.2.0.md
rename to apps/site/pages/en/blog/release/v11.2.0.md
diff --git a/pages/en/blog/release/v11.3.0.md b/apps/site/pages/en/blog/release/v11.3.0.md
similarity index 100%
rename from pages/en/blog/release/v11.3.0.md
rename to apps/site/pages/en/blog/release/v11.3.0.md
diff --git a/pages/en/blog/release/v11.4.0.md b/apps/site/pages/en/blog/release/v11.4.0.md
similarity index 100%
rename from pages/en/blog/release/v11.4.0.md
rename to apps/site/pages/en/blog/release/v11.4.0.md
diff --git a/pages/en/blog/release/v11.5.0.md b/apps/site/pages/en/blog/release/v11.5.0.md
similarity index 100%
rename from pages/en/blog/release/v11.5.0.md
rename to apps/site/pages/en/blog/release/v11.5.0.md
diff --git a/pages/en/blog/release/v11.6.0.md b/apps/site/pages/en/blog/release/v11.6.0.md
similarity index 100%
rename from pages/en/blog/release/v11.6.0.md
rename to apps/site/pages/en/blog/release/v11.6.0.md
diff --git a/pages/en/blog/release/v11.7.0.md b/apps/site/pages/en/blog/release/v11.7.0.md
similarity index 100%
rename from pages/en/blog/release/v11.7.0.md
rename to apps/site/pages/en/blog/release/v11.7.0.md
diff --git a/pages/en/blog/release/v11.8.0.md b/apps/site/pages/en/blog/release/v11.8.0.md
similarity index 100%
rename from pages/en/blog/release/v11.8.0.md
rename to apps/site/pages/en/blog/release/v11.8.0.md
diff --git a/pages/en/blog/release/v11.9.0.md b/apps/site/pages/en/blog/release/v11.9.0.md
similarity index 100%
rename from pages/en/blog/release/v11.9.0.md
rename to apps/site/pages/en/blog/release/v11.9.0.md
diff --git a/pages/en/blog/release/v12.0.0.md b/apps/site/pages/en/blog/release/v12.0.0.md
similarity index 100%
rename from pages/en/blog/release/v12.0.0.md
rename to apps/site/pages/en/blog/release/v12.0.0.md
diff --git a/pages/en/blog/release/v12.1.0.md b/apps/site/pages/en/blog/release/v12.1.0.md
similarity index 100%
rename from pages/en/blog/release/v12.1.0.md
rename to apps/site/pages/en/blog/release/v12.1.0.md
diff --git a/pages/en/blog/release/v12.10.0.md b/apps/site/pages/en/blog/release/v12.10.0.md
similarity index 100%
rename from pages/en/blog/release/v12.10.0.md
rename to apps/site/pages/en/blog/release/v12.10.0.md
diff --git a/pages/en/blog/release/v12.11.0.md b/apps/site/pages/en/blog/release/v12.11.0.md
similarity index 100%
rename from pages/en/blog/release/v12.11.0.md
rename to apps/site/pages/en/blog/release/v12.11.0.md
diff --git a/pages/en/blog/release/v12.11.1.md b/apps/site/pages/en/blog/release/v12.11.1.md
similarity index 100%
rename from pages/en/blog/release/v12.11.1.md
rename to apps/site/pages/en/blog/release/v12.11.1.md
diff --git a/pages/en/blog/release/v12.12.0.md b/apps/site/pages/en/blog/release/v12.12.0.md
similarity index 100%
rename from pages/en/blog/release/v12.12.0.md
rename to apps/site/pages/en/blog/release/v12.12.0.md
diff --git a/pages/en/blog/release/v12.13.0.md b/apps/site/pages/en/blog/release/v12.13.0.md
similarity index 100%
rename from pages/en/blog/release/v12.13.0.md
rename to apps/site/pages/en/blog/release/v12.13.0.md
diff --git a/pages/en/blog/release/v12.13.1.md b/apps/site/pages/en/blog/release/v12.13.1.md
similarity index 100%
rename from pages/en/blog/release/v12.13.1.md
rename to apps/site/pages/en/blog/release/v12.13.1.md
diff --git a/pages/en/blog/release/v12.14.0.md b/apps/site/pages/en/blog/release/v12.14.0.md
similarity index 100%
rename from pages/en/blog/release/v12.14.0.md
rename to apps/site/pages/en/blog/release/v12.14.0.md
diff --git a/pages/en/blog/release/v12.14.1.md b/apps/site/pages/en/blog/release/v12.14.1.md
similarity index 100%
rename from pages/en/blog/release/v12.14.1.md
rename to apps/site/pages/en/blog/release/v12.14.1.md
diff --git a/pages/en/blog/release/v12.15.0.md b/apps/site/pages/en/blog/release/v12.15.0.md
similarity index 100%
rename from pages/en/blog/release/v12.15.0.md
rename to apps/site/pages/en/blog/release/v12.15.0.md
diff --git a/pages/en/blog/release/v12.16.0.md b/apps/site/pages/en/blog/release/v12.16.0.md
similarity index 100%
rename from pages/en/blog/release/v12.16.0.md
rename to apps/site/pages/en/blog/release/v12.16.0.md
diff --git a/pages/en/blog/release/v12.16.1.md b/apps/site/pages/en/blog/release/v12.16.1.md
similarity index 100%
rename from pages/en/blog/release/v12.16.1.md
rename to apps/site/pages/en/blog/release/v12.16.1.md
diff --git a/pages/en/blog/release/v12.16.2.md b/apps/site/pages/en/blog/release/v12.16.2.md
similarity index 100%
rename from pages/en/blog/release/v12.16.2.md
rename to apps/site/pages/en/blog/release/v12.16.2.md
diff --git a/pages/en/blog/release/v12.16.3.md b/apps/site/pages/en/blog/release/v12.16.3.md
similarity index 100%
rename from pages/en/blog/release/v12.16.3.md
rename to apps/site/pages/en/blog/release/v12.16.3.md
diff --git a/pages/en/blog/release/v12.17.0.md b/apps/site/pages/en/blog/release/v12.17.0.md
similarity index 100%
rename from pages/en/blog/release/v12.17.0.md
rename to apps/site/pages/en/blog/release/v12.17.0.md
diff --git a/pages/en/blog/release/v12.18.0.md b/apps/site/pages/en/blog/release/v12.18.0.md
similarity index 100%
rename from pages/en/blog/release/v12.18.0.md
rename to apps/site/pages/en/blog/release/v12.18.0.md
diff --git a/pages/en/blog/release/v12.18.1.md b/apps/site/pages/en/blog/release/v12.18.1.md
similarity index 100%
rename from pages/en/blog/release/v12.18.1.md
rename to apps/site/pages/en/blog/release/v12.18.1.md
diff --git a/pages/en/blog/release/v12.18.2.md b/apps/site/pages/en/blog/release/v12.18.2.md
similarity index 100%
rename from pages/en/blog/release/v12.18.2.md
rename to apps/site/pages/en/blog/release/v12.18.2.md
diff --git a/pages/en/blog/release/v12.18.3.md b/apps/site/pages/en/blog/release/v12.18.3.md
similarity index 100%
rename from pages/en/blog/release/v12.18.3.md
rename to apps/site/pages/en/blog/release/v12.18.3.md
diff --git a/pages/en/blog/release/v12.18.4.md b/apps/site/pages/en/blog/release/v12.18.4.md
similarity index 100%
rename from pages/en/blog/release/v12.18.4.md
rename to apps/site/pages/en/blog/release/v12.18.4.md
diff --git a/pages/en/blog/release/v12.19.0.md b/apps/site/pages/en/blog/release/v12.19.0.md
similarity index 100%
rename from pages/en/blog/release/v12.19.0.md
rename to apps/site/pages/en/blog/release/v12.19.0.md
diff --git a/pages/en/blog/release/v12.19.1.md b/apps/site/pages/en/blog/release/v12.19.1.md
similarity index 100%
rename from pages/en/blog/release/v12.19.1.md
rename to apps/site/pages/en/blog/release/v12.19.1.md
diff --git a/pages/en/blog/release/v12.2.0.md b/apps/site/pages/en/blog/release/v12.2.0.md
similarity index 100%
rename from pages/en/blog/release/v12.2.0.md
rename to apps/site/pages/en/blog/release/v12.2.0.md
diff --git a/pages/en/blog/release/v12.20.0.md b/apps/site/pages/en/blog/release/v12.20.0.md
similarity index 100%
rename from pages/en/blog/release/v12.20.0.md
rename to apps/site/pages/en/blog/release/v12.20.0.md
diff --git a/pages/en/blog/release/v12.20.1.md b/apps/site/pages/en/blog/release/v12.20.1.md
similarity index 100%
rename from pages/en/blog/release/v12.20.1.md
rename to apps/site/pages/en/blog/release/v12.20.1.md
diff --git a/pages/en/blog/release/v12.20.2.md b/apps/site/pages/en/blog/release/v12.20.2.md
similarity index 100%
rename from pages/en/blog/release/v12.20.2.md
rename to apps/site/pages/en/blog/release/v12.20.2.md
diff --git a/pages/en/blog/release/v12.21.0.md b/apps/site/pages/en/blog/release/v12.21.0.md
similarity index 100%
rename from pages/en/blog/release/v12.21.0.md
rename to apps/site/pages/en/blog/release/v12.21.0.md
diff --git a/pages/en/blog/release/v12.22.0.md b/apps/site/pages/en/blog/release/v12.22.0.md
similarity index 100%
rename from pages/en/blog/release/v12.22.0.md
rename to apps/site/pages/en/blog/release/v12.22.0.md
diff --git a/pages/en/blog/release/v12.22.1.md b/apps/site/pages/en/blog/release/v12.22.1.md
similarity index 100%
rename from pages/en/blog/release/v12.22.1.md
rename to apps/site/pages/en/blog/release/v12.22.1.md
diff --git a/pages/en/blog/release/v12.22.10.md b/apps/site/pages/en/blog/release/v12.22.10.md
similarity index 100%
rename from pages/en/blog/release/v12.22.10.md
rename to apps/site/pages/en/blog/release/v12.22.10.md
diff --git a/pages/en/blog/release/v12.22.11.md b/apps/site/pages/en/blog/release/v12.22.11.md
similarity index 100%
rename from pages/en/blog/release/v12.22.11.md
rename to apps/site/pages/en/blog/release/v12.22.11.md
diff --git a/pages/en/blog/release/v12.22.12.md b/apps/site/pages/en/blog/release/v12.22.12.md
similarity index 100%
rename from pages/en/blog/release/v12.22.12.md
rename to apps/site/pages/en/blog/release/v12.22.12.md
diff --git a/pages/en/blog/release/v12.22.2.md b/apps/site/pages/en/blog/release/v12.22.2.md
similarity index 100%
rename from pages/en/blog/release/v12.22.2.md
rename to apps/site/pages/en/blog/release/v12.22.2.md
diff --git a/pages/en/blog/release/v12.22.3.md b/apps/site/pages/en/blog/release/v12.22.3.md
similarity index 100%
rename from pages/en/blog/release/v12.22.3.md
rename to apps/site/pages/en/blog/release/v12.22.3.md
diff --git a/pages/en/blog/release/v12.22.4.md b/apps/site/pages/en/blog/release/v12.22.4.md
similarity index 100%
rename from pages/en/blog/release/v12.22.4.md
rename to apps/site/pages/en/blog/release/v12.22.4.md
diff --git a/pages/en/blog/release/v12.22.5.md b/apps/site/pages/en/blog/release/v12.22.5.md
similarity index 100%
rename from pages/en/blog/release/v12.22.5.md
rename to apps/site/pages/en/blog/release/v12.22.5.md
diff --git a/pages/en/blog/release/v12.22.6.md b/apps/site/pages/en/blog/release/v12.22.6.md
similarity index 100%
rename from pages/en/blog/release/v12.22.6.md
rename to apps/site/pages/en/blog/release/v12.22.6.md
diff --git a/pages/en/blog/release/v12.22.7.md b/apps/site/pages/en/blog/release/v12.22.7.md
similarity index 100%
rename from pages/en/blog/release/v12.22.7.md
rename to apps/site/pages/en/blog/release/v12.22.7.md
diff --git a/pages/en/blog/release/v12.22.8.md b/apps/site/pages/en/blog/release/v12.22.8.md
similarity index 100%
rename from pages/en/blog/release/v12.22.8.md
rename to apps/site/pages/en/blog/release/v12.22.8.md
diff --git a/pages/en/blog/release/v12.22.9.md b/apps/site/pages/en/blog/release/v12.22.9.md
similarity index 100%
rename from pages/en/blog/release/v12.22.9.md
rename to apps/site/pages/en/blog/release/v12.22.9.md
diff --git a/pages/en/blog/release/v12.3.0.md b/apps/site/pages/en/blog/release/v12.3.0.md
similarity index 100%
rename from pages/en/blog/release/v12.3.0.md
rename to apps/site/pages/en/blog/release/v12.3.0.md
diff --git a/pages/en/blog/release/v12.3.1.md b/apps/site/pages/en/blog/release/v12.3.1.md
similarity index 100%
rename from pages/en/blog/release/v12.3.1.md
rename to apps/site/pages/en/blog/release/v12.3.1.md
diff --git a/pages/en/blog/release/v12.4.0.md b/apps/site/pages/en/blog/release/v12.4.0.md
similarity index 100%
rename from pages/en/blog/release/v12.4.0.md
rename to apps/site/pages/en/blog/release/v12.4.0.md
diff --git a/pages/en/blog/release/v12.5.0.md b/apps/site/pages/en/blog/release/v12.5.0.md
similarity index 100%
rename from pages/en/blog/release/v12.5.0.md
rename to apps/site/pages/en/blog/release/v12.5.0.md
diff --git a/pages/en/blog/release/v12.6.0.md b/apps/site/pages/en/blog/release/v12.6.0.md
similarity index 100%
rename from pages/en/blog/release/v12.6.0.md
rename to apps/site/pages/en/blog/release/v12.6.0.md
diff --git a/pages/en/blog/release/v12.7.0.md b/apps/site/pages/en/blog/release/v12.7.0.md
similarity index 100%
rename from pages/en/blog/release/v12.7.0.md
rename to apps/site/pages/en/blog/release/v12.7.0.md
diff --git a/pages/en/blog/release/v12.8.0.md b/apps/site/pages/en/blog/release/v12.8.0.md
similarity index 100%
rename from pages/en/blog/release/v12.8.0.md
rename to apps/site/pages/en/blog/release/v12.8.0.md
diff --git a/pages/en/blog/release/v12.8.1.md b/apps/site/pages/en/blog/release/v12.8.1.md
similarity index 100%
rename from pages/en/blog/release/v12.8.1.md
rename to apps/site/pages/en/blog/release/v12.8.1.md
diff --git a/pages/en/blog/release/v12.9.0.md b/apps/site/pages/en/blog/release/v12.9.0.md
similarity index 100%
rename from pages/en/blog/release/v12.9.0.md
rename to apps/site/pages/en/blog/release/v12.9.0.md
diff --git a/pages/en/blog/release/v12.9.1.md b/apps/site/pages/en/blog/release/v12.9.1.md
similarity index 100%
rename from pages/en/blog/release/v12.9.1.md
rename to apps/site/pages/en/blog/release/v12.9.1.md
diff --git a/pages/en/blog/release/v13.0.0.md b/apps/site/pages/en/blog/release/v13.0.0.md
similarity index 100%
rename from pages/en/blog/release/v13.0.0.md
rename to apps/site/pages/en/blog/release/v13.0.0.md
diff --git a/pages/en/blog/release/v13.0.1.md b/apps/site/pages/en/blog/release/v13.0.1.md
similarity index 100%
rename from pages/en/blog/release/v13.0.1.md
rename to apps/site/pages/en/blog/release/v13.0.1.md
diff --git a/pages/en/blog/release/v13.1.0.md b/apps/site/pages/en/blog/release/v13.1.0.md
similarity index 100%
rename from pages/en/blog/release/v13.1.0.md
rename to apps/site/pages/en/blog/release/v13.1.0.md
diff --git a/pages/en/blog/release/v13.10.0.md b/apps/site/pages/en/blog/release/v13.10.0.md
similarity index 100%
rename from pages/en/blog/release/v13.10.0.md
rename to apps/site/pages/en/blog/release/v13.10.0.md
diff --git a/pages/en/blog/release/v13.10.1.md b/apps/site/pages/en/blog/release/v13.10.1.md
similarity index 100%
rename from pages/en/blog/release/v13.10.1.md
rename to apps/site/pages/en/blog/release/v13.10.1.md
diff --git a/pages/en/blog/release/v13.11.0.md b/apps/site/pages/en/blog/release/v13.11.0.md
similarity index 100%
rename from pages/en/blog/release/v13.11.0.md
rename to apps/site/pages/en/blog/release/v13.11.0.md
diff --git a/pages/en/blog/release/v13.12.0.md b/apps/site/pages/en/blog/release/v13.12.0.md
similarity index 100%
rename from pages/en/blog/release/v13.12.0.md
rename to apps/site/pages/en/blog/release/v13.12.0.md
diff --git a/pages/en/blog/release/v13.13.0.md b/apps/site/pages/en/blog/release/v13.13.0.md
similarity index 100%
rename from pages/en/blog/release/v13.13.0.md
rename to apps/site/pages/en/blog/release/v13.13.0.md
diff --git a/pages/en/blog/release/v13.14.0.md b/apps/site/pages/en/blog/release/v13.14.0.md
similarity index 100%
rename from pages/en/blog/release/v13.14.0.md
rename to apps/site/pages/en/blog/release/v13.14.0.md
diff --git a/pages/en/blog/release/v13.2.0.md b/apps/site/pages/en/blog/release/v13.2.0.md
similarity index 100%
rename from pages/en/blog/release/v13.2.0.md
rename to apps/site/pages/en/blog/release/v13.2.0.md
diff --git a/pages/en/blog/release/v13.3.0.md b/apps/site/pages/en/blog/release/v13.3.0.md
similarity index 100%
rename from pages/en/blog/release/v13.3.0.md
rename to apps/site/pages/en/blog/release/v13.3.0.md
diff --git a/pages/en/blog/release/v13.4.0.md b/apps/site/pages/en/blog/release/v13.4.0.md
similarity index 100%
rename from pages/en/blog/release/v13.4.0.md
rename to apps/site/pages/en/blog/release/v13.4.0.md
diff --git a/pages/en/blog/release/v13.5.0.md b/apps/site/pages/en/blog/release/v13.5.0.md
similarity index 100%
rename from pages/en/blog/release/v13.5.0.md
rename to apps/site/pages/en/blog/release/v13.5.0.md
diff --git a/pages/en/blog/release/v13.6.0.md b/apps/site/pages/en/blog/release/v13.6.0.md
similarity index 100%
rename from pages/en/blog/release/v13.6.0.md
rename to apps/site/pages/en/blog/release/v13.6.0.md
diff --git a/pages/en/blog/release/v13.7.0.md b/apps/site/pages/en/blog/release/v13.7.0.md
similarity index 100%
rename from pages/en/blog/release/v13.7.0.md
rename to apps/site/pages/en/blog/release/v13.7.0.md
diff --git a/pages/en/blog/release/v13.8.0.md b/apps/site/pages/en/blog/release/v13.8.0.md
similarity index 100%
rename from pages/en/blog/release/v13.8.0.md
rename to apps/site/pages/en/blog/release/v13.8.0.md
diff --git a/pages/en/blog/release/v13.9.0.md b/apps/site/pages/en/blog/release/v13.9.0.md
similarity index 100%
rename from pages/en/blog/release/v13.9.0.md
rename to apps/site/pages/en/blog/release/v13.9.0.md
diff --git a/pages/en/blog/release/v14.0.0.md b/apps/site/pages/en/blog/release/v14.0.0.md
similarity index 100%
rename from pages/en/blog/release/v14.0.0.md
rename to apps/site/pages/en/blog/release/v14.0.0.md
diff --git a/pages/en/blog/release/v14.1.0.md b/apps/site/pages/en/blog/release/v14.1.0.md
similarity index 100%
rename from pages/en/blog/release/v14.1.0.md
rename to apps/site/pages/en/blog/release/v14.1.0.md
diff --git a/pages/en/blog/release/v14.10.0.md b/apps/site/pages/en/blog/release/v14.10.0.md
similarity index 100%
rename from pages/en/blog/release/v14.10.0.md
rename to apps/site/pages/en/blog/release/v14.10.0.md
diff --git a/pages/en/blog/release/v14.10.1.md b/apps/site/pages/en/blog/release/v14.10.1.md
similarity index 100%
rename from pages/en/blog/release/v14.10.1.md
rename to apps/site/pages/en/blog/release/v14.10.1.md
diff --git a/pages/en/blog/release/v14.11.0.md b/apps/site/pages/en/blog/release/v14.11.0.md
similarity index 100%
rename from pages/en/blog/release/v14.11.0.md
rename to apps/site/pages/en/blog/release/v14.11.0.md
diff --git a/pages/en/blog/release/v14.12.0.md b/apps/site/pages/en/blog/release/v14.12.0.md
similarity index 100%
rename from pages/en/blog/release/v14.12.0.md
rename to apps/site/pages/en/blog/release/v14.12.0.md
diff --git a/pages/en/blog/release/v14.13.0.md b/apps/site/pages/en/blog/release/v14.13.0.md
similarity index 100%
rename from pages/en/blog/release/v14.13.0.md
rename to apps/site/pages/en/blog/release/v14.13.0.md
diff --git a/pages/en/blog/release/v14.13.1.md b/apps/site/pages/en/blog/release/v14.13.1.md
similarity index 100%
rename from pages/en/blog/release/v14.13.1.md
rename to apps/site/pages/en/blog/release/v14.13.1.md
diff --git a/pages/en/blog/release/v14.14.0.md b/apps/site/pages/en/blog/release/v14.14.0.md
similarity index 100%
rename from pages/en/blog/release/v14.14.0.md
rename to apps/site/pages/en/blog/release/v14.14.0.md
diff --git a/pages/en/blog/release/v14.15.0.md b/apps/site/pages/en/blog/release/v14.15.0.md
similarity index 100%
rename from pages/en/blog/release/v14.15.0.md
rename to apps/site/pages/en/blog/release/v14.15.0.md
diff --git a/pages/en/blog/release/v14.15.1.md b/apps/site/pages/en/blog/release/v14.15.1.md
similarity index 100%
rename from pages/en/blog/release/v14.15.1.md
rename to apps/site/pages/en/blog/release/v14.15.1.md
diff --git a/pages/en/blog/release/v14.15.2.md b/apps/site/pages/en/blog/release/v14.15.2.md
similarity index 100%
rename from pages/en/blog/release/v14.15.2.md
rename to apps/site/pages/en/blog/release/v14.15.2.md
diff --git a/pages/en/blog/release/v14.15.3.md b/apps/site/pages/en/blog/release/v14.15.3.md
similarity index 100%
rename from pages/en/blog/release/v14.15.3.md
rename to apps/site/pages/en/blog/release/v14.15.3.md
diff --git a/pages/en/blog/release/v14.15.4.md b/apps/site/pages/en/blog/release/v14.15.4.md
similarity index 100%
rename from pages/en/blog/release/v14.15.4.md
rename to apps/site/pages/en/blog/release/v14.15.4.md
diff --git a/pages/en/blog/release/v14.15.5.md b/apps/site/pages/en/blog/release/v14.15.5.md
similarity index 100%
rename from pages/en/blog/release/v14.15.5.md
rename to apps/site/pages/en/blog/release/v14.15.5.md
diff --git a/pages/en/blog/release/v14.16.0.md b/apps/site/pages/en/blog/release/v14.16.0.md
similarity index 100%
rename from pages/en/blog/release/v14.16.0.md
rename to apps/site/pages/en/blog/release/v14.16.0.md
diff --git a/pages/en/blog/release/v14.16.1.md b/apps/site/pages/en/blog/release/v14.16.1.md
similarity index 100%
rename from pages/en/blog/release/v14.16.1.md
rename to apps/site/pages/en/blog/release/v14.16.1.md
diff --git a/pages/en/blog/release/v14.17.0.md b/apps/site/pages/en/blog/release/v14.17.0.md
similarity index 100%
rename from pages/en/blog/release/v14.17.0.md
rename to apps/site/pages/en/blog/release/v14.17.0.md
diff --git a/pages/en/blog/release/v14.17.1.md b/apps/site/pages/en/blog/release/v14.17.1.md
similarity index 100%
rename from pages/en/blog/release/v14.17.1.md
rename to apps/site/pages/en/blog/release/v14.17.1.md
diff --git a/pages/en/blog/release/v14.17.2.md b/apps/site/pages/en/blog/release/v14.17.2.md
similarity index 100%
rename from pages/en/blog/release/v14.17.2.md
rename to apps/site/pages/en/blog/release/v14.17.2.md
diff --git a/pages/en/blog/release/v14.17.3.md b/apps/site/pages/en/blog/release/v14.17.3.md
similarity index 100%
rename from pages/en/blog/release/v14.17.3.md
rename to apps/site/pages/en/blog/release/v14.17.3.md
diff --git a/pages/en/blog/release/v14.17.4.md b/apps/site/pages/en/blog/release/v14.17.4.md
similarity index 100%
rename from pages/en/blog/release/v14.17.4.md
rename to apps/site/pages/en/blog/release/v14.17.4.md
diff --git a/pages/en/blog/release/v14.17.5.md b/apps/site/pages/en/blog/release/v14.17.5.md
similarity index 100%
rename from pages/en/blog/release/v14.17.5.md
rename to apps/site/pages/en/blog/release/v14.17.5.md
diff --git a/pages/en/blog/release/v14.17.6.md b/apps/site/pages/en/blog/release/v14.17.6.md
similarity index 100%
rename from pages/en/blog/release/v14.17.6.md
rename to apps/site/pages/en/blog/release/v14.17.6.md
diff --git a/pages/en/blog/release/v14.18.0.md b/apps/site/pages/en/blog/release/v14.18.0.md
similarity index 100%
rename from pages/en/blog/release/v14.18.0.md
rename to apps/site/pages/en/blog/release/v14.18.0.md
diff --git a/pages/en/blog/release/v14.18.1.md b/apps/site/pages/en/blog/release/v14.18.1.md
similarity index 100%
rename from pages/en/blog/release/v14.18.1.md
rename to apps/site/pages/en/blog/release/v14.18.1.md
diff --git a/pages/en/blog/release/v14.18.2.md b/apps/site/pages/en/blog/release/v14.18.2.md
similarity index 100%
rename from pages/en/blog/release/v14.18.2.md
rename to apps/site/pages/en/blog/release/v14.18.2.md
diff --git a/pages/en/blog/release/v14.18.3.md b/apps/site/pages/en/blog/release/v14.18.3.md
similarity index 100%
rename from pages/en/blog/release/v14.18.3.md
rename to apps/site/pages/en/blog/release/v14.18.3.md
diff --git a/pages/en/blog/release/v14.19.0.md b/apps/site/pages/en/blog/release/v14.19.0.md
similarity index 100%
rename from pages/en/blog/release/v14.19.0.md
rename to apps/site/pages/en/blog/release/v14.19.0.md
diff --git a/pages/en/blog/release/v14.19.1.md b/apps/site/pages/en/blog/release/v14.19.1.md
similarity index 100%
rename from pages/en/blog/release/v14.19.1.md
rename to apps/site/pages/en/blog/release/v14.19.1.md
diff --git a/pages/en/blog/release/v14.19.2.md b/apps/site/pages/en/blog/release/v14.19.2.md
similarity index 100%
rename from pages/en/blog/release/v14.19.2.md
rename to apps/site/pages/en/blog/release/v14.19.2.md
diff --git a/pages/en/blog/release/v14.19.3.md b/apps/site/pages/en/blog/release/v14.19.3.md
similarity index 100%
rename from pages/en/blog/release/v14.19.3.md
rename to apps/site/pages/en/blog/release/v14.19.3.md
diff --git a/pages/en/blog/release/v14.2.0.md b/apps/site/pages/en/blog/release/v14.2.0.md
similarity index 100%
rename from pages/en/blog/release/v14.2.0.md
rename to apps/site/pages/en/blog/release/v14.2.0.md
diff --git a/pages/en/blog/release/v14.20.0.md b/apps/site/pages/en/blog/release/v14.20.0.md
similarity index 100%
rename from pages/en/blog/release/v14.20.0.md
rename to apps/site/pages/en/blog/release/v14.20.0.md
diff --git a/pages/en/blog/release/v14.20.1.md b/apps/site/pages/en/blog/release/v14.20.1.md
similarity index 100%
rename from pages/en/blog/release/v14.20.1.md
rename to apps/site/pages/en/blog/release/v14.20.1.md
diff --git a/pages/en/blog/release/v14.21.0.md b/apps/site/pages/en/blog/release/v14.21.0.md
similarity index 100%
rename from pages/en/blog/release/v14.21.0.md
rename to apps/site/pages/en/blog/release/v14.21.0.md
diff --git a/pages/en/blog/release/v14.21.1.md b/apps/site/pages/en/blog/release/v14.21.1.md
similarity index 100%
rename from pages/en/blog/release/v14.21.1.md
rename to apps/site/pages/en/blog/release/v14.21.1.md
diff --git a/pages/en/blog/release/v14.21.2.md b/apps/site/pages/en/blog/release/v14.21.2.md
similarity index 100%
rename from pages/en/blog/release/v14.21.2.md
rename to apps/site/pages/en/blog/release/v14.21.2.md
diff --git a/pages/en/blog/release/v14.21.3.md b/apps/site/pages/en/blog/release/v14.21.3.md
similarity index 100%
rename from pages/en/blog/release/v14.21.3.md
rename to apps/site/pages/en/blog/release/v14.21.3.md
diff --git a/pages/en/blog/release/v14.3.0.md b/apps/site/pages/en/blog/release/v14.3.0.md
similarity index 100%
rename from pages/en/blog/release/v14.3.0.md
rename to apps/site/pages/en/blog/release/v14.3.0.md
diff --git a/pages/en/blog/release/v14.4.0.md b/apps/site/pages/en/blog/release/v14.4.0.md
similarity index 100%
rename from pages/en/blog/release/v14.4.0.md
rename to apps/site/pages/en/blog/release/v14.4.0.md
diff --git a/pages/en/blog/release/v14.5.0.md b/apps/site/pages/en/blog/release/v14.5.0.md
similarity index 100%
rename from pages/en/blog/release/v14.5.0.md
rename to apps/site/pages/en/blog/release/v14.5.0.md
diff --git a/pages/en/blog/release/v14.6.0.md b/apps/site/pages/en/blog/release/v14.6.0.md
similarity index 100%
rename from pages/en/blog/release/v14.6.0.md
rename to apps/site/pages/en/blog/release/v14.6.0.md
diff --git a/pages/en/blog/release/v14.7.0.md b/apps/site/pages/en/blog/release/v14.7.0.md
similarity index 100%
rename from pages/en/blog/release/v14.7.0.md
rename to apps/site/pages/en/blog/release/v14.7.0.md
diff --git a/pages/en/blog/release/v14.8.0.md b/apps/site/pages/en/blog/release/v14.8.0.md
similarity index 100%
rename from pages/en/blog/release/v14.8.0.md
rename to apps/site/pages/en/blog/release/v14.8.0.md
diff --git a/pages/en/blog/release/v14.9.0.md b/apps/site/pages/en/blog/release/v14.9.0.md
similarity index 100%
rename from pages/en/blog/release/v14.9.0.md
rename to apps/site/pages/en/blog/release/v14.9.0.md
diff --git a/pages/en/blog/release/v15.0.0.md b/apps/site/pages/en/blog/release/v15.0.0.md
similarity index 100%
rename from pages/en/blog/release/v15.0.0.md
rename to apps/site/pages/en/blog/release/v15.0.0.md
diff --git a/pages/en/blog/release/v15.0.1.md b/apps/site/pages/en/blog/release/v15.0.1.md
similarity index 100%
rename from pages/en/blog/release/v15.0.1.md
rename to apps/site/pages/en/blog/release/v15.0.1.md
diff --git a/pages/en/blog/release/v15.1.0.md b/apps/site/pages/en/blog/release/v15.1.0.md
similarity index 100%
rename from pages/en/blog/release/v15.1.0.md
rename to apps/site/pages/en/blog/release/v15.1.0.md
diff --git a/pages/en/blog/release/v15.10.0.md b/apps/site/pages/en/blog/release/v15.10.0.md
similarity index 100%
rename from pages/en/blog/release/v15.10.0.md
rename to apps/site/pages/en/blog/release/v15.10.0.md
diff --git a/pages/en/blog/release/v15.11.0.md b/apps/site/pages/en/blog/release/v15.11.0.md
similarity index 100%
rename from pages/en/blog/release/v15.11.0.md
rename to apps/site/pages/en/blog/release/v15.11.0.md
diff --git a/pages/en/blog/release/v15.12.0.md b/apps/site/pages/en/blog/release/v15.12.0.md
similarity index 100%
rename from pages/en/blog/release/v15.12.0.md
rename to apps/site/pages/en/blog/release/v15.12.0.md
diff --git a/pages/en/blog/release/v15.13.0.md b/apps/site/pages/en/blog/release/v15.13.0.md
similarity index 100%
rename from pages/en/blog/release/v15.13.0.md
rename to apps/site/pages/en/blog/release/v15.13.0.md
diff --git a/pages/en/blog/release/v15.14.0.md b/apps/site/pages/en/blog/release/v15.14.0.md
similarity index 100%
rename from pages/en/blog/release/v15.14.0.md
rename to apps/site/pages/en/blog/release/v15.14.0.md
diff --git a/pages/en/blog/release/v15.2.0.md b/apps/site/pages/en/blog/release/v15.2.0.md
similarity index 100%
rename from pages/en/blog/release/v15.2.0.md
rename to apps/site/pages/en/blog/release/v15.2.0.md
diff --git a/pages/en/blog/release/v15.2.1.md b/apps/site/pages/en/blog/release/v15.2.1.md
similarity index 100%
rename from pages/en/blog/release/v15.2.1.md
rename to apps/site/pages/en/blog/release/v15.2.1.md
diff --git a/pages/en/blog/release/v15.3.0.md b/apps/site/pages/en/blog/release/v15.3.0.md
similarity index 100%
rename from pages/en/blog/release/v15.3.0.md
rename to apps/site/pages/en/blog/release/v15.3.0.md
diff --git a/pages/en/blog/release/v15.4.0.md b/apps/site/pages/en/blog/release/v15.4.0.md
similarity index 100%
rename from pages/en/blog/release/v15.4.0.md
rename to apps/site/pages/en/blog/release/v15.4.0.md
diff --git a/pages/en/blog/release/v15.5.0.md b/apps/site/pages/en/blog/release/v15.5.0.md
similarity index 100%
rename from pages/en/blog/release/v15.5.0.md
rename to apps/site/pages/en/blog/release/v15.5.0.md
diff --git a/pages/en/blog/release/v15.5.1.md b/apps/site/pages/en/blog/release/v15.5.1.md
similarity index 100%
rename from pages/en/blog/release/v15.5.1.md
rename to apps/site/pages/en/blog/release/v15.5.1.md
diff --git a/pages/en/blog/release/v15.6.0.md b/apps/site/pages/en/blog/release/v15.6.0.md
similarity index 100%
rename from pages/en/blog/release/v15.6.0.md
rename to apps/site/pages/en/blog/release/v15.6.0.md
diff --git a/pages/en/blog/release/v15.7.0.md b/apps/site/pages/en/blog/release/v15.7.0.md
similarity index 100%
rename from pages/en/blog/release/v15.7.0.md
rename to apps/site/pages/en/blog/release/v15.7.0.md
diff --git a/pages/en/blog/release/v15.8.0.md b/apps/site/pages/en/blog/release/v15.8.0.md
similarity index 100%
rename from pages/en/blog/release/v15.8.0.md
rename to apps/site/pages/en/blog/release/v15.8.0.md
diff --git a/pages/en/blog/release/v15.9.0.md b/apps/site/pages/en/blog/release/v15.9.0.md
similarity index 100%
rename from pages/en/blog/release/v15.9.0.md
rename to apps/site/pages/en/blog/release/v15.9.0.md
diff --git a/pages/en/blog/release/v16.0.0.md b/apps/site/pages/en/blog/release/v16.0.0.md
similarity index 100%
rename from pages/en/blog/release/v16.0.0.md
rename to apps/site/pages/en/blog/release/v16.0.0.md
diff --git a/pages/en/blog/release/v16.1.0.md b/apps/site/pages/en/blog/release/v16.1.0.md
similarity index 100%
rename from pages/en/blog/release/v16.1.0.md
rename to apps/site/pages/en/blog/release/v16.1.0.md
diff --git a/pages/en/blog/release/v16.10.0.md b/apps/site/pages/en/blog/release/v16.10.0.md
similarity index 100%
rename from pages/en/blog/release/v16.10.0.md
rename to apps/site/pages/en/blog/release/v16.10.0.md
diff --git a/pages/en/blog/release/v16.11.0.md b/apps/site/pages/en/blog/release/v16.11.0.md
similarity index 100%
rename from pages/en/blog/release/v16.11.0.md
rename to apps/site/pages/en/blog/release/v16.11.0.md
diff --git a/pages/en/blog/release/v16.11.1.md b/apps/site/pages/en/blog/release/v16.11.1.md
similarity index 100%
rename from pages/en/blog/release/v16.11.1.md
rename to apps/site/pages/en/blog/release/v16.11.1.md
diff --git a/pages/en/blog/release/v16.12.0.md b/apps/site/pages/en/blog/release/v16.12.0.md
similarity index 100%
rename from pages/en/blog/release/v16.12.0.md
rename to apps/site/pages/en/blog/release/v16.12.0.md
diff --git a/pages/en/blog/release/v16.13.0.md b/apps/site/pages/en/blog/release/v16.13.0.md
similarity index 100%
rename from pages/en/blog/release/v16.13.0.md
rename to apps/site/pages/en/blog/release/v16.13.0.md
diff --git a/pages/en/blog/release/v16.13.1.md b/apps/site/pages/en/blog/release/v16.13.1.md
similarity index 100%
rename from pages/en/blog/release/v16.13.1.md
rename to apps/site/pages/en/blog/release/v16.13.1.md
diff --git a/pages/en/blog/release/v16.13.2.md b/apps/site/pages/en/blog/release/v16.13.2.md
similarity index 100%
rename from pages/en/blog/release/v16.13.2.md
rename to apps/site/pages/en/blog/release/v16.13.2.md
diff --git a/pages/en/blog/release/v16.14.0.md b/apps/site/pages/en/blog/release/v16.14.0.md
similarity index 100%
rename from pages/en/blog/release/v16.14.0.md
rename to apps/site/pages/en/blog/release/v16.14.0.md
diff --git a/pages/en/blog/release/v16.14.1.md b/apps/site/pages/en/blog/release/v16.14.1.md
similarity index 100%
rename from pages/en/blog/release/v16.14.1.md
rename to apps/site/pages/en/blog/release/v16.14.1.md
diff --git a/pages/en/blog/release/v16.14.2.md b/apps/site/pages/en/blog/release/v16.14.2.md
similarity index 100%
rename from pages/en/blog/release/v16.14.2.md
rename to apps/site/pages/en/blog/release/v16.14.2.md
diff --git a/pages/en/blog/release/v16.15.0.md b/apps/site/pages/en/blog/release/v16.15.0.md
similarity index 100%
rename from pages/en/blog/release/v16.15.0.md
rename to apps/site/pages/en/blog/release/v16.15.0.md
diff --git a/pages/en/blog/release/v16.15.1.md b/apps/site/pages/en/blog/release/v16.15.1.md
similarity index 100%
rename from pages/en/blog/release/v16.15.1.md
rename to apps/site/pages/en/blog/release/v16.15.1.md
diff --git a/pages/en/blog/release/v16.16.0.md b/apps/site/pages/en/blog/release/v16.16.0.md
similarity index 100%
rename from pages/en/blog/release/v16.16.0.md
rename to apps/site/pages/en/blog/release/v16.16.0.md
diff --git a/pages/en/blog/release/v16.17.0.md b/apps/site/pages/en/blog/release/v16.17.0.md
similarity index 100%
rename from pages/en/blog/release/v16.17.0.md
rename to apps/site/pages/en/blog/release/v16.17.0.md
diff --git a/pages/en/blog/release/v16.17.1.md b/apps/site/pages/en/blog/release/v16.17.1.md
similarity index 100%
rename from pages/en/blog/release/v16.17.1.md
rename to apps/site/pages/en/blog/release/v16.17.1.md
diff --git a/pages/en/blog/release/v16.18.0.md b/apps/site/pages/en/blog/release/v16.18.0.md
similarity index 100%
rename from pages/en/blog/release/v16.18.0.md
rename to apps/site/pages/en/blog/release/v16.18.0.md
diff --git a/pages/en/blog/release/v16.18.1.md b/apps/site/pages/en/blog/release/v16.18.1.md
similarity index 100%
rename from pages/en/blog/release/v16.18.1.md
rename to apps/site/pages/en/blog/release/v16.18.1.md
diff --git a/pages/en/blog/release/v16.19.0.md b/apps/site/pages/en/blog/release/v16.19.0.md
similarity index 100%
rename from pages/en/blog/release/v16.19.0.md
rename to apps/site/pages/en/blog/release/v16.19.0.md
diff --git a/pages/en/blog/release/v16.19.1.md b/apps/site/pages/en/blog/release/v16.19.1.md
similarity index 100%
rename from pages/en/blog/release/v16.19.1.md
rename to apps/site/pages/en/blog/release/v16.19.1.md
diff --git a/pages/en/blog/release/v16.2.0.md b/apps/site/pages/en/blog/release/v16.2.0.md
similarity index 100%
rename from pages/en/blog/release/v16.2.0.md
rename to apps/site/pages/en/blog/release/v16.2.0.md
diff --git a/pages/en/blog/release/v16.20.0.md b/apps/site/pages/en/blog/release/v16.20.0.md
similarity index 100%
rename from pages/en/blog/release/v16.20.0.md
rename to apps/site/pages/en/blog/release/v16.20.0.md
diff --git a/pages/en/blog/release/v16.20.1.md b/apps/site/pages/en/blog/release/v16.20.1.md
similarity index 100%
rename from pages/en/blog/release/v16.20.1.md
rename to apps/site/pages/en/blog/release/v16.20.1.md
diff --git a/pages/en/blog/release/v16.20.2.md b/apps/site/pages/en/blog/release/v16.20.2.md
similarity index 100%
rename from pages/en/blog/release/v16.20.2.md
rename to apps/site/pages/en/blog/release/v16.20.2.md
diff --git a/pages/en/blog/release/v16.3.0.md b/apps/site/pages/en/blog/release/v16.3.0.md
similarity index 100%
rename from pages/en/blog/release/v16.3.0.md
rename to apps/site/pages/en/blog/release/v16.3.0.md
diff --git a/pages/en/blog/release/v16.4.0.md b/apps/site/pages/en/blog/release/v16.4.0.md
similarity index 100%
rename from pages/en/blog/release/v16.4.0.md
rename to apps/site/pages/en/blog/release/v16.4.0.md
diff --git a/pages/en/blog/release/v16.4.1.md b/apps/site/pages/en/blog/release/v16.4.1.md
similarity index 100%
rename from pages/en/blog/release/v16.4.1.md
rename to apps/site/pages/en/blog/release/v16.4.1.md
diff --git a/pages/en/blog/release/v16.4.2.md b/apps/site/pages/en/blog/release/v16.4.2.md
similarity index 100%
rename from pages/en/blog/release/v16.4.2.md
rename to apps/site/pages/en/blog/release/v16.4.2.md
diff --git a/pages/en/blog/release/v16.5.0.md b/apps/site/pages/en/blog/release/v16.5.0.md
similarity index 100%
rename from pages/en/blog/release/v16.5.0.md
rename to apps/site/pages/en/blog/release/v16.5.0.md
diff --git a/pages/en/blog/release/v16.6.0.md b/apps/site/pages/en/blog/release/v16.6.0.md
similarity index 100%
rename from pages/en/blog/release/v16.6.0.md
rename to apps/site/pages/en/blog/release/v16.6.0.md
diff --git a/pages/en/blog/release/v16.6.1.md b/apps/site/pages/en/blog/release/v16.6.1.md
similarity index 100%
rename from pages/en/blog/release/v16.6.1.md
rename to apps/site/pages/en/blog/release/v16.6.1.md
diff --git a/pages/en/blog/release/v16.6.2.md b/apps/site/pages/en/blog/release/v16.6.2.md
similarity index 100%
rename from pages/en/blog/release/v16.6.2.md
rename to apps/site/pages/en/blog/release/v16.6.2.md
diff --git a/pages/en/blog/release/v16.7.0.md b/apps/site/pages/en/blog/release/v16.7.0.md
similarity index 100%
rename from pages/en/blog/release/v16.7.0.md
rename to apps/site/pages/en/blog/release/v16.7.0.md
diff --git a/pages/en/blog/release/v16.8.0.md b/apps/site/pages/en/blog/release/v16.8.0.md
similarity index 100%
rename from pages/en/blog/release/v16.8.0.md
rename to apps/site/pages/en/blog/release/v16.8.0.md
diff --git a/pages/en/blog/release/v16.9.0.md b/apps/site/pages/en/blog/release/v16.9.0.md
similarity index 100%
rename from pages/en/blog/release/v16.9.0.md
rename to apps/site/pages/en/blog/release/v16.9.0.md
diff --git a/pages/en/blog/release/v16.9.1.md b/apps/site/pages/en/blog/release/v16.9.1.md
similarity index 100%
rename from pages/en/blog/release/v16.9.1.md
rename to apps/site/pages/en/blog/release/v16.9.1.md
diff --git a/pages/en/blog/release/v17.0.0.md b/apps/site/pages/en/blog/release/v17.0.0.md
similarity index 100%
rename from pages/en/blog/release/v17.0.0.md
rename to apps/site/pages/en/blog/release/v17.0.0.md
diff --git a/pages/en/blog/release/v17.0.1.md b/apps/site/pages/en/blog/release/v17.0.1.md
similarity index 100%
rename from pages/en/blog/release/v17.0.1.md
rename to apps/site/pages/en/blog/release/v17.0.1.md
diff --git a/pages/en/blog/release/v17.1.0.md b/apps/site/pages/en/blog/release/v17.1.0.md
similarity index 100%
rename from pages/en/blog/release/v17.1.0.md
rename to apps/site/pages/en/blog/release/v17.1.0.md
diff --git a/pages/en/blog/release/v17.2.0.md b/apps/site/pages/en/blog/release/v17.2.0.md
similarity index 100%
rename from pages/en/blog/release/v17.2.0.md
rename to apps/site/pages/en/blog/release/v17.2.0.md
diff --git a/pages/en/blog/release/v17.3.0.md b/apps/site/pages/en/blog/release/v17.3.0.md
similarity index 100%
rename from pages/en/blog/release/v17.3.0.md
rename to apps/site/pages/en/blog/release/v17.3.0.md
diff --git a/pages/en/blog/release/v17.3.1.md b/apps/site/pages/en/blog/release/v17.3.1.md
similarity index 100%
rename from pages/en/blog/release/v17.3.1.md
rename to apps/site/pages/en/blog/release/v17.3.1.md
diff --git a/pages/en/blog/release/v17.4.0.md b/apps/site/pages/en/blog/release/v17.4.0.md
similarity index 100%
rename from pages/en/blog/release/v17.4.0.md
rename to apps/site/pages/en/blog/release/v17.4.0.md
diff --git a/pages/en/blog/release/v17.5.0.md b/apps/site/pages/en/blog/release/v17.5.0.md
similarity index 100%
rename from pages/en/blog/release/v17.5.0.md
rename to apps/site/pages/en/blog/release/v17.5.0.md
diff --git a/pages/en/blog/release/v17.6.0.md b/apps/site/pages/en/blog/release/v17.6.0.md
similarity index 100%
rename from pages/en/blog/release/v17.6.0.md
rename to apps/site/pages/en/blog/release/v17.6.0.md
diff --git a/pages/en/blog/release/v17.7.0.md b/apps/site/pages/en/blog/release/v17.7.0.md
similarity index 100%
rename from pages/en/blog/release/v17.7.0.md
rename to apps/site/pages/en/blog/release/v17.7.0.md
diff --git a/pages/en/blog/release/v17.7.1.md b/apps/site/pages/en/blog/release/v17.7.1.md
similarity index 100%
rename from pages/en/blog/release/v17.7.1.md
rename to apps/site/pages/en/blog/release/v17.7.1.md
diff --git a/pages/en/blog/release/v17.7.2.md b/apps/site/pages/en/blog/release/v17.7.2.md
similarity index 100%
rename from pages/en/blog/release/v17.7.2.md
rename to apps/site/pages/en/blog/release/v17.7.2.md
diff --git a/pages/en/blog/release/v17.8.0.md b/apps/site/pages/en/blog/release/v17.8.0.md
similarity index 100%
rename from pages/en/blog/release/v17.8.0.md
rename to apps/site/pages/en/blog/release/v17.8.0.md
diff --git a/pages/en/blog/release/v17.9.0.md b/apps/site/pages/en/blog/release/v17.9.0.md
similarity index 100%
rename from pages/en/blog/release/v17.9.0.md
rename to apps/site/pages/en/blog/release/v17.9.0.md
diff --git a/pages/en/blog/release/v17.9.1.md b/apps/site/pages/en/blog/release/v17.9.1.md
similarity index 100%
rename from pages/en/blog/release/v17.9.1.md
rename to apps/site/pages/en/blog/release/v17.9.1.md
diff --git a/pages/en/blog/release/v18.0.0.md b/apps/site/pages/en/blog/release/v18.0.0.md
similarity index 100%
rename from pages/en/blog/release/v18.0.0.md
rename to apps/site/pages/en/blog/release/v18.0.0.md
diff --git a/pages/en/blog/release/v18.1.0.md b/apps/site/pages/en/blog/release/v18.1.0.md
similarity index 100%
rename from pages/en/blog/release/v18.1.0.md
rename to apps/site/pages/en/blog/release/v18.1.0.md
diff --git a/pages/en/blog/release/v18.10.0.md b/apps/site/pages/en/blog/release/v18.10.0.md
similarity index 100%
rename from pages/en/blog/release/v18.10.0.md
rename to apps/site/pages/en/blog/release/v18.10.0.md
diff --git a/pages/en/blog/release/v18.11.0.md b/apps/site/pages/en/blog/release/v18.11.0.md
similarity index 100%
rename from pages/en/blog/release/v18.11.0.md
rename to apps/site/pages/en/blog/release/v18.11.0.md
diff --git a/pages/en/blog/release/v18.12.0.md b/apps/site/pages/en/blog/release/v18.12.0.md
similarity index 100%
rename from pages/en/blog/release/v18.12.0.md
rename to apps/site/pages/en/blog/release/v18.12.0.md
diff --git a/pages/en/blog/release/v18.12.1.md b/apps/site/pages/en/blog/release/v18.12.1.md
similarity index 100%
rename from pages/en/blog/release/v18.12.1.md
rename to apps/site/pages/en/blog/release/v18.12.1.md
diff --git a/pages/en/blog/release/v18.13.0.md b/apps/site/pages/en/blog/release/v18.13.0.md
similarity index 100%
rename from pages/en/blog/release/v18.13.0.md
rename to apps/site/pages/en/blog/release/v18.13.0.md
diff --git a/pages/en/blog/release/v18.14.0.md b/apps/site/pages/en/blog/release/v18.14.0.md
similarity index 100%
rename from pages/en/blog/release/v18.14.0.md
rename to apps/site/pages/en/blog/release/v18.14.0.md
diff --git a/pages/en/blog/release/v18.14.1.md b/apps/site/pages/en/blog/release/v18.14.1.md
similarity index 100%
rename from pages/en/blog/release/v18.14.1.md
rename to apps/site/pages/en/blog/release/v18.14.1.md
diff --git a/pages/en/blog/release/v18.14.2.md b/apps/site/pages/en/blog/release/v18.14.2.md
similarity index 100%
rename from pages/en/blog/release/v18.14.2.md
rename to apps/site/pages/en/blog/release/v18.14.2.md
diff --git a/pages/en/blog/release/v18.15.0.md b/apps/site/pages/en/blog/release/v18.15.0.md
similarity index 100%
rename from pages/en/blog/release/v18.15.0.md
rename to apps/site/pages/en/blog/release/v18.15.0.md
diff --git a/pages/en/blog/release/v18.16.0.md b/apps/site/pages/en/blog/release/v18.16.0.md
similarity index 100%
rename from pages/en/blog/release/v18.16.0.md
rename to apps/site/pages/en/blog/release/v18.16.0.md
diff --git a/pages/en/blog/release/v18.16.1.md b/apps/site/pages/en/blog/release/v18.16.1.md
similarity index 100%
rename from pages/en/blog/release/v18.16.1.md
rename to apps/site/pages/en/blog/release/v18.16.1.md
diff --git a/pages/en/blog/release/v18.17.0.md b/apps/site/pages/en/blog/release/v18.17.0.md
similarity index 100%
rename from pages/en/blog/release/v18.17.0.md
rename to apps/site/pages/en/blog/release/v18.17.0.md
diff --git a/pages/en/blog/release/v18.17.1.md b/apps/site/pages/en/blog/release/v18.17.1.md
similarity index 100%
rename from pages/en/blog/release/v18.17.1.md
rename to apps/site/pages/en/blog/release/v18.17.1.md
diff --git a/pages/en/blog/release/v18.18.0.md b/apps/site/pages/en/blog/release/v18.18.0.md
similarity index 100%
rename from pages/en/blog/release/v18.18.0.md
rename to apps/site/pages/en/blog/release/v18.18.0.md
diff --git a/pages/en/blog/release/v18.18.1.md b/apps/site/pages/en/blog/release/v18.18.1.md
similarity index 100%
rename from pages/en/blog/release/v18.18.1.md
rename to apps/site/pages/en/blog/release/v18.18.1.md
diff --git a/pages/en/blog/release/v18.18.2.md b/apps/site/pages/en/blog/release/v18.18.2.md
similarity index 100%
rename from pages/en/blog/release/v18.18.2.md
rename to apps/site/pages/en/blog/release/v18.18.2.md
diff --git a/pages/en/blog/release/v18.19.0.md b/apps/site/pages/en/blog/release/v18.19.0.md
similarity index 100%
rename from pages/en/blog/release/v18.19.0.md
rename to apps/site/pages/en/blog/release/v18.19.0.md
diff --git a/pages/en/blog/release/v18.19.1.md b/apps/site/pages/en/blog/release/v18.19.1.md
similarity index 100%
rename from pages/en/blog/release/v18.19.1.md
rename to apps/site/pages/en/blog/release/v18.19.1.md
diff --git a/pages/en/blog/release/v18.2.0.md b/apps/site/pages/en/blog/release/v18.2.0.md
similarity index 100%
rename from pages/en/blog/release/v18.2.0.md
rename to apps/site/pages/en/blog/release/v18.2.0.md
diff --git a/pages/en/blog/release/v18.20.0.md b/apps/site/pages/en/blog/release/v18.20.0.md
similarity index 100%
rename from pages/en/blog/release/v18.20.0.md
rename to apps/site/pages/en/blog/release/v18.20.0.md
diff --git a/pages/en/blog/release/v18.20.1.md b/apps/site/pages/en/blog/release/v18.20.1.md
similarity index 100%
rename from pages/en/blog/release/v18.20.1.md
rename to apps/site/pages/en/blog/release/v18.20.1.md
diff --git a/pages/en/blog/release/v18.20.2.md b/apps/site/pages/en/blog/release/v18.20.2.md
similarity index 100%
rename from pages/en/blog/release/v18.20.2.md
rename to apps/site/pages/en/blog/release/v18.20.2.md
diff --git a/pages/en/blog/release/v18.20.3.md b/apps/site/pages/en/blog/release/v18.20.3.md
similarity index 100%
rename from pages/en/blog/release/v18.20.3.md
rename to apps/site/pages/en/blog/release/v18.20.3.md
diff --git a/pages/en/blog/release/v18.3.0.md b/apps/site/pages/en/blog/release/v18.3.0.md
similarity index 100%
rename from pages/en/blog/release/v18.3.0.md
rename to apps/site/pages/en/blog/release/v18.3.0.md
diff --git a/pages/en/blog/release/v18.4.0.md b/apps/site/pages/en/blog/release/v18.4.0.md
similarity index 100%
rename from pages/en/blog/release/v18.4.0.md
rename to apps/site/pages/en/blog/release/v18.4.0.md
diff --git a/pages/en/blog/release/v18.5.0.md b/apps/site/pages/en/blog/release/v18.5.0.md
similarity index 100%
rename from pages/en/blog/release/v18.5.0.md
rename to apps/site/pages/en/blog/release/v18.5.0.md
diff --git a/pages/en/blog/release/v18.6.0.md b/apps/site/pages/en/blog/release/v18.6.0.md
similarity index 100%
rename from pages/en/blog/release/v18.6.0.md
rename to apps/site/pages/en/blog/release/v18.6.0.md
diff --git a/pages/en/blog/release/v18.7.0.md b/apps/site/pages/en/blog/release/v18.7.0.md
similarity index 100%
rename from pages/en/blog/release/v18.7.0.md
rename to apps/site/pages/en/blog/release/v18.7.0.md
diff --git a/pages/en/blog/release/v18.8.0.md b/apps/site/pages/en/blog/release/v18.8.0.md
similarity index 100%
rename from pages/en/blog/release/v18.8.0.md
rename to apps/site/pages/en/blog/release/v18.8.0.md
diff --git a/pages/en/blog/release/v18.9.0.md b/apps/site/pages/en/blog/release/v18.9.0.md
similarity index 100%
rename from pages/en/blog/release/v18.9.0.md
rename to apps/site/pages/en/blog/release/v18.9.0.md
diff --git a/pages/en/blog/release/v18.9.1.md b/apps/site/pages/en/blog/release/v18.9.1.md
similarity index 100%
rename from pages/en/blog/release/v18.9.1.md
rename to apps/site/pages/en/blog/release/v18.9.1.md
diff --git a/pages/en/blog/release/v19.0.0.md b/apps/site/pages/en/blog/release/v19.0.0.md
similarity index 100%
rename from pages/en/blog/release/v19.0.0.md
rename to apps/site/pages/en/blog/release/v19.0.0.md
diff --git a/pages/en/blog/release/v19.0.1.md b/apps/site/pages/en/blog/release/v19.0.1.md
similarity index 100%
rename from pages/en/blog/release/v19.0.1.md
rename to apps/site/pages/en/blog/release/v19.0.1.md
diff --git a/pages/en/blog/release/v19.1.0.md b/apps/site/pages/en/blog/release/v19.1.0.md
similarity index 100%
rename from pages/en/blog/release/v19.1.0.md
rename to apps/site/pages/en/blog/release/v19.1.0.md
diff --git a/pages/en/blog/release/v19.2.0.md b/apps/site/pages/en/blog/release/v19.2.0.md
similarity index 100%
rename from pages/en/blog/release/v19.2.0.md
rename to apps/site/pages/en/blog/release/v19.2.0.md
diff --git a/pages/en/blog/release/v19.3.0.md b/apps/site/pages/en/blog/release/v19.3.0.md
similarity index 100%
rename from pages/en/blog/release/v19.3.0.md
rename to apps/site/pages/en/blog/release/v19.3.0.md
diff --git a/pages/en/blog/release/v19.4.0.md b/apps/site/pages/en/blog/release/v19.4.0.md
similarity index 100%
rename from pages/en/blog/release/v19.4.0.md
rename to apps/site/pages/en/blog/release/v19.4.0.md
diff --git a/pages/en/blog/release/v19.5.0.md b/apps/site/pages/en/blog/release/v19.5.0.md
similarity index 100%
rename from pages/en/blog/release/v19.5.0.md
rename to apps/site/pages/en/blog/release/v19.5.0.md
diff --git a/pages/en/blog/release/v19.6.0.md b/apps/site/pages/en/blog/release/v19.6.0.md
similarity index 100%
rename from pages/en/blog/release/v19.6.0.md
rename to apps/site/pages/en/blog/release/v19.6.0.md
diff --git a/pages/en/blog/release/v19.6.1.md b/apps/site/pages/en/blog/release/v19.6.1.md
similarity index 100%
rename from pages/en/blog/release/v19.6.1.md
rename to apps/site/pages/en/blog/release/v19.6.1.md
diff --git a/pages/en/blog/release/v19.7.0.md b/apps/site/pages/en/blog/release/v19.7.0.md
similarity index 100%
rename from pages/en/blog/release/v19.7.0.md
rename to apps/site/pages/en/blog/release/v19.7.0.md
diff --git a/pages/en/blog/release/v19.8.0.md b/apps/site/pages/en/blog/release/v19.8.0.md
similarity index 100%
rename from pages/en/blog/release/v19.8.0.md
rename to apps/site/pages/en/blog/release/v19.8.0.md
diff --git a/pages/en/blog/release/v19.8.1.md b/apps/site/pages/en/blog/release/v19.8.1.md
similarity index 100%
rename from pages/en/blog/release/v19.8.1.md
rename to apps/site/pages/en/blog/release/v19.8.1.md
diff --git a/pages/en/blog/release/v19.9.0.md b/apps/site/pages/en/blog/release/v19.9.0.md
similarity index 100%
rename from pages/en/blog/release/v19.9.0.md
rename to apps/site/pages/en/blog/release/v19.9.0.md
diff --git a/pages/en/blog/release/v20.0.0.md b/apps/site/pages/en/blog/release/v20.0.0.md
similarity index 100%
rename from pages/en/blog/release/v20.0.0.md
rename to apps/site/pages/en/blog/release/v20.0.0.md
diff --git a/pages/en/blog/release/v20.1.0.md b/apps/site/pages/en/blog/release/v20.1.0.md
similarity index 100%
rename from pages/en/blog/release/v20.1.0.md
rename to apps/site/pages/en/blog/release/v20.1.0.md
diff --git a/pages/en/blog/release/v20.10.0.md b/apps/site/pages/en/blog/release/v20.10.0.md
similarity index 100%
rename from pages/en/blog/release/v20.10.0.md
rename to apps/site/pages/en/blog/release/v20.10.0.md
diff --git a/pages/en/blog/release/v20.11.0.md b/apps/site/pages/en/blog/release/v20.11.0.md
similarity index 100%
rename from pages/en/blog/release/v20.11.0.md
rename to apps/site/pages/en/blog/release/v20.11.0.md
diff --git a/pages/en/blog/release/v20.11.1.md b/apps/site/pages/en/blog/release/v20.11.1.md
similarity index 100%
rename from pages/en/blog/release/v20.11.1.md
rename to apps/site/pages/en/blog/release/v20.11.1.md
diff --git a/pages/en/blog/release/v20.12.0.md b/apps/site/pages/en/blog/release/v20.12.0.md
similarity index 100%
rename from pages/en/blog/release/v20.12.0.md
rename to apps/site/pages/en/blog/release/v20.12.0.md
diff --git a/pages/en/blog/release/v20.12.1.md b/apps/site/pages/en/blog/release/v20.12.1.md
similarity index 100%
rename from pages/en/blog/release/v20.12.1.md
rename to apps/site/pages/en/blog/release/v20.12.1.md
diff --git a/pages/en/blog/release/v20.12.2.md b/apps/site/pages/en/blog/release/v20.12.2.md
similarity index 100%
rename from pages/en/blog/release/v20.12.2.md
rename to apps/site/pages/en/blog/release/v20.12.2.md
diff --git a/pages/en/blog/release/v20.13.0.md b/apps/site/pages/en/blog/release/v20.13.0.md
similarity index 100%
rename from pages/en/blog/release/v20.13.0.md
rename to apps/site/pages/en/blog/release/v20.13.0.md
diff --git a/pages/en/blog/release/v20.13.1.md b/apps/site/pages/en/blog/release/v20.13.1.md
similarity index 100%
rename from pages/en/blog/release/v20.13.1.md
rename to apps/site/pages/en/blog/release/v20.13.1.md
diff --git a/pages/en/blog/release/v20.14.0.md b/apps/site/pages/en/blog/release/v20.14.0.md
similarity index 100%
rename from pages/en/blog/release/v20.14.0.md
rename to apps/site/pages/en/blog/release/v20.14.0.md
diff --git a/pages/en/blog/release/v20.15.0.md b/apps/site/pages/en/blog/release/v20.15.0.md
similarity index 100%
rename from pages/en/blog/release/v20.15.0.md
rename to apps/site/pages/en/blog/release/v20.15.0.md
diff --git a/pages/en/blog/release/v20.2.0.md b/apps/site/pages/en/blog/release/v20.2.0.md
similarity index 100%
rename from pages/en/blog/release/v20.2.0.md
rename to apps/site/pages/en/blog/release/v20.2.0.md
diff --git a/pages/en/blog/release/v20.3.0.md b/apps/site/pages/en/blog/release/v20.3.0.md
similarity index 100%
rename from pages/en/blog/release/v20.3.0.md
rename to apps/site/pages/en/blog/release/v20.3.0.md
diff --git a/pages/en/blog/release/v20.3.1.md b/apps/site/pages/en/blog/release/v20.3.1.md
similarity index 100%
rename from pages/en/blog/release/v20.3.1.md
rename to apps/site/pages/en/blog/release/v20.3.1.md
diff --git a/pages/en/blog/release/v20.4.0.md b/apps/site/pages/en/blog/release/v20.4.0.md
similarity index 100%
rename from pages/en/blog/release/v20.4.0.md
rename to apps/site/pages/en/blog/release/v20.4.0.md
diff --git a/pages/en/blog/release/v20.5.0.md b/apps/site/pages/en/blog/release/v20.5.0.md
similarity index 100%
rename from pages/en/blog/release/v20.5.0.md
rename to apps/site/pages/en/blog/release/v20.5.0.md
diff --git a/pages/en/blog/release/v20.5.1.md b/apps/site/pages/en/blog/release/v20.5.1.md
similarity index 100%
rename from pages/en/blog/release/v20.5.1.md
rename to apps/site/pages/en/blog/release/v20.5.1.md
diff --git a/pages/en/blog/release/v20.6.0.md b/apps/site/pages/en/blog/release/v20.6.0.md
similarity index 100%
rename from pages/en/blog/release/v20.6.0.md
rename to apps/site/pages/en/blog/release/v20.6.0.md
diff --git a/pages/en/blog/release/v20.6.1.md b/apps/site/pages/en/blog/release/v20.6.1.md
similarity index 100%
rename from pages/en/blog/release/v20.6.1.md
rename to apps/site/pages/en/blog/release/v20.6.1.md
diff --git a/pages/en/blog/release/v20.7.0.md b/apps/site/pages/en/blog/release/v20.7.0.md
similarity index 100%
rename from pages/en/blog/release/v20.7.0.md
rename to apps/site/pages/en/blog/release/v20.7.0.md
diff --git a/pages/en/blog/release/v20.8.0.md b/apps/site/pages/en/blog/release/v20.8.0.md
similarity index 100%
rename from pages/en/blog/release/v20.8.0.md
rename to apps/site/pages/en/blog/release/v20.8.0.md
diff --git a/pages/en/blog/release/v20.8.1.md b/apps/site/pages/en/blog/release/v20.8.1.md
similarity index 100%
rename from pages/en/blog/release/v20.8.1.md
rename to apps/site/pages/en/blog/release/v20.8.1.md
diff --git a/pages/en/blog/release/v20.9.0.md b/apps/site/pages/en/blog/release/v20.9.0.md
similarity index 100%
rename from pages/en/blog/release/v20.9.0.md
rename to apps/site/pages/en/blog/release/v20.9.0.md
diff --git a/pages/en/blog/release/v21.0.0.md b/apps/site/pages/en/blog/release/v21.0.0.md
similarity index 100%
rename from pages/en/blog/release/v21.0.0.md
rename to apps/site/pages/en/blog/release/v21.0.0.md
diff --git a/pages/en/blog/release/v21.1.0.md b/apps/site/pages/en/blog/release/v21.1.0.md
similarity index 100%
rename from pages/en/blog/release/v21.1.0.md
rename to apps/site/pages/en/blog/release/v21.1.0.md
diff --git a/pages/en/blog/release/v21.2.0.md b/apps/site/pages/en/blog/release/v21.2.0.md
similarity index 100%
rename from pages/en/blog/release/v21.2.0.md
rename to apps/site/pages/en/blog/release/v21.2.0.md
diff --git a/pages/en/blog/release/v21.3.0.md b/apps/site/pages/en/blog/release/v21.3.0.md
similarity index 100%
rename from pages/en/blog/release/v21.3.0.md
rename to apps/site/pages/en/blog/release/v21.3.0.md
diff --git a/pages/en/blog/release/v21.4.0.md b/apps/site/pages/en/blog/release/v21.4.0.md
similarity index 100%
rename from pages/en/blog/release/v21.4.0.md
rename to apps/site/pages/en/blog/release/v21.4.0.md
diff --git a/pages/en/blog/release/v21.5.0.md b/apps/site/pages/en/blog/release/v21.5.0.md
similarity index 100%
rename from pages/en/blog/release/v21.5.0.md
rename to apps/site/pages/en/blog/release/v21.5.0.md
diff --git a/pages/en/blog/release/v21.6.0.md b/apps/site/pages/en/blog/release/v21.6.0.md
similarity index 100%
rename from pages/en/blog/release/v21.6.0.md
rename to apps/site/pages/en/blog/release/v21.6.0.md
diff --git a/pages/en/blog/release/v21.6.1.md b/apps/site/pages/en/blog/release/v21.6.1.md
similarity index 100%
rename from pages/en/blog/release/v21.6.1.md
rename to apps/site/pages/en/blog/release/v21.6.1.md
diff --git a/pages/en/blog/release/v21.6.2.md b/apps/site/pages/en/blog/release/v21.6.2.md
similarity index 100%
rename from pages/en/blog/release/v21.6.2.md
rename to apps/site/pages/en/blog/release/v21.6.2.md
diff --git a/pages/en/blog/release/v21.7.0.md b/apps/site/pages/en/blog/release/v21.7.0.md
similarity index 100%
rename from pages/en/blog/release/v21.7.0.md
rename to apps/site/pages/en/blog/release/v21.7.0.md
diff --git a/pages/en/blog/release/v21.7.1.md b/apps/site/pages/en/blog/release/v21.7.1.md
similarity index 100%
rename from pages/en/blog/release/v21.7.1.md
rename to apps/site/pages/en/blog/release/v21.7.1.md
diff --git a/pages/en/blog/release/v21.7.2.md b/apps/site/pages/en/blog/release/v21.7.2.md
similarity index 100%
rename from pages/en/blog/release/v21.7.2.md
rename to apps/site/pages/en/blog/release/v21.7.2.md
diff --git a/pages/en/blog/release/v21.7.3.md b/apps/site/pages/en/blog/release/v21.7.3.md
similarity index 100%
rename from pages/en/blog/release/v21.7.3.md
rename to apps/site/pages/en/blog/release/v21.7.3.md
diff --git a/pages/en/blog/release/v22.0.0.md b/apps/site/pages/en/blog/release/v22.0.0.md
similarity index 100%
rename from pages/en/blog/release/v22.0.0.md
rename to apps/site/pages/en/blog/release/v22.0.0.md
diff --git a/pages/en/blog/release/v22.1.0.md b/apps/site/pages/en/blog/release/v22.1.0.md
similarity index 100%
rename from pages/en/blog/release/v22.1.0.md
rename to apps/site/pages/en/blog/release/v22.1.0.md
diff --git a/pages/en/blog/release/v22.2.0.md b/apps/site/pages/en/blog/release/v22.2.0.md
similarity index 100%
rename from pages/en/blog/release/v22.2.0.md
rename to apps/site/pages/en/blog/release/v22.2.0.md
diff --git a/pages/en/blog/release/v22.3.0.md b/apps/site/pages/en/blog/release/v22.3.0.md
similarity index 100%
rename from pages/en/blog/release/v22.3.0.md
rename to apps/site/pages/en/blog/release/v22.3.0.md
diff --git a/pages/en/blog/release/v4.0.0.md b/apps/site/pages/en/blog/release/v4.0.0.md
similarity index 100%
rename from pages/en/blog/release/v4.0.0.md
rename to apps/site/pages/en/blog/release/v4.0.0.md
diff --git a/pages/en/blog/release/v4.1.0.md b/apps/site/pages/en/blog/release/v4.1.0.md
similarity index 100%
rename from pages/en/blog/release/v4.1.0.md
rename to apps/site/pages/en/blog/release/v4.1.0.md
diff --git a/pages/en/blog/release/v4.1.1.md b/apps/site/pages/en/blog/release/v4.1.1.md
similarity index 100%
rename from pages/en/blog/release/v4.1.1.md
rename to apps/site/pages/en/blog/release/v4.1.1.md
diff --git a/pages/en/blog/release/v4.1.2.md b/apps/site/pages/en/blog/release/v4.1.2.md
similarity index 100%
rename from pages/en/blog/release/v4.1.2.md
rename to apps/site/pages/en/blog/release/v4.1.2.md
diff --git a/pages/en/blog/release/v4.2.0.md b/apps/site/pages/en/blog/release/v4.2.0.md
similarity index 100%
rename from pages/en/blog/release/v4.2.0.md
rename to apps/site/pages/en/blog/release/v4.2.0.md
diff --git a/pages/en/blog/release/v4.2.1.md b/apps/site/pages/en/blog/release/v4.2.1.md
similarity index 100%
rename from pages/en/blog/release/v4.2.1.md
rename to apps/site/pages/en/blog/release/v4.2.1.md
diff --git a/pages/en/blog/release/v4.2.2.md b/apps/site/pages/en/blog/release/v4.2.2.md
similarity index 100%
rename from pages/en/blog/release/v4.2.2.md
rename to apps/site/pages/en/blog/release/v4.2.2.md
diff --git a/pages/en/blog/release/v4.2.3.md b/apps/site/pages/en/blog/release/v4.2.3.md
similarity index 100%
rename from pages/en/blog/release/v4.2.3.md
rename to apps/site/pages/en/blog/release/v4.2.3.md
diff --git a/pages/en/blog/release/v4.2.4.md b/apps/site/pages/en/blog/release/v4.2.4.md
similarity index 100%
rename from pages/en/blog/release/v4.2.4.md
rename to apps/site/pages/en/blog/release/v4.2.4.md
diff --git a/pages/en/blog/release/v4.2.5.md b/apps/site/pages/en/blog/release/v4.2.5.md
similarity index 100%
rename from pages/en/blog/release/v4.2.5.md
rename to apps/site/pages/en/blog/release/v4.2.5.md
diff --git a/pages/en/blog/release/v4.2.6.md b/apps/site/pages/en/blog/release/v4.2.6.md
similarity index 100%
rename from pages/en/blog/release/v4.2.6.md
rename to apps/site/pages/en/blog/release/v4.2.6.md
diff --git a/pages/en/blog/release/v4.3.0.md b/apps/site/pages/en/blog/release/v4.3.0.md
similarity index 100%
rename from pages/en/blog/release/v4.3.0.md
rename to apps/site/pages/en/blog/release/v4.3.0.md
diff --git a/pages/en/blog/release/v4.3.1.md b/apps/site/pages/en/blog/release/v4.3.1.md
similarity index 100%
rename from pages/en/blog/release/v4.3.1.md
rename to apps/site/pages/en/blog/release/v4.3.1.md
diff --git a/pages/en/blog/release/v4.3.2.md b/apps/site/pages/en/blog/release/v4.3.2.md
similarity index 100%
rename from pages/en/blog/release/v4.3.2.md
rename to apps/site/pages/en/blog/release/v4.3.2.md
diff --git a/pages/en/blog/release/v4.4.0.md b/apps/site/pages/en/blog/release/v4.4.0.md
similarity index 100%
rename from pages/en/blog/release/v4.4.0.md
rename to apps/site/pages/en/blog/release/v4.4.0.md
diff --git a/pages/en/blog/release/v4.4.1.md b/apps/site/pages/en/blog/release/v4.4.1.md
similarity index 100%
rename from pages/en/blog/release/v4.4.1.md
rename to apps/site/pages/en/blog/release/v4.4.1.md
diff --git a/pages/en/blog/release/v4.4.2.md b/apps/site/pages/en/blog/release/v4.4.2.md
similarity index 100%
rename from pages/en/blog/release/v4.4.2.md
rename to apps/site/pages/en/blog/release/v4.4.2.md
diff --git a/pages/en/blog/release/v4.4.3.md b/apps/site/pages/en/blog/release/v4.4.3.md
similarity index 100%
rename from pages/en/blog/release/v4.4.3.md
rename to apps/site/pages/en/blog/release/v4.4.3.md
diff --git a/pages/en/blog/release/v4.4.4.md b/apps/site/pages/en/blog/release/v4.4.4.md
similarity index 100%
rename from pages/en/blog/release/v4.4.4.md
rename to apps/site/pages/en/blog/release/v4.4.4.md
diff --git a/pages/en/blog/release/v4.4.5.md b/apps/site/pages/en/blog/release/v4.4.5.md
similarity index 100%
rename from pages/en/blog/release/v4.4.5.md
rename to apps/site/pages/en/blog/release/v4.4.5.md
diff --git a/pages/en/blog/release/v4.4.6.md b/apps/site/pages/en/blog/release/v4.4.6.md
similarity index 100%
rename from pages/en/blog/release/v4.4.6.md
rename to apps/site/pages/en/blog/release/v4.4.6.md
diff --git a/pages/en/blog/release/v4.4.7.md b/apps/site/pages/en/blog/release/v4.4.7.md
similarity index 100%
rename from pages/en/blog/release/v4.4.7.md
rename to apps/site/pages/en/blog/release/v4.4.7.md
diff --git a/pages/en/blog/release/v4.5.0.md b/apps/site/pages/en/blog/release/v4.5.0.md
similarity index 100%
rename from pages/en/blog/release/v4.5.0.md
rename to apps/site/pages/en/blog/release/v4.5.0.md
diff --git a/pages/en/blog/release/v4.6.0.md b/apps/site/pages/en/blog/release/v4.6.0.md
similarity index 100%
rename from pages/en/blog/release/v4.6.0.md
rename to apps/site/pages/en/blog/release/v4.6.0.md
diff --git a/pages/en/blog/release/v4.6.1.md b/apps/site/pages/en/blog/release/v4.6.1.md
similarity index 100%
rename from pages/en/blog/release/v4.6.1.md
rename to apps/site/pages/en/blog/release/v4.6.1.md
diff --git a/pages/en/blog/release/v4.6.2.md b/apps/site/pages/en/blog/release/v4.6.2.md
similarity index 100%
rename from pages/en/blog/release/v4.6.2.md
rename to apps/site/pages/en/blog/release/v4.6.2.md
diff --git a/pages/en/blog/release/v4.7.0.md b/apps/site/pages/en/blog/release/v4.7.0.md
similarity index 100%
rename from pages/en/blog/release/v4.7.0.md
rename to apps/site/pages/en/blog/release/v4.7.0.md
diff --git a/pages/en/blog/release/v4.7.1.md b/apps/site/pages/en/blog/release/v4.7.1.md
similarity index 100%
rename from pages/en/blog/release/v4.7.1.md
rename to apps/site/pages/en/blog/release/v4.7.1.md
diff --git a/pages/en/blog/release/v4.7.2.md b/apps/site/pages/en/blog/release/v4.7.2.md
similarity index 100%
rename from pages/en/blog/release/v4.7.2.md
rename to apps/site/pages/en/blog/release/v4.7.2.md
diff --git a/pages/en/blog/release/v4.7.3.md b/apps/site/pages/en/blog/release/v4.7.3.md
similarity index 100%
rename from pages/en/blog/release/v4.7.3.md
rename to apps/site/pages/en/blog/release/v4.7.3.md
diff --git a/pages/en/blog/release/v4.8.0.md b/apps/site/pages/en/blog/release/v4.8.0.md
similarity index 100%
rename from pages/en/blog/release/v4.8.0.md
rename to apps/site/pages/en/blog/release/v4.8.0.md
diff --git a/pages/en/blog/release/v4.8.1.md b/apps/site/pages/en/blog/release/v4.8.1.md
similarity index 100%
rename from pages/en/blog/release/v4.8.1.md
rename to apps/site/pages/en/blog/release/v4.8.1.md
diff --git a/pages/en/blog/release/v4.8.2.md b/apps/site/pages/en/blog/release/v4.8.2.md
similarity index 100%
rename from pages/en/blog/release/v4.8.2.md
rename to apps/site/pages/en/blog/release/v4.8.2.md
diff --git a/pages/en/blog/release/v4.8.3.md b/apps/site/pages/en/blog/release/v4.8.3.md
similarity index 100%
rename from pages/en/blog/release/v4.8.3.md
rename to apps/site/pages/en/blog/release/v4.8.3.md
diff --git a/pages/en/blog/release/v4.8.4.md b/apps/site/pages/en/blog/release/v4.8.4.md
similarity index 100%
rename from pages/en/blog/release/v4.8.4.md
rename to apps/site/pages/en/blog/release/v4.8.4.md
diff --git a/pages/en/blog/release/v4.8.5.md b/apps/site/pages/en/blog/release/v4.8.5.md
similarity index 100%
rename from pages/en/blog/release/v4.8.5.md
rename to apps/site/pages/en/blog/release/v4.8.5.md
diff --git a/pages/en/blog/release/v4.8.6.md b/apps/site/pages/en/blog/release/v4.8.6.md
similarity index 100%
rename from pages/en/blog/release/v4.8.6.md
rename to apps/site/pages/en/blog/release/v4.8.6.md
diff --git a/pages/en/blog/release/v4.8.7.md b/apps/site/pages/en/blog/release/v4.8.7.md
similarity index 100%
rename from pages/en/blog/release/v4.8.7.md
rename to apps/site/pages/en/blog/release/v4.8.7.md
diff --git a/pages/en/blog/release/v4.9.0.md b/apps/site/pages/en/blog/release/v4.9.0.md
similarity index 100%
rename from pages/en/blog/release/v4.9.0.md
rename to apps/site/pages/en/blog/release/v4.9.0.md
diff --git a/pages/en/blog/release/v4.9.1.md b/apps/site/pages/en/blog/release/v4.9.1.md
similarity index 100%
rename from pages/en/blog/release/v4.9.1.md
rename to apps/site/pages/en/blog/release/v4.9.1.md
diff --git a/pages/en/blog/release/v5.0.0.md b/apps/site/pages/en/blog/release/v5.0.0.md
similarity index 100%
rename from pages/en/blog/release/v5.0.0.md
rename to apps/site/pages/en/blog/release/v5.0.0.md
diff --git a/pages/en/blog/release/v5.1.0.md b/apps/site/pages/en/blog/release/v5.1.0.md
similarity index 100%
rename from pages/en/blog/release/v5.1.0.md
rename to apps/site/pages/en/blog/release/v5.1.0.md
diff --git a/pages/en/blog/release/v5.1.1.md b/apps/site/pages/en/blog/release/v5.1.1.md
similarity index 100%
rename from pages/en/blog/release/v5.1.1.md
rename to apps/site/pages/en/blog/release/v5.1.1.md
diff --git a/pages/en/blog/release/v5.10.0.md b/apps/site/pages/en/blog/release/v5.10.0.md
similarity index 100%
rename from pages/en/blog/release/v5.10.0.md
rename to apps/site/pages/en/blog/release/v5.10.0.md
diff --git a/pages/en/blog/release/v5.10.1.md b/apps/site/pages/en/blog/release/v5.10.1.md
similarity index 100%
rename from pages/en/blog/release/v5.10.1.md
rename to apps/site/pages/en/blog/release/v5.10.1.md
diff --git a/pages/en/blog/release/v5.11.0.md b/apps/site/pages/en/blog/release/v5.11.0.md
similarity index 100%
rename from pages/en/blog/release/v5.11.0.md
rename to apps/site/pages/en/blog/release/v5.11.0.md
diff --git a/pages/en/blog/release/v5.11.1.md b/apps/site/pages/en/blog/release/v5.11.1.md
similarity index 100%
rename from pages/en/blog/release/v5.11.1.md
rename to apps/site/pages/en/blog/release/v5.11.1.md
diff --git a/pages/en/blog/release/v5.12.0.md b/apps/site/pages/en/blog/release/v5.12.0.md
similarity index 100%
rename from pages/en/blog/release/v5.12.0.md
rename to apps/site/pages/en/blog/release/v5.12.0.md
diff --git a/pages/en/blog/release/v5.2.0.md b/apps/site/pages/en/blog/release/v5.2.0.md
similarity index 100%
rename from pages/en/blog/release/v5.2.0.md
rename to apps/site/pages/en/blog/release/v5.2.0.md
diff --git a/pages/en/blog/release/v5.3.0.md b/apps/site/pages/en/blog/release/v5.3.0.md
similarity index 100%
rename from pages/en/blog/release/v5.3.0.md
rename to apps/site/pages/en/blog/release/v5.3.0.md
diff --git a/pages/en/blog/release/v5.4.0.md b/apps/site/pages/en/blog/release/v5.4.0.md
similarity index 100%
rename from pages/en/blog/release/v5.4.0.md
rename to apps/site/pages/en/blog/release/v5.4.0.md
diff --git a/pages/en/blog/release/v5.4.1.md b/apps/site/pages/en/blog/release/v5.4.1.md
similarity index 100%
rename from pages/en/blog/release/v5.4.1.md
rename to apps/site/pages/en/blog/release/v5.4.1.md
diff --git a/pages/en/blog/release/v5.5.0.md b/apps/site/pages/en/blog/release/v5.5.0.md
similarity index 100%
rename from pages/en/blog/release/v5.5.0.md
rename to apps/site/pages/en/blog/release/v5.5.0.md
diff --git a/pages/en/blog/release/v5.6.0.md b/apps/site/pages/en/blog/release/v5.6.0.md
similarity index 100%
rename from pages/en/blog/release/v5.6.0.md
rename to apps/site/pages/en/blog/release/v5.6.0.md
diff --git a/pages/en/blog/release/v5.7.0.md b/apps/site/pages/en/blog/release/v5.7.0.md
similarity index 100%
rename from pages/en/blog/release/v5.7.0.md
rename to apps/site/pages/en/blog/release/v5.7.0.md
diff --git a/pages/en/blog/release/v5.7.1.md b/apps/site/pages/en/blog/release/v5.7.1.md
similarity index 100%
rename from pages/en/blog/release/v5.7.1.md
rename to apps/site/pages/en/blog/release/v5.7.1.md
diff --git a/pages/en/blog/release/v5.8.0.md b/apps/site/pages/en/blog/release/v5.8.0.md
similarity index 100%
rename from pages/en/blog/release/v5.8.0.md
rename to apps/site/pages/en/blog/release/v5.8.0.md
diff --git a/pages/en/blog/release/v5.9.0.md b/apps/site/pages/en/blog/release/v5.9.0.md
similarity index 100%
rename from pages/en/blog/release/v5.9.0.md
rename to apps/site/pages/en/blog/release/v5.9.0.md
diff --git a/pages/en/blog/release/v5.9.1.md b/apps/site/pages/en/blog/release/v5.9.1.md
similarity index 100%
rename from pages/en/blog/release/v5.9.1.md
rename to apps/site/pages/en/blog/release/v5.9.1.md
diff --git a/pages/en/blog/release/v6.0.0.md b/apps/site/pages/en/blog/release/v6.0.0.md
similarity index 100%
rename from pages/en/blog/release/v6.0.0.md
rename to apps/site/pages/en/blog/release/v6.0.0.md
diff --git a/pages/en/blog/release/v6.1.0.md b/apps/site/pages/en/blog/release/v6.1.0.md
similarity index 100%
rename from pages/en/blog/release/v6.1.0.md
rename to apps/site/pages/en/blog/release/v6.1.0.md
diff --git a/pages/en/blog/release/v6.10.0.md b/apps/site/pages/en/blog/release/v6.10.0.md
similarity index 100%
rename from pages/en/blog/release/v6.10.0.md
rename to apps/site/pages/en/blog/release/v6.10.0.md
diff --git a/pages/en/blog/release/v6.10.1.md b/apps/site/pages/en/blog/release/v6.10.1.md
similarity index 100%
rename from pages/en/blog/release/v6.10.1.md
rename to apps/site/pages/en/blog/release/v6.10.1.md
diff --git a/pages/en/blog/release/v6.10.2.md b/apps/site/pages/en/blog/release/v6.10.2.md
similarity index 100%
rename from pages/en/blog/release/v6.10.2.md
rename to apps/site/pages/en/blog/release/v6.10.2.md
diff --git a/pages/en/blog/release/v6.10.3.md b/apps/site/pages/en/blog/release/v6.10.3.md
similarity index 100%
rename from pages/en/blog/release/v6.10.3.md
rename to apps/site/pages/en/blog/release/v6.10.3.md
diff --git a/pages/en/blog/release/v6.11.0.md b/apps/site/pages/en/blog/release/v6.11.0.md
similarity index 100%
rename from pages/en/blog/release/v6.11.0.md
rename to apps/site/pages/en/blog/release/v6.11.0.md
diff --git a/pages/en/blog/release/v6.11.1.md b/apps/site/pages/en/blog/release/v6.11.1.md
similarity index 100%
rename from pages/en/blog/release/v6.11.1.md
rename to apps/site/pages/en/blog/release/v6.11.1.md
diff --git a/pages/en/blog/release/v6.11.2.md b/apps/site/pages/en/blog/release/v6.11.2.md
similarity index 100%
rename from pages/en/blog/release/v6.11.2.md
rename to apps/site/pages/en/blog/release/v6.11.2.md
diff --git a/pages/en/blog/release/v6.11.3.md b/apps/site/pages/en/blog/release/v6.11.3.md
similarity index 100%
rename from pages/en/blog/release/v6.11.3.md
rename to apps/site/pages/en/blog/release/v6.11.3.md
diff --git a/pages/en/blog/release/v6.11.4.md b/apps/site/pages/en/blog/release/v6.11.4.md
similarity index 100%
rename from pages/en/blog/release/v6.11.4.md
rename to apps/site/pages/en/blog/release/v6.11.4.md
diff --git a/pages/en/blog/release/v6.11.5.md b/apps/site/pages/en/blog/release/v6.11.5.md
similarity index 100%
rename from pages/en/blog/release/v6.11.5.md
rename to apps/site/pages/en/blog/release/v6.11.5.md
diff --git a/pages/en/blog/release/v6.12.0.md b/apps/site/pages/en/blog/release/v6.12.0.md
similarity index 100%
rename from pages/en/blog/release/v6.12.0.md
rename to apps/site/pages/en/blog/release/v6.12.0.md
diff --git a/pages/en/blog/release/v6.12.1.md b/apps/site/pages/en/blog/release/v6.12.1.md
similarity index 100%
rename from pages/en/blog/release/v6.12.1.md
rename to apps/site/pages/en/blog/release/v6.12.1.md
diff --git a/pages/en/blog/release/v6.12.2.md b/apps/site/pages/en/blog/release/v6.12.2.md
similarity index 100%
rename from pages/en/blog/release/v6.12.2.md
rename to apps/site/pages/en/blog/release/v6.12.2.md
diff --git a/pages/en/blog/release/v6.12.3.md b/apps/site/pages/en/blog/release/v6.12.3.md
similarity index 100%
rename from pages/en/blog/release/v6.12.3.md
rename to apps/site/pages/en/blog/release/v6.12.3.md
diff --git a/pages/en/blog/release/v6.13.0.md b/apps/site/pages/en/blog/release/v6.13.0.md
similarity index 100%
rename from pages/en/blog/release/v6.13.0.md
rename to apps/site/pages/en/blog/release/v6.13.0.md
diff --git a/pages/en/blog/release/v6.13.1.md b/apps/site/pages/en/blog/release/v6.13.1.md
similarity index 100%
rename from pages/en/blog/release/v6.13.1.md
rename to apps/site/pages/en/blog/release/v6.13.1.md
diff --git a/pages/en/blog/release/v6.14.0.md b/apps/site/pages/en/blog/release/v6.14.0.md
similarity index 100%
rename from pages/en/blog/release/v6.14.0.md
rename to apps/site/pages/en/blog/release/v6.14.0.md
diff --git a/pages/en/blog/release/v6.14.1.md b/apps/site/pages/en/blog/release/v6.14.1.md
similarity index 100%
rename from pages/en/blog/release/v6.14.1.md
rename to apps/site/pages/en/blog/release/v6.14.1.md
diff --git a/pages/en/blog/release/v6.14.2.md b/apps/site/pages/en/blog/release/v6.14.2.md
similarity index 100%
rename from pages/en/blog/release/v6.14.2.md
rename to apps/site/pages/en/blog/release/v6.14.2.md
diff --git a/pages/en/blog/release/v6.14.3.md b/apps/site/pages/en/blog/release/v6.14.3.md
similarity index 100%
rename from pages/en/blog/release/v6.14.3.md
rename to apps/site/pages/en/blog/release/v6.14.3.md
diff --git a/pages/en/blog/release/v6.14.4.md b/apps/site/pages/en/blog/release/v6.14.4.md
similarity index 100%
rename from pages/en/blog/release/v6.14.4.md
rename to apps/site/pages/en/blog/release/v6.14.4.md
diff --git a/pages/en/blog/release/v6.15.0.md b/apps/site/pages/en/blog/release/v6.15.0.md
similarity index 100%
rename from pages/en/blog/release/v6.15.0.md
rename to apps/site/pages/en/blog/release/v6.15.0.md
diff --git a/pages/en/blog/release/v6.15.1.md b/apps/site/pages/en/blog/release/v6.15.1.md
similarity index 100%
rename from pages/en/blog/release/v6.15.1.md
rename to apps/site/pages/en/blog/release/v6.15.1.md
diff --git a/pages/en/blog/release/v6.16.0.md b/apps/site/pages/en/blog/release/v6.16.0.md
similarity index 100%
rename from pages/en/blog/release/v6.16.0.md
rename to apps/site/pages/en/blog/release/v6.16.0.md
diff --git a/pages/en/blog/release/v6.17.0.md b/apps/site/pages/en/blog/release/v6.17.0.md
similarity index 100%
rename from pages/en/blog/release/v6.17.0.md
rename to apps/site/pages/en/blog/release/v6.17.0.md
diff --git a/pages/en/blog/release/v6.17.1.md b/apps/site/pages/en/blog/release/v6.17.1.md
similarity index 100%
rename from pages/en/blog/release/v6.17.1.md
rename to apps/site/pages/en/blog/release/v6.17.1.md
diff --git a/pages/en/blog/release/v6.2.0.md b/apps/site/pages/en/blog/release/v6.2.0.md
similarity index 100%
rename from pages/en/blog/release/v6.2.0.md
rename to apps/site/pages/en/blog/release/v6.2.0.md
diff --git a/pages/en/blog/release/v6.2.1.md b/apps/site/pages/en/blog/release/v6.2.1.md
similarity index 100%
rename from pages/en/blog/release/v6.2.1.md
rename to apps/site/pages/en/blog/release/v6.2.1.md
diff --git a/pages/en/blog/release/v6.2.2.md b/apps/site/pages/en/blog/release/v6.2.2.md
similarity index 100%
rename from pages/en/blog/release/v6.2.2.md
rename to apps/site/pages/en/blog/release/v6.2.2.md
diff --git a/pages/en/blog/release/v6.3.0.md b/apps/site/pages/en/blog/release/v6.3.0.md
similarity index 100%
rename from pages/en/blog/release/v6.3.0.md
rename to apps/site/pages/en/blog/release/v6.3.0.md
diff --git a/pages/en/blog/release/v6.3.1.md b/apps/site/pages/en/blog/release/v6.3.1.md
similarity index 100%
rename from pages/en/blog/release/v6.3.1.md
rename to apps/site/pages/en/blog/release/v6.3.1.md
diff --git a/pages/en/blog/release/v6.4.0.md b/apps/site/pages/en/blog/release/v6.4.0.md
similarity index 100%
rename from pages/en/blog/release/v6.4.0.md
rename to apps/site/pages/en/blog/release/v6.4.0.md
diff --git a/pages/en/blog/release/v6.5.0.md b/apps/site/pages/en/blog/release/v6.5.0.md
similarity index 100%
rename from pages/en/blog/release/v6.5.0.md
rename to apps/site/pages/en/blog/release/v6.5.0.md
diff --git a/pages/en/blog/release/v6.6.0.md b/apps/site/pages/en/blog/release/v6.6.0.md
similarity index 100%
rename from pages/en/blog/release/v6.6.0.md
rename to apps/site/pages/en/blog/release/v6.6.0.md
diff --git a/pages/en/blog/release/v6.7.0.md b/apps/site/pages/en/blog/release/v6.7.0.md
similarity index 100%
rename from pages/en/blog/release/v6.7.0.md
rename to apps/site/pages/en/blog/release/v6.7.0.md
diff --git a/pages/en/blog/release/v6.8.0.md b/apps/site/pages/en/blog/release/v6.8.0.md
similarity index 100%
rename from pages/en/blog/release/v6.8.0.md
rename to apps/site/pages/en/blog/release/v6.8.0.md
diff --git a/pages/en/blog/release/v6.8.1.md b/apps/site/pages/en/blog/release/v6.8.1.md
similarity index 100%
rename from pages/en/blog/release/v6.8.1.md
rename to apps/site/pages/en/blog/release/v6.8.1.md
diff --git a/pages/en/blog/release/v6.9.0.md b/apps/site/pages/en/blog/release/v6.9.0.md
similarity index 100%
rename from pages/en/blog/release/v6.9.0.md
rename to apps/site/pages/en/blog/release/v6.9.0.md
diff --git a/pages/en/blog/release/v6.9.1.md b/apps/site/pages/en/blog/release/v6.9.1.md
similarity index 100%
rename from pages/en/blog/release/v6.9.1.md
rename to apps/site/pages/en/blog/release/v6.9.1.md
diff --git a/pages/en/blog/release/v6.9.2.md b/apps/site/pages/en/blog/release/v6.9.2.md
similarity index 100%
rename from pages/en/blog/release/v6.9.2.md
rename to apps/site/pages/en/blog/release/v6.9.2.md
diff --git a/pages/en/blog/release/v6.9.3.md b/apps/site/pages/en/blog/release/v6.9.3.md
similarity index 100%
rename from pages/en/blog/release/v6.9.3.md
rename to apps/site/pages/en/blog/release/v6.9.3.md
diff --git a/pages/en/blog/release/v6.9.4.md b/apps/site/pages/en/blog/release/v6.9.4.md
similarity index 100%
rename from pages/en/blog/release/v6.9.4.md
rename to apps/site/pages/en/blog/release/v6.9.4.md
diff --git a/pages/en/blog/release/v6.9.5.md b/apps/site/pages/en/blog/release/v6.9.5.md
similarity index 100%
rename from pages/en/blog/release/v6.9.5.md
rename to apps/site/pages/en/blog/release/v6.9.5.md
diff --git a/pages/en/blog/release/v7.0.0.md b/apps/site/pages/en/blog/release/v7.0.0.md
similarity index 100%
rename from pages/en/blog/release/v7.0.0.md
rename to apps/site/pages/en/blog/release/v7.0.0.md
diff --git a/pages/en/blog/release/v7.1.0.md b/apps/site/pages/en/blog/release/v7.1.0.md
similarity index 100%
rename from pages/en/blog/release/v7.1.0.md
rename to apps/site/pages/en/blog/release/v7.1.0.md
diff --git a/pages/en/blog/release/v7.10.0.md b/apps/site/pages/en/blog/release/v7.10.0.md
similarity index 100%
rename from pages/en/blog/release/v7.10.0.md
rename to apps/site/pages/en/blog/release/v7.10.0.md
diff --git a/pages/en/blog/release/v7.10.1.md b/apps/site/pages/en/blog/release/v7.10.1.md
similarity index 100%
rename from pages/en/blog/release/v7.10.1.md
rename to apps/site/pages/en/blog/release/v7.10.1.md
diff --git a/pages/en/blog/release/v7.2.0.md b/apps/site/pages/en/blog/release/v7.2.0.md
similarity index 100%
rename from pages/en/blog/release/v7.2.0.md
rename to apps/site/pages/en/blog/release/v7.2.0.md
diff --git a/pages/en/blog/release/v7.2.1.md b/apps/site/pages/en/blog/release/v7.2.1.md
similarity index 100%
rename from pages/en/blog/release/v7.2.1.md
rename to apps/site/pages/en/blog/release/v7.2.1.md
diff --git a/pages/en/blog/release/v7.3.0.md b/apps/site/pages/en/blog/release/v7.3.0.md
similarity index 100%
rename from pages/en/blog/release/v7.3.0.md
rename to apps/site/pages/en/blog/release/v7.3.0.md
diff --git a/pages/en/blog/release/v7.4.0.md b/apps/site/pages/en/blog/release/v7.4.0.md
similarity index 100%
rename from pages/en/blog/release/v7.4.0.md
rename to apps/site/pages/en/blog/release/v7.4.0.md
diff --git a/pages/en/blog/release/v7.5.0.md b/apps/site/pages/en/blog/release/v7.5.0.md
similarity index 100%
rename from pages/en/blog/release/v7.5.0.md
rename to apps/site/pages/en/blog/release/v7.5.0.md
diff --git a/pages/en/blog/release/v7.6.0.md b/apps/site/pages/en/blog/release/v7.6.0.md
similarity index 100%
rename from pages/en/blog/release/v7.6.0.md
rename to apps/site/pages/en/blog/release/v7.6.0.md
diff --git a/pages/en/blog/release/v7.7.0.md b/apps/site/pages/en/blog/release/v7.7.0.md
similarity index 100%
rename from pages/en/blog/release/v7.7.0.md
rename to apps/site/pages/en/blog/release/v7.7.0.md
diff --git a/pages/en/blog/release/v7.7.1.md b/apps/site/pages/en/blog/release/v7.7.1.md
similarity index 100%
rename from pages/en/blog/release/v7.7.1.md
rename to apps/site/pages/en/blog/release/v7.7.1.md
diff --git a/pages/en/blog/release/v7.7.2.md b/apps/site/pages/en/blog/release/v7.7.2.md
similarity index 100%
rename from pages/en/blog/release/v7.7.2.md
rename to apps/site/pages/en/blog/release/v7.7.2.md
diff --git a/pages/en/blog/release/v7.7.3.md b/apps/site/pages/en/blog/release/v7.7.3.md
similarity index 100%
rename from pages/en/blog/release/v7.7.3.md
rename to apps/site/pages/en/blog/release/v7.7.3.md
diff --git a/pages/en/blog/release/v7.7.4.md b/apps/site/pages/en/blog/release/v7.7.4.md
similarity index 100%
rename from pages/en/blog/release/v7.7.4.md
rename to apps/site/pages/en/blog/release/v7.7.4.md
diff --git a/pages/en/blog/release/v7.8.0.md b/apps/site/pages/en/blog/release/v7.8.0.md
similarity index 100%
rename from pages/en/blog/release/v7.8.0.md
rename to apps/site/pages/en/blog/release/v7.8.0.md
diff --git a/pages/en/blog/release/v7.9.0.md b/apps/site/pages/en/blog/release/v7.9.0.md
similarity index 100%
rename from pages/en/blog/release/v7.9.0.md
rename to apps/site/pages/en/blog/release/v7.9.0.md
diff --git a/pages/en/blog/release/v8.0.0.md b/apps/site/pages/en/blog/release/v8.0.0.md
similarity index 100%
rename from pages/en/blog/release/v8.0.0.md
rename to apps/site/pages/en/blog/release/v8.0.0.md
diff --git a/pages/en/blog/release/v8.1.0.md b/apps/site/pages/en/blog/release/v8.1.0.md
similarity index 100%
rename from pages/en/blog/release/v8.1.0.md
rename to apps/site/pages/en/blog/release/v8.1.0.md
diff --git a/pages/en/blog/release/v8.1.1.md b/apps/site/pages/en/blog/release/v8.1.1.md
similarity index 100%
rename from pages/en/blog/release/v8.1.1.md
rename to apps/site/pages/en/blog/release/v8.1.1.md
diff --git a/pages/en/blog/release/v8.1.2.md b/apps/site/pages/en/blog/release/v8.1.2.md
similarity index 100%
rename from pages/en/blog/release/v8.1.2.md
rename to apps/site/pages/en/blog/release/v8.1.2.md
diff --git a/pages/en/blog/release/v8.1.3.md b/apps/site/pages/en/blog/release/v8.1.3.md
similarity index 100%
rename from pages/en/blog/release/v8.1.3.md
rename to apps/site/pages/en/blog/release/v8.1.3.md
diff --git a/pages/en/blog/release/v8.1.4.md b/apps/site/pages/en/blog/release/v8.1.4.md
similarity index 100%
rename from pages/en/blog/release/v8.1.4.md
rename to apps/site/pages/en/blog/release/v8.1.4.md
diff --git a/pages/en/blog/release/v8.10.0.md b/apps/site/pages/en/blog/release/v8.10.0.md
similarity index 100%
rename from pages/en/blog/release/v8.10.0.md
rename to apps/site/pages/en/blog/release/v8.10.0.md
diff --git a/pages/en/blog/release/v8.11.0.md b/apps/site/pages/en/blog/release/v8.11.0.md
similarity index 100%
rename from pages/en/blog/release/v8.11.0.md
rename to apps/site/pages/en/blog/release/v8.11.0.md
diff --git a/pages/en/blog/release/v8.11.1.md b/apps/site/pages/en/blog/release/v8.11.1.md
similarity index 100%
rename from pages/en/blog/release/v8.11.1.md
rename to apps/site/pages/en/blog/release/v8.11.1.md
diff --git a/pages/en/blog/release/v8.11.2.md b/apps/site/pages/en/blog/release/v8.11.2.md
similarity index 100%
rename from pages/en/blog/release/v8.11.2.md
rename to apps/site/pages/en/blog/release/v8.11.2.md
diff --git a/pages/en/blog/release/v8.11.3.md b/apps/site/pages/en/blog/release/v8.11.3.md
similarity index 100%
rename from pages/en/blog/release/v8.11.3.md
rename to apps/site/pages/en/blog/release/v8.11.3.md
diff --git a/pages/en/blog/release/v8.11.4.md b/apps/site/pages/en/blog/release/v8.11.4.md
similarity index 100%
rename from pages/en/blog/release/v8.11.4.md
rename to apps/site/pages/en/blog/release/v8.11.4.md
diff --git a/pages/en/blog/release/v8.12.0.md b/apps/site/pages/en/blog/release/v8.12.0.md
similarity index 100%
rename from pages/en/blog/release/v8.12.0.md
rename to apps/site/pages/en/blog/release/v8.12.0.md
diff --git a/pages/en/blog/release/v8.13.0.md b/apps/site/pages/en/blog/release/v8.13.0.md
similarity index 100%
rename from pages/en/blog/release/v8.13.0.md
rename to apps/site/pages/en/blog/release/v8.13.0.md
diff --git a/pages/en/blog/release/v8.14.0.md b/apps/site/pages/en/blog/release/v8.14.0.md
similarity index 100%
rename from pages/en/blog/release/v8.14.0.md
rename to apps/site/pages/en/blog/release/v8.14.0.md
diff --git a/pages/en/blog/release/v8.14.1.md b/apps/site/pages/en/blog/release/v8.14.1.md
similarity index 100%
rename from pages/en/blog/release/v8.14.1.md
rename to apps/site/pages/en/blog/release/v8.14.1.md
diff --git a/pages/en/blog/release/v8.15.0.md b/apps/site/pages/en/blog/release/v8.15.0.md
similarity index 100%
rename from pages/en/blog/release/v8.15.0.md
rename to apps/site/pages/en/blog/release/v8.15.0.md
diff --git a/pages/en/blog/release/v8.15.1.md b/apps/site/pages/en/blog/release/v8.15.1.md
similarity index 100%
rename from pages/en/blog/release/v8.15.1.md
rename to apps/site/pages/en/blog/release/v8.15.1.md
diff --git a/pages/en/blog/release/v8.16.0.md b/apps/site/pages/en/blog/release/v8.16.0.md
similarity index 100%
rename from pages/en/blog/release/v8.16.0.md
rename to apps/site/pages/en/blog/release/v8.16.0.md
diff --git a/pages/en/blog/release/v8.16.1.md b/apps/site/pages/en/blog/release/v8.16.1.md
similarity index 100%
rename from pages/en/blog/release/v8.16.1.md
rename to apps/site/pages/en/blog/release/v8.16.1.md
diff --git a/pages/en/blog/release/v8.16.2.md b/apps/site/pages/en/blog/release/v8.16.2.md
similarity index 100%
rename from pages/en/blog/release/v8.16.2.md
rename to apps/site/pages/en/blog/release/v8.16.2.md
diff --git a/pages/en/blog/release/v8.17.0.md b/apps/site/pages/en/blog/release/v8.17.0.md
similarity index 100%
rename from pages/en/blog/release/v8.17.0.md
rename to apps/site/pages/en/blog/release/v8.17.0.md
diff --git a/pages/en/blog/release/v8.2.0.md b/apps/site/pages/en/blog/release/v8.2.0.md
similarity index 100%
rename from pages/en/blog/release/v8.2.0.md
rename to apps/site/pages/en/blog/release/v8.2.0.md
diff --git a/pages/en/blog/release/v8.2.1.md b/apps/site/pages/en/blog/release/v8.2.1.md
similarity index 100%
rename from pages/en/blog/release/v8.2.1.md
rename to apps/site/pages/en/blog/release/v8.2.1.md
diff --git a/pages/en/blog/release/v8.3.0.md b/apps/site/pages/en/blog/release/v8.3.0.md
similarity index 100%
rename from pages/en/blog/release/v8.3.0.md
rename to apps/site/pages/en/blog/release/v8.3.0.md
diff --git a/pages/en/blog/release/v8.4.0.md b/apps/site/pages/en/blog/release/v8.4.0.md
similarity index 100%
rename from pages/en/blog/release/v8.4.0.md
rename to apps/site/pages/en/blog/release/v8.4.0.md
diff --git a/pages/en/blog/release/v8.5.0.md b/apps/site/pages/en/blog/release/v8.5.0.md
similarity index 100%
rename from pages/en/blog/release/v8.5.0.md
rename to apps/site/pages/en/blog/release/v8.5.0.md
diff --git a/pages/en/blog/release/v8.6.0.md b/apps/site/pages/en/blog/release/v8.6.0.md
similarity index 100%
rename from pages/en/blog/release/v8.6.0.md
rename to apps/site/pages/en/blog/release/v8.6.0.md
diff --git a/pages/en/blog/release/v8.7.0.md b/apps/site/pages/en/blog/release/v8.7.0.md
similarity index 100%
rename from pages/en/blog/release/v8.7.0.md
rename to apps/site/pages/en/blog/release/v8.7.0.md
diff --git a/pages/en/blog/release/v8.8.0.md b/apps/site/pages/en/blog/release/v8.8.0.md
similarity index 100%
rename from pages/en/blog/release/v8.8.0.md
rename to apps/site/pages/en/blog/release/v8.8.0.md
diff --git a/pages/en/blog/release/v8.8.1.md b/apps/site/pages/en/blog/release/v8.8.1.md
similarity index 100%
rename from pages/en/blog/release/v8.8.1.md
rename to apps/site/pages/en/blog/release/v8.8.1.md
diff --git a/pages/en/blog/release/v8.9.0.md b/apps/site/pages/en/blog/release/v8.9.0.md
similarity index 100%
rename from pages/en/blog/release/v8.9.0.md
rename to apps/site/pages/en/blog/release/v8.9.0.md
diff --git a/pages/en/blog/release/v8.9.1.md b/apps/site/pages/en/blog/release/v8.9.1.md
similarity index 100%
rename from pages/en/blog/release/v8.9.1.md
rename to apps/site/pages/en/blog/release/v8.9.1.md
diff --git a/pages/en/blog/release/v8.9.2.md b/apps/site/pages/en/blog/release/v8.9.2.md
similarity index 100%
rename from pages/en/blog/release/v8.9.2.md
rename to apps/site/pages/en/blog/release/v8.9.2.md
diff --git a/pages/en/blog/release/v8.9.3.md b/apps/site/pages/en/blog/release/v8.9.3.md
similarity index 100%
rename from pages/en/blog/release/v8.9.3.md
rename to apps/site/pages/en/blog/release/v8.9.3.md
diff --git a/pages/en/blog/release/v8.9.4.md b/apps/site/pages/en/blog/release/v8.9.4.md
similarity index 100%
rename from pages/en/blog/release/v8.9.4.md
rename to apps/site/pages/en/blog/release/v8.9.4.md
diff --git a/pages/en/blog/release/v9.0.0.md b/apps/site/pages/en/blog/release/v9.0.0.md
similarity index 100%
rename from pages/en/blog/release/v9.0.0.md
rename to apps/site/pages/en/blog/release/v9.0.0.md
diff --git a/pages/en/blog/release/v9.1.0.md b/apps/site/pages/en/blog/release/v9.1.0.md
similarity index 100%
rename from pages/en/blog/release/v9.1.0.md
rename to apps/site/pages/en/blog/release/v9.1.0.md
diff --git a/pages/en/blog/release/v9.10.0.md b/apps/site/pages/en/blog/release/v9.10.0.md
similarity index 100%
rename from pages/en/blog/release/v9.10.0.md
rename to apps/site/pages/en/blog/release/v9.10.0.md
diff --git a/pages/en/blog/release/v9.10.1.md b/apps/site/pages/en/blog/release/v9.10.1.md
similarity index 100%
rename from pages/en/blog/release/v9.10.1.md
rename to apps/site/pages/en/blog/release/v9.10.1.md
diff --git a/pages/en/blog/release/v9.11.0.md b/apps/site/pages/en/blog/release/v9.11.0.md
similarity index 100%
rename from pages/en/blog/release/v9.11.0.md
rename to apps/site/pages/en/blog/release/v9.11.0.md
diff --git a/pages/en/blog/release/v9.11.1.md b/apps/site/pages/en/blog/release/v9.11.1.md
similarity index 100%
rename from pages/en/blog/release/v9.11.1.md
rename to apps/site/pages/en/blog/release/v9.11.1.md
diff --git a/pages/en/blog/release/v9.11.2.md b/apps/site/pages/en/blog/release/v9.11.2.md
similarity index 100%
rename from pages/en/blog/release/v9.11.2.md
rename to apps/site/pages/en/blog/release/v9.11.2.md
diff --git a/pages/en/blog/release/v9.2.0.md b/apps/site/pages/en/blog/release/v9.2.0.md
similarity index 100%
rename from pages/en/blog/release/v9.2.0.md
rename to apps/site/pages/en/blog/release/v9.2.0.md
diff --git a/pages/en/blog/release/v9.2.1.md b/apps/site/pages/en/blog/release/v9.2.1.md
similarity index 100%
rename from pages/en/blog/release/v9.2.1.md
rename to apps/site/pages/en/blog/release/v9.2.1.md
diff --git a/pages/en/blog/release/v9.3.0.md b/apps/site/pages/en/blog/release/v9.3.0.md
similarity index 100%
rename from pages/en/blog/release/v9.3.0.md
rename to apps/site/pages/en/blog/release/v9.3.0.md
diff --git a/pages/en/blog/release/v9.4.0.md b/apps/site/pages/en/blog/release/v9.4.0.md
similarity index 100%
rename from pages/en/blog/release/v9.4.0.md
rename to apps/site/pages/en/blog/release/v9.4.0.md
diff --git a/pages/en/blog/release/v9.5.0.md b/apps/site/pages/en/blog/release/v9.5.0.md
similarity index 100%
rename from pages/en/blog/release/v9.5.0.md
rename to apps/site/pages/en/blog/release/v9.5.0.md
diff --git a/pages/en/blog/release/v9.6.0.md b/apps/site/pages/en/blog/release/v9.6.0.md
similarity index 100%
rename from pages/en/blog/release/v9.6.0.md
rename to apps/site/pages/en/blog/release/v9.6.0.md
diff --git a/pages/en/blog/release/v9.6.1.md b/apps/site/pages/en/blog/release/v9.6.1.md
similarity index 100%
rename from pages/en/blog/release/v9.6.1.md
rename to apps/site/pages/en/blog/release/v9.6.1.md
diff --git a/pages/en/blog/release/v9.7.0.md b/apps/site/pages/en/blog/release/v9.7.0.md
similarity index 100%
rename from pages/en/blog/release/v9.7.0.md
rename to apps/site/pages/en/blog/release/v9.7.0.md
diff --git a/pages/en/blog/release/v9.7.1.md b/apps/site/pages/en/blog/release/v9.7.1.md
similarity index 100%
rename from pages/en/blog/release/v9.7.1.md
rename to apps/site/pages/en/blog/release/v9.7.1.md
diff --git a/pages/en/blog/release/v9.8.0.md b/apps/site/pages/en/blog/release/v9.8.0.md
similarity index 100%
rename from pages/en/blog/release/v9.8.0.md
rename to apps/site/pages/en/blog/release/v9.8.0.md
diff --git a/pages/en/blog/release/v9.9.0.md b/apps/site/pages/en/blog/release/v9.9.0.md
similarity index 100%
rename from pages/en/blog/release/v9.9.0.md
rename to apps/site/pages/en/blog/release/v9.9.0.md
diff --git a/pages/en/blog/uncategorized/10-lts-to-12-lts.md b/apps/site/pages/en/blog/uncategorized/10-lts-to-12-lts.md
similarity index 100%
rename from pages/en/blog/uncategorized/10-lts-to-12-lts.md
rename to apps/site/pages/en/blog/uncategorized/10-lts-to-12-lts.md
diff --git a/pages/en/blog/uncategorized/an-easy-way-to-build-scalable-network-programs.md b/apps/site/pages/en/blog/uncategorized/an-easy-way-to-build-scalable-network-programs.md
similarity index 100%
rename from pages/en/blog/uncategorized/an-easy-way-to-build-scalable-network-programs.md
rename to apps/site/pages/en/blog/uncategorized/an-easy-way-to-build-scalable-network-programs.md
diff --git a/pages/en/blog/uncategorized/bnoordhuis-departure.md b/apps/site/pages/en/blog/uncategorized/bnoordhuis-departure.md
similarity index 100%
rename from pages/en/blog/uncategorized/bnoordhuis-departure.md
rename to apps/site/pages/en/blog/uncategorized/bnoordhuis-departure.md
diff --git a/pages/en/blog/uncategorized/development-environment.md b/apps/site/pages/en/blog/uncategorized/development-environment.md
similarity index 100%
rename from pages/en/blog/uncategorized/development-environment.md
rename to apps/site/pages/en/blog/uncategorized/development-environment.md
diff --git a/pages/en/blog/uncategorized/evolving-the-node-js-brand.md b/apps/site/pages/en/blog/uncategorized/evolving-the-node-js-brand.md
similarity index 100%
rename from pages/en/blog/uncategorized/evolving-the-node-js-brand.md
rename to apps/site/pages/en/blog/uncategorized/evolving-the-node-js-brand.md
diff --git a/pages/en/blog/uncategorized/growing-up.md b/apps/site/pages/en/blog/uncategorized/growing-up.md
similarity index 100%
rename from pages/en/blog/uncategorized/growing-up.md
rename to apps/site/pages/en/blog/uncategorized/growing-up.md
diff --git a/pages/en/blog/uncategorized/jobs-nodejs-org.md b/apps/site/pages/en/blog/uncategorized/jobs-nodejs-org.md
similarity index 100%
rename from pages/en/blog/uncategorized/jobs-nodejs-org.md
rename to apps/site/pages/en/blog/uncategorized/jobs-nodejs-org.md
diff --git a/pages/en/blog/uncategorized/ldapjs-a-reprise-of-ldap.md b/apps/site/pages/en/blog/uncategorized/ldapjs-a-reprise-of-ldap.md
similarity index 100%
rename from pages/en/blog/uncategorized/ldapjs-a-reprise-of-ldap.md
rename to apps/site/pages/en/blog/uncategorized/ldapjs-a-reprise-of-ldap.md
diff --git a/pages/en/blog/uncategorized/libuv-status-report.md b/apps/site/pages/en/blog/uncategorized/libuv-status-report.md
similarity index 100%
rename from pages/en/blog/uncategorized/libuv-status-report.md
rename to apps/site/pages/en/blog/uncategorized/libuv-status-report.md
diff --git a/pages/en/blog/uncategorized/node-interactive-convince-boss.md b/apps/site/pages/en/blog/uncategorized/node-interactive-convince-boss.md
similarity index 100%
rename from pages/en/blog/uncategorized/node-interactive-convince-boss.md
rename to apps/site/pages/en/blog/uncategorized/node-interactive-convince-boss.md
diff --git a/pages/en/blog/uncategorized/node-meetup-this-thursday.md b/apps/site/pages/en/blog/uncategorized/node-meetup-this-thursday.md
similarity index 100%
rename from pages/en/blog/uncategorized/node-meetup-this-thursday.md
rename to apps/site/pages/en/blog/uncategorized/node-meetup-this-thursday.md
diff --git a/pages/en/blog/uncategorized/node-office-hours-cut-short.md b/apps/site/pages/en/blog/uncategorized/node-office-hours-cut-short.md
similarity index 100%
rename from pages/en/blog/uncategorized/node-office-hours-cut-short.md
rename to apps/site/pages/en/blog/uncategorized/node-office-hours-cut-short.md
diff --git a/pages/en/blog/uncategorized/notes-from-the-road.md b/apps/site/pages/en/blog/uncategorized/notes-from-the-road.md
similarity index 100%
rename from pages/en/blog/uncategorized/notes-from-the-road.md
rename to apps/site/pages/en/blog/uncategorized/notes-from-the-road.md
diff --git a/pages/en/blog/uncategorized/office-hours.md b/apps/site/pages/en/blog/uncategorized/office-hours.md
similarity index 100%
rename from pages/en/blog/uncategorized/office-hours.md
rename to apps/site/pages/en/blog/uncategorized/office-hours.md
diff --git a/pages/en/blog/uncategorized/porting-node-to-windows-with-microsofts-help.md b/apps/site/pages/en/blog/uncategorized/porting-node-to-windows-with-microsofts-help.md
similarity index 100%
rename from pages/en/blog/uncategorized/porting-node-to-windows-with-microsofts-help.md
rename to apps/site/pages/en/blog/uncategorized/porting-node-to-windows-with-microsofts-help.md
diff --git a/pages/en/blog/uncategorized/profiling-node-js.md b/apps/site/pages/en/blog/uncategorized/profiling-node-js.md
similarity index 100%
rename from pages/en/blog/uncategorized/profiling-node-js.md
rename to apps/site/pages/en/blog/uncategorized/profiling-node-js.md
diff --git a/pages/en/blog/uncategorized/some-new-node-projects.md b/apps/site/pages/en/blog/uncategorized/some-new-node-projects.md
similarity index 100%
rename from pages/en/blog/uncategorized/some-new-node-projects.md
rename to apps/site/pages/en/blog/uncategorized/some-new-node-projects.md
diff --git a/pages/en/blog/uncategorized/the-videos-from-node-meetup.md b/apps/site/pages/en/blog/uncategorized/the-videos-from-node-meetup.md
similarity index 100%
rename from pages/en/blog/uncategorized/the-videos-from-node-meetup.md
rename to apps/site/pages/en/blog/uncategorized/the-videos-from-node-meetup.md
diff --git a/pages/en/blog/uncategorized/tj-fontaine-new-node-lead.md b/apps/site/pages/en/blog/uncategorized/tj-fontaine-new-node-lead.md
similarity index 100%
rename from pages/en/blog/uncategorized/tj-fontaine-new-node-lead.md
rename to apps/site/pages/en/blog/uncategorized/tj-fontaine-new-node-lead.md
diff --git a/pages/en/blog/uncategorized/trademark.md b/apps/site/pages/en/blog/uncategorized/trademark.md
similarity index 100%
rename from pages/en/blog/uncategorized/trademark.md
rename to apps/site/pages/en/blog/uncategorized/trademark.md
diff --git a/pages/en/blog/uncategorized/version-0-6.md b/apps/site/pages/en/blog/uncategorized/version-0-6.md
similarity index 100%
rename from pages/en/blog/uncategorized/version-0-6.md
rename to apps/site/pages/en/blog/uncategorized/version-0-6.md
diff --git a/pages/en/blog/video/bert-belder-libuv-lxjs-2012.md b/apps/site/pages/en/blog/video/bert-belder-libuv-lxjs-2012.md
similarity index 100%
rename from pages/en/blog/video/bert-belder-libuv-lxjs-2012.md
rename to apps/site/pages/en/blog/video/bert-belder-libuv-lxjs-2012.md
diff --git a/pages/en/blog/video/bryan-cantrill-instrumenting-the-real-time-web.md b/apps/site/pages/en/blog/video/bryan-cantrill-instrumenting-the-real-time-web.md
similarity index 100%
rename from pages/en/blog/video/bryan-cantrill-instrumenting-the-real-time-web.md
rename to apps/site/pages/en/blog/video/bryan-cantrill-instrumenting-the-real-time-web.md
diff --git a/pages/en/blog/video/welcome-to-the-node-blog.md b/apps/site/pages/en/blog/video/welcome-to-the-node-blog.md
similarity index 100%
rename from pages/en/blog/video/welcome-to-the-node-blog.md
rename to apps/site/pages/en/blog/video/welcome-to-the-node-blog.md
diff --git a/pages/en/blog/vulnerability/april-2020-openssl-updates.md b/apps/site/pages/en/blog/vulnerability/april-2020-openssl-updates.md
similarity index 100%
rename from pages/en/blog/vulnerability/april-2020-openssl-updates.md
rename to apps/site/pages/en/blog/vulnerability/april-2020-openssl-updates.md
diff --git a/pages/en/blog/vulnerability/april-2021-security-releases.md b/apps/site/pages/en/blog/vulnerability/april-2021-security-releases.md
similarity index 100%
rename from pages/en/blog/vulnerability/april-2021-security-releases.md
rename to apps/site/pages/en/blog/vulnerability/april-2021-security-releases.md
diff --git a/pages/en/blog/vulnerability/april-2024-security-releases-2.md b/apps/site/pages/en/blog/vulnerability/april-2024-security-releases-2.md
similarity index 100%
rename from pages/en/blog/vulnerability/april-2024-security-releases-2.md
rename to apps/site/pages/en/blog/vulnerability/april-2024-security-releases-2.md
diff --git a/pages/en/blog/vulnerability/april-2024-security-releases.md b/apps/site/pages/en/blog/vulnerability/april-2024-security-releases.md
similarity index 100%
rename from pages/en/blog/vulnerability/april-2024-security-releases.md
rename to apps/site/pages/en/blog/vulnerability/april-2024-security-releases.md
diff --git a/pages/en/blog/vulnerability/aug-2019-security-releases.md b/apps/site/pages/en/blog/vulnerability/aug-2019-security-releases.md
similarity index 100%
rename from pages/en/blog/vulnerability/aug-2019-security-releases.md
rename to apps/site/pages/en/blog/vulnerability/aug-2019-security-releases.md
diff --git a/pages/en/blog/vulnerability/aug-2021-security-releases.md b/apps/site/pages/en/blog/vulnerability/aug-2021-security-releases.md
similarity index 100%
rename from pages/en/blog/vulnerability/aug-2021-security-releases.md
rename to apps/site/pages/en/blog/vulnerability/aug-2021-security-releases.md
diff --git a/pages/en/blog/vulnerability/aug-2021-security-releases2.md b/apps/site/pages/en/blog/vulnerability/aug-2021-security-releases2.md
similarity index 100%
rename from pages/en/blog/vulnerability/aug-2021-security-releases2.md
rename to apps/site/pages/en/blog/vulnerability/aug-2021-security-releases2.md
diff --git a/pages/en/blog/vulnerability/august-2018-security-releases.md b/apps/site/pages/en/blog/vulnerability/august-2018-security-releases.md
similarity index 100%
rename from pages/en/blog/vulnerability/august-2018-security-releases.md
rename to apps/site/pages/en/blog/vulnerability/august-2018-security-releases.md
diff --git a/pages/en/blog/vulnerability/august-2023-security-releases.md b/apps/site/pages/en/blog/vulnerability/august-2023-security-releases.md
similarity index 100%
rename from pages/en/blog/vulnerability/august-2023-security-releases.md
rename to apps/site/pages/en/blog/vulnerability/august-2023-security-releases.md
diff --git a/pages/en/blog/vulnerability/cve-2015-8027_cve-2015-6764.md b/apps/site/pages/en/blog/vulnerability/cve-2015-8027_cve-2015-6764.md
similarity index 100%
rename from pages/en/blog/vulnerability/cve-2015-8027_cve-2015-6764.md
rename to apps/site/pages/en/blog/vulnerability/cve-2015-8027_cve-2015-6764.md
diff --git a/pages/en/blog/vulnerability/december-2015-security-release-update.md b/apps/site/pages/en/blog/vulnerability/december-2015-security-release-update.md
similarity index 100%
rename from pages/en/blog/vulnerability/december-2015-security-release-update.md
rename to apps/site/pages/en/blog/vulnerability/december-2015-security-release-update.md
diff --git a/pages/en/blog/vulnerability/december-2015-security-releases.md b/apps/site/pages/en/blog/vulnerability/december-2015-security-releases.md
similarity index 100%
rename from pages/en/blog/vulnerability/december-2015-security-releases.md
rename to apps/site/pages/en/blog/vulnerability/december-2015-security-releases.md
diff --git a/pages/en/blog/vulnerability/december-2017-security-releases.md b/apps/site/pages/en/blog/vulnerability/december-2017-security-releases.md
similarity index 100%
rename from pages/en/blog/vulnerability/december-2017-security-releases.md
rename to apps/site/pages/en/blog/vulnerability/december-2017-security-releases.md
diff --git a/pages/en/blog/vulnerability/december-2019-security-releases.md b/apps/site/pages/en/blog/vulnerability/december-2019-security-releases.md
similarity index 100%
rename from pages/en/blog/vulnerability/december-2019-security-releases.md
rename to apps/site/pages/en/blog/vulnerability/december-2019-security-releases.md
diff --git a/pages/en/blog/vulnerability/february-2016-security-releases.md b/apps/site/pages/en/blog/vulnerability/february-2016-security-releases.md
similarity index 100%
rename from pages/en/blog/vulnerability/february-2016-security-releases.md
rename to apps/site/pages/en/blog/vulnerability/february-2016-security-releases.md
diff --git a/pages/en/blog/vulnerability/february-2019-security-releases.md b/apps/site/pages/en/blog/vulnerability/february-2019-security-releases.md
similarity index 100%
rename from pages/en/blog/vulnerability/february-2019-security-releases.md
rename to apps/site/pages/en/blog/vulnerability/february-2019-security-releases.md
diff --git a/pages/en/blog/vulnerability/february-2020-security-releases.md b/apps/site/pages/en/blog/vulnerability/february-2020-security-releases.md
similarity index 100%
rename from pages/en/blog/vulnerability/february-2020-security-releases.md
rename to apps/site/pages/en/blog/vulnerability/february-2020-security-releases.md
diff --git a/pages/en/blog/vulnerability/february-2021-security-releases.md b/apps/site/pages/en/blog/vulnerability/february-2021-security-releases.md
similarity index 100%
rename from pages/en/blog/vulnerability/february-2021-security-releases.md
rename to apps/site/pages/en/blog/vulnerability/february-2021-security-releases.md
diff --git a/pages/en/blog/vulnerability/february-2023-security-releases.md b/apps/site/pages/en/blog/vulnerability/february-2023-security-releases.md
similarity index 100%
rename from pages/en/blog/vulnerability/february-2023-security-releases.md
rename to apps/site/pages/en/blog/vulnerability/february-2023-security-releases.md
diff --git a/pages/en/blog/vulnerability/february-2024-security-releases.md b/apps/site/pages/en/blog/vulnerability/february-2024-security-releases.md
similarity index 100%
rename from pages/en/blog/vulnerability/february-2024-security-releases.md
rename to apps/site/pages/en/blog/vulnerability/february-2024-security-releases.md
diff --git a/pages/en/blog/vulnerability/http-server-pipeline-flood-dos.md b/apps/site/pages/en/blog/vulnerability/http-server-pipeline-flood-dos.md
similarity index 100%
rename from pages/en/blog/vulnerability/http-server-pipeline-flood-dos.md
rename to apps/site/pages/en/blog/vulnerability/http-server-pipeline-flood-dos.md
diff --git a/pages/en/blog/vulnerability/http-server-security-vulnerability-please-upgrade-to-0-6-17.md b/apps/site/pages/en/blog/vulnerability/http-server-security-vulnerability-please-upgrade-to-0-6-17.md
similarity index 100%
rename from pages/en/blog/vulnerability/http-server-security-vulnerability-please-upgrade-to-0-6-17.md
rename to apps/site/pages/en/blog/vulnerability/http-server-security-vulnerability-please-upgrade-to-0-6-17.md
diff --git a/pages/en/blog/vulnerability/jan-2018-spectre-meltdown.md b/apps/site/pages/en/blog/vulnerability/jan-2018-spectre-meltdown.md
similarity index 100%
rename from pages/en/blog/vulnerability/jan-2018-spectre-meltdown.md
rename to apps/site/pages/en/blog/vulnerability/jan-2018-spectre-meltdown.md
diff --git a/pages/en/blog/vulnerability/jan-2022-security-releases.md b/apps/site/pages/en/blog/vulnerability/jan-2022-security-releases.md
similarity index 100%
rename from pages/en/blog/vulnerability/jan-2022-security-releases.md
rename to apps/site/pages/en/blog/vulnerability/jan-2022-security-releases.md
diff --git a/pages/en/blog/vulnerability/january-2021-security-releases.md b/apps/site/pages/en/blog/vulnerability/january-2021-security-releases.md
similarity index 100%
rename from pages/en/blog/vulnerability/january-2021-security-releases.md
rename to apps/site/pages/en/blog/vulnerability/january-2021-security-releases.md
diff --git a/pages/en/blog/vulnerability/july-2017-security-releases.md b/apps/site/pages/en/blog/vulnerability/july-2017-security-releases.md
similarity index 100%
rename from pages/en/blog/vulnerability/july-2017-security-releases.md
rename to apps/site/pages/en/blog/vulnerability/july-2017-security-releases.md
diff --git a/pages/en/blog/vulnerability/july-2021-security-releases-2.md b/apps/site/pages/en/blog/vulnerability/july-2021-security-releases-2.md
similarity index 100%
rename from pages/en/blog/vulnerability/july-2021-security-releases-2.md
rename to apps/site/pages/en/blog/vulnerability/july-2021-security-releases-2.md
diff --git a/pages/en/blog/vulnerability/july-2021-security-releases.md b/apps/site/pages/en/blog/vulnerability/july-2021-security-releases.md
similarity index 100%
rename from pages/en/blog/vulnerability/july-2021-security-releases.md
rename to apps/site/pages/en/blog/vulnerability/july-2021-security-releases.md
diff --git a/pages/en/blog/vulnerability/july-2022-security-releases.md b/apps/site/pages/en/blog/vulnerability/july-2022-security-releases.md
similarity index 100%
rename from pages/en/blog/vulnerability/july-2022-security-releases.md
rename to apps/site/pages/en/blog/vulnerability/july-2022-security-releases.md
diff --git a/pages/en/blog/vulnerability/july-2024-security-releases.md b/apps/site/pages/en/blog/vulnerability/july-2024-security-releases.md
similarity index 100%
rename from pages/en/blog/vulnerability/july-2024-security-releases.md
rename to apps/site/pages/en/blog/vulnerability/july-2024-security-releases.md
diff --git a/pages/en/blog/vulnerability/june-2016-security-releases.md b/apps/site/pages/en/blog/vulnerability/june-2016-security-releases.md
similarity index 100%
rename from pages/en/blog/vulnerability/june-2016-security-releases.md
rename to apps/site/pages/en/blog/vulnerability/june-2016-security-releases.md
diff --git a/pages/en/blog/vulnerability/june-2018-security-releases.md b/apps/site/pages/en/blog/vulnerability/june-2018-security-releases.md
similarity index 100%
rename from pages/en/blog/vulnerability/june-2018-security-releases.md
rename to apps/site/pages/en/blog/vulnerability/june-2018-security-releases.md
diff --git a/pages/en/blog/vulnerability/june-2020-security-releases.md b/apps/site/pages/en/blog/vulnerability/june-2020-security-releases.md
similarity index 100%
rename from pages/en/blog/vulnerability/june-2020-security-releases.md
rename to apps/site/pages/en/blog/vulnerability/june-2020-security-releases.md
diff --git a/pages/en/blog/vulnerability/june-2023-security-releases.md b/apps/site/pages/en/blog/vulnerability/june-2023-security-releases.md
similarity index 100%
rename from pages/en/blog/vulnerability/june-2023-security-releases.md
rename to apps/site/pages/en/blog/vulnerability/june-2023-security-releases.md
diff --git a/pages/en/blog/vulnerability/mar-2022-security-releases.md b/apps/site/pages/en/blog/vulnerability/mar-2022-security-releases.md
similarity index 100%
rename from pages/en/blog/vulnerability/mar-2022-security-releases.md
rename to apps/site/pages/en/blog/vulnerability/mar-2022-security-releases.md
diff --git a/pages/en/blog/vulnerability/march-2018-security-releases.md b/apps/site/pages/en/blog/vulnerability/march-2018-security-releases.md
similarity index 100%
rename from pages/en/blog/vulnerability/march-2018-security-releases.md
rename to apps/site/pages/en/blog/vulnerability/march-2018-security-releases.md
diff --git a/pages/en/blog/vulnerability/november-2018-security-releases.md b/apps/site/pages/en/blog/vulnerability/november-2018-security-releases.md
similarity index 100%
rename from pages/en/blog/vulnerability/november-2018-security-releases.md
rename to apps/site/pages/en/blog/vulnerability/november-2018-security-releases.md
diff --git a/pages/en/blog/vulnerability/november-2020-security-releases.md b/apps/site/pages/en/blog/vulnerability/november-2020-security-releases.md
similarity index 100%
rename from pages/en/blog/vulnerability/november-2020-security-releases.md
rename to apps/site/pages/en/blog/vulnerability/november-2020-security-releases.md
diff --git a/pages/en/blog/vulnerability/november-2022-security-releases.md b/apps/site/pages/en/blog/vulnerability/november-2022-security-releases.md
similarity index 100%
rename from pages/en/blog/vulnerability/november-2022-security-releases.md
rename to apps/site/pages/en/blog/vulnerability/november-2022-security-releases.md
diff --git a/pages/en/blog/vulnerability/npm-tokens-leak-march-2016.md b/apps/site/pages/en/blog/vulnerability/npm-tokens-leak-march-2016.md
similarity index 100%
rename from pages/en/blog/vulnerability/npm-tokens-leak-march-2016.md
rename to apps/site/pages/en/blog/vulnerability/npm-tokens-leak-march-2016.md
diff --git a/pages/en/blog/vulnerability/oct-2017-dos.md b/apps/site/pages/en/blog/vulnerability/oct-2017-dos.md
similarity index 100%
rename from pages/en/blog/vulnerability/oct-2017-dos.md
rename to apps/site/pages/en/blog/vulnerability/oct-2017-dos.md
diff --git a/pages/en/blog/vulnerability/oct-2021-security-releases.md b/apps/site/pages/en/blog/vulnerability/oct-2021-security-releases.md
similarity index 100%
rename from pages/en/blog/vulnerability/oct-2021-security-releases.md
rename to apps/site/pages/en/blog/vulnerability/oct-2021-security-releases.md
diff --git a/pages/en/blog/vulnerability/october-2016-security-releases.md b/apps/site/pages/en/blog/vulnerability/october-2016-security-releases.md
similarity index 100%
rename from pages/en/blog/vulnerability/october-2016-security-releases.md
rename to apps/site/pages/en/blog/vulnerability/october-2016-security-releases.md
diff --git a/pages/en/blog/vulnerability/october-2023-security-releases.md b/apps/site/pages/en/blog/vulnerability/october-2023-security-releases.md
similarity index 100%
rename from pages/en/blog/vulnerability/october-2023-security-releases.md
rename to apps/site/pages/en/blog/vulnerability/october-2023-security-releases.md
diff --git a/pages/en/blog/vulnerability/openssl-and-low-severity-fixes-jan-2016.md b/apps/site/pages/en/blog/vulnerability/openssl-and-low-severity-fixes-jan-2016.md
similarity index 100%
rename from pages/en/blog/vulnerability/openssl-and-low-severity-fixes-jan-2016.md
rename to apps/site/pages/en/blog/vulnerability/openssl-and-low-severity-fixes-jan-2016.md
diff --git a/pages/en/blog/vulnerability/openssl-and-utf8.md b/apps/site/pages/en/blog/vulnerability/openssl-and-utf8.md
similarity index 100%
rename from pages/en/blog/vulnerability/openssl-and-utf8.md
rename to apps/site/pages/en/blog/vulnerability/openssl-and-utf8.md
diff --git a/pages/en/blog/vulnerability/openssl-and-zlib-vulnerability-assessment.md b/apps/site/pages/en/blog/vulnerability/openssl-and-zlib-vulnerability-assessment.md
similarity index 100%
rename from pages/en/blog/vulnerability/openssl-and-zlib-vulnerability-assessment.md
rename to apps/site/pages/en/blog/vulnerability/openssl-and-zlib-vulnerability-assessment.md
diff --git a/pages/en/blog/vulnerability/openssl-fixes-in-regular-releases-dec2022.md b/apps/site/pages/en/blog/vulnerability/openssl-fixes-in-regular-releases-dec2022.md
similarity index 100%
rename from pages/en/blog/vulnerability/openssl-fixes-in-regular-releases-dec2022.md
rename to apps/site/pages/en/blog/vulnerability/openssl-fixes-in-regular-releases-dec2022.md
diff --git a/pages/en/blog/vulnerability/openssl-fixes-in-regular-releases-jun2022.md b/apps/site/pages/en/blog/vulnerability/openssl-fixes-in-regular-releases-jun2022.md
similarity index 100%
rename from pages/en/blog/vulnerability/openssl-fixes-in-regular-releases-jun2022.md
rename to apps/site/pages/en/blog/vulnerability/openssl-fixes-in-regular-releases-jun2022.md
diff --git a/pages/en/blog/vulnerability/openssl-fixes-in-regular-releases-may2022.md b/apps/site/pages/en/blog/vulnerability/openssl-fixes-in-regular-releases-may2022.md
similarity index 100%
rename from pages/en/blog/vulnerability/openssl-fixes-in-regular-releases-may2022.md
rename to apps/site/pages/en/blog/vulnerability/openssl-fixes-in-regular-releases-may2022.md
diff --git a/pages/en/blog/vulnerability/openssl-fixes-in-regular-releases-oct2023.md b/apps/site/pages/en/blog/vulnerability/openssl-fixes-in-regular-releases-oct2023.md
similarity index 100%
rename from pages/en/blog/vulnerability/openssl-fixes-in-regular-releases-oct2023.md
rename to apps/site/pages/en/blog/vulnerability/openssl-fixes-in-regular-releases-oct2023.md
diff --git a/pages/en/blog/vulnerability/openssl-january-2017.md b/apps/site/pages/en/blog/vulnerability/openssl-january-2017.md
similarity index 100%
rename from pages/en/blog/vulnerability/openssl-january-2017.md
rename to apps/site/pages/en/blog/vulnerability/openssl-january-2017.md
diff --git a/pages/en/blog/vulnerability/openssl-march-2016.md b/apps/site/pages/en/blog/vulnerability/openssl-march-2016.md
similarity index 100%
rename from pages/en/blog/vulnerability/openssl-march-2016.md
rename to apps/site/pages/en/blog/vulnerability/openssl-march-2016.md
diff --git a/pages/en/blog/vulnerability/openssl-may-2016.md b/apps/site/pages/en/blog/vulnerability/openssl-may-2016.md
similarity index 100%
rename from pages/en/blog/vulnerability/openssl-may-2016.md
rename to apps/site/pages/en/blog/vulnerability/openssl-may-2016.md
diff --git a/pages/en/blog/vulnerability/openssl-november-2017.md b/apps/site/pages/en/blog/vulnerability/openssl-november-2017.md
similarity index 100%
rename from pages/en/blog/vulnerability/openssl-november-2017.md
rename to apps/site/pages/en/blog/vulnerability/openssl-november-2017.md
diff --git a/pages/en/blog/vulnerability/openssl-november-2022.md b/apps/site/pages/en/blog/vulnerability/openssl-november-2022.md
similarity index 100%
rename from pages/en/blog/vulnerability/openssl-november-2022.md
rename to apps/site/pages/en/blog/vulnerability/openssl-november-2022.md
diff --git a/pages/en/blog/vulnerability/september-2016-security-releases.md b/apps/site/pages/en/blog/vulnerability/september-2016-security-releases.md
similarity index 100%
rename from pages/en/blog/vulnerability/september-2016-security-releases.md
rename to apps/site/pages/en/blog/vulnerability/september-2016-security-releases.md
diff --git a/pages/en/blog/vulnerability/september-2017-path-validation.md b/apps/site/pages/en/blog/vulnerability/september-2017-path-validation.md
similarity index 100%
rename from pages/en/blog/vulnerability/september-2017-path-validation.md
rename to apps/site/pages/en/blog/vulnerability/september-2017-path-validation.md
diff --git a/pages/en/blog/vulnerability/september-2019-openssl-no-updates.md b/apps/site/pages/en/blog/vulnerability/september-2019-openssl-no-updates.md
similarity index 100%
rename from pages/en/blog/vulnerability/september-2019-openssl-no-updates.md
rename to apps/site/pages/en/blog/vulnerability/september-2019-openssl-no-updates.md
diff --git a/pages/en/blog/vulnerability/september-2019-openssl-updates.md b/apps/site/pages/en/blog/vulnerability/september-2019-openssl-updates.md
similarity index 100%
rename from pages/en/blog/vulnerability/september-2019-openssl-updates.md
rename to apps/site/pages/en/blog/vulnerability/september-2019-openssl-updates.md
diff --git a/pages/en/blog/vulnerability/september-2020-security-releases.md b/apps/site/pages/en/blog/vulnerability/september-2020-security-releases.md
similarity index 100%
rename from pages/en/blog/vulnerability/september-2020-security-releases.md
rename to apps/site/pages/en/blog/vulnerability/september-2020-security-releases.md
diff --git a/pages/en/blog/vulnerability/september-2022-security-releases.md b/apps/site/pages/en/blog/vulnerability/september-2022-security-releases.md
similarity index 100%
rename from pages/en/blog/vulnerability/september-2022-security-releases.md
rename to apps/site/pages/en/blog/vulnerability/september-2022-security-releases.md
diff --git a/pages/en/blog/vulnerability/v8-memory-corruption-stack-overflow.md b/apps/site/pages/en/blog/vulnerability/v8-memory-corruption-stack-overflow.md
similarity index 100%
rename from pages/en/blog/vulnerability/v8-memory-corruption-stack-overflow.md
rename to apps/site/pages/en/blog/vulnerability/v8-memory-corruption-stack-overflow.md
diff --git a/pages/en/blog/weekly/weekly-update.2015-02-06.md b/apps/site/pages/en/blog/weekly/weekly-update.2015-02-06.md
similarity index 100%
rename from pages/en/blog/weekly/weekly-update.2015-02-06.md
rename to apps/site/pages/en/blog/weekly/weekly-update.2015-02-06.md
diff --git a/pages/en/blog/weekly/weekly-update.2015-02-13.md b/apps/site/pages/en/blog/weekly/weekly-update.2015-02-13.md
similarity index 100%
rename from pages/en/blog/weekly/weekly-update.2015-02-13.md
rename to apps/site/pages/en/blog/weekly/weekly-update.2015-02-13.md
diff --git a/pages/en/blog/weekly/weekly-update.2015-02-20.md b/apps/site/pages/en/blog/weekly/weekly-update.2015-02-20.md
similarity index 100%
rename from pages/en/blog/weekly/weekly-update.2015-02-20.md
rename to apps/site/pages/en/blog/weekly/weekly-update.2015-02-20.md
diff --git a/pages/en/blog/weekly/weekly-update.2015-02-27.md b/apps/site/pages/en/blog/weekly/weekly-update.2015-02-27.md
similarity index 100%
rename from pages/en/blog/weekly/weekly-update.2015-02-27.md
rename to apps/site/pages/en/blog/weekly/weekly-update.2015-02-27.md
diff --git a/pages/en/blog/weekly/weekly-update.2015-03-06.md b/apps/site/pages/en/blog/weekly/weekly-update.2015-03-06.md
similarity index 100%
rename from pages/en/blog/weekly/weekly-update.2015-03-06.md
rename to apps/site/pages/en/blog/weekly/weekly-update.2015-03-06.md
diff --git a/pages/en/blog/weekly/weekly-update.2015-03-13.md b/apps/site/pages/en/blog/weekly/weekly-update.2015-03-13.md
similarity index 100%
rename from pages/en/blog/weekly/weekly-update.2015-03-13.md
rename to apps/site/pages/en/blog/weekly/weekly-update.2015-03-13.md
diff --git a/pages/en/blog/weekly/weekly-update.2015-03-20.md b/apps/site/pages/en/blog/weekly/weekly-update.2015-03-20.md
similarity index 100%
rename from pages/en/blog/weekly/weekly-update.2015-03-20.md
rename to apps/site/pages/en/blog/weekly/weekly-update.2015-03-20.md
diff --git a/pages/en/blog/weekly/weekly-update.2015-03-27.md b/apps/site/pages/en/blog/weekly/weekly-update.2015-03-27.md
similarity index 100%
rename from pages/en/blog/weekly/weekly-update.2015-03-27.md
rename to apps/site/pages/en/blog/weekly/weekly-update.2015-03-27.md
diff --git a/pages/en/blog/weekly/weekly-update.2015-04-03.md b/apps/site/pages/en/blog/weekly/weekly-update.2015-04-03.md
similarity index 100%
rename from pages/en/blog/weekly/weekly-update.2015-04-03.md
rename to apps/site/pages/en/blog/weekly/weekly-update.2015-04-03.md
diff --git a/pages/en/blog/weekly/weekly-update.2015-04-10.md b/apps/site/pages/en/blog/weekly/weekly-update.2015-04-10.md
similarity index 100%
rename from pages/en/blog/weekly/weekly-update.2015-04-10.md
rename to apps/site/pages/en/blog/weekly/weekly-update.2015-04-10.md
diff --git a/pages/en/blog/weekly/weekly-update.2015-04-17.md b/apps/site/pages/en/blog/weekly/weekly-update.2015-04-17.md
similarity index 100%
rename from pages/en/blog/weekly/weekly-update.2015-04-17.md
rename to apps/site/pages/en/blog/weekly/weekly-update.2015-04-17.md
diff --git a/pages/en/blog/weekly/weekly-update.2015-04-24.md b/apps/site/pages/en/blog/weekly/weekly-update.2015-04-24.md
similarity index 100%
rename from pages/en/blog/weekly/weekly-update.2015-04-24.md
rename to apps/site/pages/en/blog/weekly/weekly-update.2015-04-24.md
diff --git a/pages/en/blog/weekly/weekly-update.2015-05-01.md b/apps/site/pages/en/blog/weekly/weekly-update.2015-05-01.md
similarity index 100%
rename from pages/en/blog/weekly/weekly-update.2015-05-01.md
rename to apps/site/pages/en/blog/weekly/weekly-update.2015-05-01.md
diff --git a/pages/en/blog/weekly/weekly-update.2015-05-08.md b/apps/site/pages/en/blog/weekly/weekly-update.2015-05-08.md
similarity index 100%
rename from pages/en/blog/weekly/weekly-update.2015-05-08.md
rename to apps/site/pages/en/blog/weekly/weekly-update.2015-05-08.md
diff --git a/pages/en/blog/weekly/weekly-update.2015-05-15.md b/apps/site/pages/en/blog/weekly/weekly-update.2015-05-15.md
similarity index 100%
rename from pages/en/blog/weekly/weekly-update.2015-05-15.md
rename to apps/site/pages/en/blog/weekly/weekly-update.2015-05-15.md
diff --git a/pages/en/blog/weekly/weekly-update.2015-05-22.md b/apps/site/pages/en/blog/weekly/weekly-update.2015-05-22.md
similarity index 100%
rename from pages/en/blog/weekly/weekly-update.2015-05-22.md
rename to apps/site/pages/en/blog/weekly/weekly-update.2015-05-22.md
diff --git a/pages/en/blog/weekly/weekly-update.2015-05-29.md b/apps/site/pages/en/blog/weekly/weekly-update.2015-05-29.md
similarity index 100%
rename from pages/en/blog/weekly/weekly-update.2015-05-29.md
rename to apps/site/pages/en/blog/weekly/weekly-update.2015-05-29.md
diff --git a/pages/en/blog/weekly/weekly-update.2015-06-05.md b/apps/site/pages/en/blog/weekly/weekly-update.2015-06-05.md
similarity index 100%
rename from pages/en/blog/weekly/weekly-update.2015-06-05.md
rename to apps/site/pages/en/blog/weekly/weekly-update.2015-06-05.md
diff --git a/pages/en/blog/weekly/weekly-update.2015-06-12.md b/apps/site/pages/en/blog/weekly/weekly-update.2015-06-12.md
similarity index 100%
rename from pages/en/blog/weekly/weekly-update.2015-06-12.md
rename to apps/site/pages/en/blog/weekly/weekly-update.2015-06-12.md
diff --git a/pages/en/blog/weekly/weekly-update.2015-06-19.md b/apps/site/pages/en/blog/weekly/weekly-update.2015-06-19.md
similarity index 100%
rename from pages/en/blog/weekly/weekly-update.2015-06-19.md
rename to apps/site/pages/en/blog/weekly/weekly-update.2015-06-19.md
diff --git a/pages/en/blog/weekly/weekly-update.2015-06-26.md b/apps/site/pages/en/blog/weekly/weekly-update.2015-06-26.md
similarity index 100%
rename from pages/en/blog/weekly/weekly-update.2015-06-26.md
rename to apps/site/pages/en/blog/weekly/weekly-update.2015-06-26.md
diff --git a/pages/en/blog/weekly/weekly-update.2015-07-03.md b/apps/site/pages/en/blog/weekly/weekly-update.2015-07-03.md
similarity index 100%
rename from pages/en/blog/weekly/weekly-update.2015-07-03.md
rename to apps/site/pages/en/blog/weekly/weekly-update.2015-07-03.md
diff --git a/pages/en/blog/weekly/weekly-update.2015-07-10.md b/apps/site/pages/en/blog/weekly/weekly-update.2015-07-10.md
similarity index 100%
rename from pages/en/blog/weekly/weekly-update.2015-07-10.md
rename to apps/site/pages/en/blog/weekly/weekly-update.2015-07-10.md
diff --git a/pages/en/blog/weekly/weekly-update.2015-07-17.md b/apps/site/pages/en/blog/weekly/weekly-update.2015-07-17.md
similarity index 100%
rename from pages/en/blog/weekly/weekly-update.2015-07-17.md
rename to apps/site/pages/en/blog/weekly/weekly-update.2015-07-17.md
diff --git a/pages/en/blog/weekly/weekly-update.2015-07-24.md b/apps/site/pages/en/blog/weekly/weekly-update.2015-07-24.md
similarity index 100%
rename from pages/en/blog/weekly/weekly-update.2015-07-24.md
rename to apps/site/pages/en/blog/weekly/weekly-update.2015-07-24.md
diff --git a/pages/en/blog/weekly/weekly-update.2015-07-31.md b/apps/site/pages/en/blog/weekly/weekly-update.2015-07-31.md
similarity index 100%
rename from pages/en/blog/weekly/weekly-update.2015-07-31.md
rename to apps/site/pages/en/blog/weekly/weekly-update.2015-07-31.md
diff --git a/pages/en/blog/weekly/weekly-update.2015-08-07.md b/apps/site/pages/en/blog/weekly/weekly-update.2015-08-07.md
similarity index 100%
rename from pages/en/blog/weekly/weekly-update.2015-08-07.md
rename to apps/site/pages/en/blog/weekly/weekly-update.2015-08-07.md
diff --git a/pages/en/blog/weekly/weekly-update.2015-08-14.md b/apps/site/pages/en/blog/weekly/weekly-update.2015-08-14.md
similarity index 100%
rename from pages/en/blog/weekly/weekly-update.2015-08-14.md
rename to apps/site/pages/en/blog/weekly/weekly-update.2015-08-14.md
diff --git a/pages/en/blog/weekly/weekly-update.2015-08-21.md b/apps/site/pages/en/blog/weekly/weekly-update.2015-08-21.md
similarity index 100%
rename from pages/en/blog/weekly/weekly-update.2015-08-21.md
rename to apps/site/pages/en/blog/weekly/weekly-update.2015-08-21.md
diff --git a/pages/en/blog/weekly/weekly-update.2015-08-28.md b/apps/site/pages/en/blog/weekly/weekly-update.2015-08-28.md
similarity index 100%
rename from pages/en/blog/weekly/weekly-update.2015-08-28.md
rename to apps/site/pages/en/blog/weekly/weekly-update.2015-08-28.md
diff --git a/pages/en/blog/weekly/weekly-update.2015-09-04.md b/apps/site/pages/en/blog/weekly/weekly-update.2015-09-04.md
similarity index 100%
rename from pages/en/blog/weekly/weekly-update.2015-09-04.md
rename to apps/site/pages/en/blog/weekly/weekly-update.2015-09-04.md
diff --git a/pages/en/blog/weekly/weekly-update.2015-09-11.md b/apps/site/pages/en/blog/weekly/weekly-update.2015-09-11.md
similarity index 100%
rename from pages/en/blog/weekly/weekly-update.2015-09-11.md
rename to apps/site/pages/en/blog/weekly/weekly-update.2015-09-11.md
diff --git a/pages/en/blog/weekly/weekly-update.2015-09-18.md b/apps/site/pages/en/blog/weekly/weekly-update.2015-09-18.md
similarity index 100%
rename from pages/en/blog/weekly/weekly-update.2015-09-18.md
rename to apps/site/pages/en/blog/weekly/weekly-update.2015-09-18.md
diff --git a/pages/en/blog/weekly/weekly-update.2015-10-02.md b/apps/site/pages/en/blog/weekly/weekly-update.2015-10-02.md
similarity index 100%
rename from pages/en/blog/weekly/weekly-update.2015-10-02.md
rename to apps/site/pages/en/blog/weekly/weekly-update.2015-10-02.md
diff --git a/pages/en/blog/weekly/weekly-update.2015-10-09.md b/apps/site/pages/en/blog/weekly/weekly-update.2015-10-09.md
similarity index 100%
rename from pages/en/blog/weekly/weekly-update.2015-10-09.md
rename to apps/site/pages/en/blog/weekly/weekly-update.2015-10-09.md
diff --git a/pages/en/blog/weekly/weekly-update.2015-10-16.md b/apps/site/pages/en/blog/weekly/weekly-update.2015-10-16.md
similarity index 100%
rename from pages/en/blog/weekly/weekly-update.2015-10-16.md
rename to apps/site/pages/en/blog/weekly/weekly-update.2015-10-16.md
diff --git a/pages/en/blog/weekly/weekly-update.2015-10-23.md b/apps/site/pages/en/blog/weekly/weekly-update.2015-10-23.md
similarity index 100%
rename from pages/en/blog/weekly/weekly-update.2015-10-23.md
rename to apps/site/pages/en/blog/weekly/weekly-update.2015-10-23.md
diff --git a/pages/en/blog/weekly/weekly-update.2015-10-30.md b/apps/site/pages/en/blog/weekly/weekly-update.2015-10-30.md
similarity index 100%
rename from pages/en/blog/weekly/weekly-update.2015-10-30.md
rename to apps/site/pages/en/blog/weekly/weekly-update.2015-10-30.md
diff --git a/pages/en/blog/weekly/weekly-update.2015-11-06.md b/apps/site/pages/en/blog/weekly/weekly-update.2015-11-06.md
similarity index 100%
rename from pages/en/blog/weekly/weekly-update.2015-11-06.md
rename to apps/site/pages/en/blog/weekly/weekly-update.2015-11-06.md
diff --git a/pages/en/blog/weekly/weekly-update.2015-11-13.md b/apps/site/pages/en/blog/weekly/weekly-update.2015-11-13.md
similarity index 100%
rename from pages/en/blog/weekly/weekly-update.2015-11-13.md
rename to apps/site/pages/en/blog/weekly/weekly-update.2015-11-13.md
diff --git a/pages/en/blog/weekly/weekly-update.2015-11-20.md b/apps/site/pages/en/blog/weekly/weekly-update.2015-11-20.md
similarity index 100%
rename from pages/en/blog/weekly/weekly-update.2015-11-20.md
rename to apps/site/pages/en/blog/weekly/weekly-update.2015-11-20.md
diff --git a/pages/en/blog/weekly/weekly-update.2015-11-27.md b/apps/site/pages/en/blog/weekly/weekly-update.2015-11-27.md
similarity index 100%
rename from pages/en/blog/weekly/weekly-update.2015-11-27.md
rename to apps/site/pages/en/blog/weekly/weekly-update.2015-11-27.md
diff --git a/pages/en/blog/weekly/weekly-update.2015-12-04.md b/apps/site/pages/en/blog/weekly/weekly-update.2015-12-04.md
similarity index 100%
rename from pages/en/blog/weekly/weekly-update.2015-12-04.md
rename to apps/site/pages/en/blog/weekly/weekly-update.2015-12-04.md
diff --git a/pages/en/blog/weekly/weekly-update.2015-12-11.md b/apps/site/pages/en/blog/weekly/weekly-update.2015-12-11.md
similarity index 100%
rename from pages/en/blog/weekly/weekly-update.2015-12-11.md
rename to apps/site/pages/en/blog/weekly/weekly-update.2015-12-11.md
diff --git a/pages/en/blog/weekly/weekly-update.2016-01-01.md b/apps/site/pages/en/blog/weekly/weekly-update.2016-01-01.md
similarity index 100%
rename from pages/en/blog/weekly/weekly-update.2016-01-01.md
rename to apps/site/pages/en/blog/weekly/weekly-update.2016-01-01.md
diff --git a/pages/en/blog/weekly/weekly-update.2016-01-11.md b/apps/site/pages/en/blog/weekly/weekly-update.2016-01-11.md
similarity index 100%
rename from pages/en/blog/weekly/weekly-update.2016-01-11.md
rename to apps/site/pages/en/blog/weekly/weekly-update.2016-01-11.md
diff --git a/pages/en/blog/weekly/weekly-update.2016-01-18.md b/apps/site/pages/en/blog/weekly/weekly-update.2016-01-18.md
similarity index 100%
rename from pages/en/blog/weekly/weekly-update.2016-01-18.md
rename to apps/site/pages/en/blog/weekly/weekly-update.2016-01-18.md
diff --git a/pages/en/blog/weekly/weekly-update.2016-01-22.md b/apps/site/pages/en/blog/weekly/weekly-update.2016-01-22.md
similarity index 100%
rename from pages/en/blog/weekly/weekly-update.2016-01-22.md
rename to apps/site/pages/en/blog/weekly/weekly-update.2016-01-22.md
diff --git a/pages/en/blog/weekly/weekly-update.2016-01-29.md b/apps/site/pages/en/blog/weekly/weekly-update.2016-01-29.md
similarity index 100%
rename from pages/en/blog/weekly/weekly-update.2016-01-29.md
rename to apps/site/pages/en/blog/weekly/weekly-update.2016-01-29.md
diff --git a/pages/en/blog/weekly/weekly-update.2016-02-08.md b/apps/site/pages/en/blog/weekly/weekly-update.2016-02-08.md
similarity index 100%
rename from pages/en/blog/weekly/weekly-update.2016-02-08.md
rename to apps/site/pages/en/blog/weekly/weekly-update.2016-02-08.md
diff --git a/pages/en/blog/weekly/weekly-update.2016-02-15.md b/apps/site/pages/en/blog/weekly/weekly-update.2016-02-15.md
similarity index 100%
rename from pages/en/blog/weekly/weekly-update.2016-02-15.md
rename to apps/site/pages/en/blog/weekly/weekly-update.2016-02-15.md
diff --git a/pages/en/blog/weekly/weekly-update.2016-02-22.md b/apps/site/pages/en/blog/weekly/weekly-update.2016-02-22.md
similarity index 100%
rename from pages/en/blog/weekly/weekly-update.2016-02-22.md
rename to apps/site/pages/en/blog/weekly/weekly-update.2016-02-22.md
diff --git a/pages/en/blog/weekly/weekly-update.2016-03-01.md b/apps/site/pages/en/blog/weekly/weekly-update.2016-03-01.md
similarity index 100%
rename from pages/en/blog/weekly/weekly-update.2016-03-01.md
rename to apps/site/pages/en/blog/weekly/weekly-update.2016-03-01.md
diff --git a/pages/en/blog/weekly/weekly-update.2016-03-07.md b/apps/site/pages/en/blog/weekly/weekly-update.2016-03-07.md
similarity index 100%
rename from pages/en/blog/weekly/weekly-update.2016-03-07.md
rename to apps/site/pages/en/blog/weekly/weekly-update.2016-03-07.md
diff --git a/pages/en/blog/weekly/weekly-update.2016-03-14.md b/apps/site/pages/en/blog/weekly/weekly-update.2016-03-14.md
similarity index 100%
rename from pages/en/blog/weekly/weekly-update.2016-03-14.md
rename to apps/site/pages/en/blog/weekly/weekly-update.2016-03-14.md
diff --git a/pages/en/blog/weekly/weekly-update.2016-04-17.md b/apps/site/pages/en/blog/weekly/weekly-update.2016-04-17.md
similarity index 100%
rename from pages/en/blog/weekly/weekly-update.2016-04-17.md
rename to apps/site/pages/en/blog/weekly/weekly-update.2016-04-17.md
diff --git a/pages/en/blog/weekly/weekly-update.2016-04-23.md b/apps/site/pages/en/blog/weekly/weekly-update.2016-04-23.md
similarity index 100%
rename from pages/en/blog/weekly/weekly-update.2016-04-23.md
rename to apps/site/pages/en/blog/weekly/weekly-update.2016-04-23.md
diff --git a/pages/en/blog/weekly/weekly-update.2016-04-29.md b/apps/site/pages/en/blog/weekly/weekly-update.2016-04-29.md
similarity index 100%
rename from pages/en/blog/weekly/weekly-update.2016-04-29.md
rename to apps/site/pages/en/blog/weekly/weekly-update.2016-04-29.md
diff --git a/pages/en/blog/weekly/weekly-update.2016-05-30.md b/apps/site/pages/en/blog/weekly/weekly-update.2016-05-30.md
similarity index 100%
rename from pages/en/blog/weekly/weekly-update.2016-05-30.md
rename to apps/site/pages/en/blog/weekly/weekly-update.2016-05-30.md
diff --git a/pages/en/blog/weekly/weekly-update.2016-06-16.md b/apps/site/pages/en/blog/weekly/weekly-update.2016-06-16.md
similarity index 100%
rename from pages/en/blog/weekly/weekly-update.2016-06-16.md
rename to apps/site/pages/en/blog/weekly/weekly-update.2016-06-16.md
diff --git a/pages/en/blog/weekly/weekly-update.2016-06-26.md b/apps/site/pages/en/blog/weekly/weekly-update.2016-06-26.md
similarity index 100%
rename from pages/en/blog/weekly/weekly-update.2016-06-26.md
rename to apps/site/pages/en/blog/weekly/weekly-update.2016-06-26.md
diff --git a/pages/en/blog/weekly/weekly-update.2016-07-08.md b/apps/site/pages/en/blog/weekly/weekly-update.2016-07-08.md
similarity index 100%
rename from pages/en/blog/weekly/weekly-update.2016-07-08.md
rename to apps/site/pages/en/blog/weekly/weekly-update.2016-07-08.md
diff --git a/pages/en/blog/weekly/weekly-update.2016-07-16.md b/apps/site/pages/en/blog/weekly/weekly-update.2016-07-16.md
similarity index 100%
rename from pages/en/blog/weekly/weekly-update.2016-07-16.md
rename to apps/site/pages/en/blog/weekly/weekly-update.2016-07-16.md
diff --git a/pages/en/blog/weekly/weekly-update.2016-07-22.md b/apps/site/pages/en/blog/weekly/weekly-update.2016-07-22.md
similarity index 100%
rename from pages/en/blog/weekly/weekly-update.2016-07-22.md
rename to apps/site/pages/en/blog/weekly/weekly-update.2016-07-22.md
diff --git a/pages/en/blog/weekly/weekly-update.2016-08-15.md b/apps/site/pages/en/blog/weekly/weekly-update.2016-08-15.md
similarity index 100%
rename from pages/en/blog/weekly/weekly-update.2016-08-15.md
rename to apps/site/pages/en/blog/weekly/weekly-update.2016-08-15.md
diff --git a/pages/en/blog/weekly/weekly-update.2016-10-28.md b/apps/site/pages/en/blog/weekly/weekly-update.2016-10-28.md
similarity index 100%
rename from pages/en/blog/weekly/weekly-update.2016-10-28.md
rename to apps/site/pages/en/blog/weekly/weekly-update.2016-10-28.md
diff --git a/pages/en/blog/weekly/weekly-update.2016-11-04.md b/apps/site/pages/en/blog/weekly/weekly-update.2016-11-04.md
similarity index 100%
rename from pages/en/blog/weekly/weekly-update.2016-11-04.md
rename to apps/site/pages/en/blog/weekly/weekly-update.2016-11-04.md
diff --git a/pages/en/blog/weekly/weekly-update.2016-11-11.md b/apps/site/pages/en/blog/weekly/weekly-update.2016-11-11.md
similarity index 100%
rename from pages/en/blog/weekly/weekly-update.2016-11-11.md
rename to apps/site/pages/en/blog/weekly/weekly-update.2016-11-11.md
diff --git a/pages/en/blog/weekly/weekly-update.2016-11-24.md b/apps/site/pages/en/blog/weekly/weekly-update.2016-11-24.md
similarity index 100%
rename from pages/en/blog/weekly/weekly-update.2016-11-24.md
rename to apps/site/pages/en/blog/weekly/weekly-update.2016-11-24.md
diff --git a/pages/en/blog/weekly/weekly-update.2016-12-02.md b/apps/site/pages/en/blog/weekly/weekly-update.2016-12-02.md
similarity index 100%
rename from pages/en/blog/weekly/weekly-update.2016-12-02.md
rename to apps/site/pages/en/blog/weekly/weekly-update.2016-12-02.md
diff --git a/pages/en/blog/weekly/weekly-update.2016-12-25.md b/apps/site/pages/en/blog/weekly/weekly-update.2016-12-25.md
similarity index 100%
rename from pages/en/blog/weekly/weekly-update.2016-12-25.md
rename to apps/site/pages/en/blog/weekly/weekly-update.2016-12-25.md
diff --git a/pages/en/blog/weekly/weekly-update.2017-02-10.md b/apps/site/pages/en/blog/weekly/weekly-update.2017-02-10.md
similarity index 100%
rename from pages/en/blog/weekly/weekly-update.2017-02-10.md
rename to apps/site/pages/en/blog/weekly/weekly-update.2017-02-10.md
diff --git a/pages/en/blog/wg/diag-wg-update-2017-02.md b/apps/site/pages/en/blog/wg/diag-wg-update-2017-02.md
similarity index 100%
rename from pages/en/blog/wg/diag-wg-update-2017-02.md
rename to apps/site/pages/en/blog/wg/diag-wg-update-2017-02.md
diff --git a/pages/en/download/package-manager/all.md b/apps/site/pages/en/download/package-manager/all.md
similarity index 100%
rename from pages/en/download/package-manager/all.md
rename to apps/site/pages/en/download/package-manager/all.md
diff --git a/pages/en/download/package-manager/current.mdx b/apps/site/pages/en/download/package-manager/current.mdx
similarity index 100%
rename from pages/en/download/package-manager/current.mdx
rename to apps/site/pages/en/download/package-manager/current.mdx
diff --git a/pages/en/download/package-manager/index.mdx b/apps/site/pages/en/download/package-manager/index.mdx
similarity index 100%
rename from pages/en/download/package-manager/index.mdx
rename to apps/site/pages/en/download/package-manager/index.mdx
diff --git a/pages/en/download/prebuilt-binaries/current.mdx b/apps/site/pages/en/download/prebuilt-binaries/current.mdx
similarity index 100%
rename from pages/en/download/prebuilt-binaries/current.mdx
rename to apps/site/pages/en/download/prebuilt-binaries/current.mdx
diff --git a/pages/en/download/prebuilt-binaries/index.mdx b/apps/site/pages/en/download/prebuilt-binaries/index.mdx
similarity index 100%
rename from pages/en/download/prebuilt-binaries/index.mdx
rename to apps/site/pages/en/download/prebuilt-binaries/index.mdx
diff --git a/pages/en/download/prebuilt-installer/current.mdx b/apps/site/pages/en/download/prebuilt-installer/current.mdx
similarity index 100%
rename from pages/en/download/prebuilt-installer/current.mdx
rename to apps/site/pages/en/download/prebuilt-installer/current.mdx
diff --git a/pages/en/download/prebuilt-installer/index.mdx b/apps/site/pages/en/download/prebuilt-installer/index.mdx
similarity index 100%
rename from pages/en/download/prebuilt-installer/index.mdx
rename to apps/site/pages/en/download/prebuilt-installer/index.mdx
diff --git a/pages/en/download/source-code/current.mdx b/apps/site/pages/en/download/source-code/current.mdx
similarity index 100%
rename from pages/en/download/source-code/current.mdx
rename to apps/site/pages/en/download/source-code/current.mdx
diff --git a/pages/en/download/source-code/index.mdx b/apps/site/pages/en/download/source-code/index.mdx
similarity index 100%
rename from pages/en/download/source-code/index.mdx
rename to apps/site/pages/en/download/source-code/index.mdx
diff --git a/pages/en/index.mdx b/apps/site/pages/en/index.mdx
similarity index 100%
rename from pages/en/index.mdx
rename to apps/site/pages/en/index.mdx
diff --git a/pages/en/learn/asynchronous-work/asynchronous-flow-control.md b/apps/site/pages/en/learn/asynchronous-work/asynchronous-flow-control.md
similarity index 100%
rename from pages/en/learn/asynchronous-work/asynchronous-flow-control.md
rename to apps/site/pages/en/learn/asynchronous-work/asynchronous-flow-control.md
diff --git a/pages/en/learn/asynchronous-work/discover-javascript-timers.md b/apps/site/pages/en/learn/asynchronous-work/discover-javascript-timers.md
similarity index 100%
rename from pages/en/learn/asynchronous-work/discover-javascript-timers.md
rename to apps/site/pages/en/learn/asynchronous-work/discover-javascript-timers.md
diff --git a/pages/en/learn/asynchronous-work/dont-block-the-event-loop.md b/apps/site/pages/en/learn/asynchronous-work/dont-block-the-event-loop.md
similarity index 100%
rename from pages/en/learn/asynchronous-work/dont-block-the-event-loop.md
rename to apps/site/pages/en/learn/asynchronous-work/dont-block-the-event-loop.md
diff --git a/pages/en/learn/asynchronous-work/event-loop-timers-and-nexttick.md b/apps/site/pages/en/learn/asynchronous-work/event-loop-timers-and-nexttick.md
similarity index 100%
rename from pages/en/learn/asynchronous-work/event-loop-timers-and-nexttick.md
rename to apps/site/pages/en/learn/asynchronous-work/event-loop-timers-and-nexttick.md
diff --git a/pages/en/learn/asynchronous-work/javascript-asynchronous-programming-and-callbacks.md b/apps/site/pages/en/learn/asynchronous-work/javascript-asynchronous-programming-and-callbacks.md
similarity index 100%
rename from pages/en/learn/asynchronous-work/javascript-asynchronous-programming-and-callbacks.md
rename to apps/site/pages/en/learn/asynchronous-work/javascript-asynchronous-programming-and-callbacks.md
diff --git a/pages/en/learn/asynchronous-work/overview-of-blocking-vs-non-blocking.md b/apps/site/pages/en/learn/asynchronous-work/overview-of-blocking-vs-non-blocking.md
similarity index 100%
rename from pages/en/learn/asynchronous-work/overview-of-blocking-vs-non-blocking.md
rename to apps/site/pages/en/learn/asynchronous-work/overview-of-blocking-vs-non-blocking.md
diff --git a/pages/en/learn/asynchronous-work/the-nodejs-event-emitter.md b/apps/site/pages/en/learn/asynchronous-work/the-nodejs-event-emitter.md
similarity index 100%
rename from pages/en/learn/asynchronous-work/the-nodejs-event-emitter.md
rename to apps/site/pages/en/learn/asynchronous-work/the-nodejs-event-emitter.md
diff --git a/pages/en/learn/asynchronous-work/understanding-processnexttick.md b/apps/site/pages/en/learn/asynchronous-work/understanding-processnexttick.md
similarity index 100%
rename from pages/en/learn/asynchronous-work/understanding-processnexttick.md
rename to apps/site/pages/en/learn/asynchronous-work/understanding-processnexttick.md
diff --git a/pages/en/learn/asynchronous-work/understanding-setimmediate.md b/apps/site/pages/en/learn/asynchronous-work/understanding-setimmediate.md
similarity index 100%
rename from pages/en/learn/asynchronous-work/understanding-setimmediate.md
rename to apps/site/pages/en/learn/asynchronous-work/understanding-setimmediate.md
diff --git a/pages/en/learn/command-line/accept-input-from-the-command-line-in-nodejs.md b/apps/site/pages/en/learn/command-line/accept-input-from-the-command-line-in-nodejs.md
similarity index 100%
rename from pages/en/learn/command-line/accept-input-from-the-command-line-in-nodejs.md
rename to apps/site/pages/en/learn/command-line/accept-input-from-the-command-line-in-nodejs.md
diff --git a/pages/en/learn/command-line/how-to-read-environment-variables-from-nodejs.md b/apps/site/pages/en/learn/command-line/how-to-read-environment-variables-from-nodejs.md
similarity index 100%
rename from pages/en/learn/command-line/how-to-read-environment-variables-from-nodejs.md
rename to apps/site/pages/en/learn/command-line/how-to-read-environment-variables-from-nodejs.md
diff --git a/pages/en/learn/command-line/how-to-use-the-nodejs-repl.md b/apps/site/pages/en/learn/command-line/how-to-use-the-nodejs-repl.md
similarity index 100%
rename from pages/en/learn/command-line/how-to-use-the-nodejs-repl.md
rename to apps/site/pages/en/learn/command-line/how-to-use-the-nodejs-repl.md
diff --git a/pages/en/learn/command-line/output-to-the-command-line-using-nodejs.md b/apps/site/pages/en/learn/command-line/output-to-the-command-line-using-nodejs.md
similarity index 100%
rename from pages/en/learn/command-line/output-to-the-command-line-using-nodejs.md
rename to apps/site/pages/en/learn/command-line/output-to-the-command-line-using-nodejs.md
diff --git a/pages/en/learn/command-line/run-nodejs-scripts-from-the-command-line.md b/apps/site/pages/en/learn/command-line/run-nodejs-scripts-from-the-command-line.md
similarity index 100%
rename from pages/en/learn/command-line/run-nodejs-scripts-from-the-command-line.md
rename to apps/site/pages/en/learn/command-line/run-nodejs-scripts-from-the-command-line.md
diff --git a/pages/en/learn/diagnostics/flame-graphs.md b/apps/site/pages/en/learn/diagnostics/flame-graphs.md
similarity index 100%
rename from pages/en/learn/diagnostics/flame-graphs.md
rename to apps/site/pages/en/learn/diagnostics/flame-graphs.md
diff --git a/pages/en/learn/diagnostics/live-debugging/index.md b/apps/site/pages/en/learn/diagnostics/live-debugging/index.md
similarity index 100%
rename from pages/en/learn/diagnostics/live-debugging/index.md
rename to apps/site/pages/en/learn/diagnostics/live-debugging/index.md
diff --git a/pages/en/learn/diagnostics/live-debugging/using-inspector.md b/apps/site/pages/en/learn/diagnostics/live-debugging/using-inspector.md
similarity index 100%
rename from pages/en/learn/diagnostics/live-debugging/using-inspector.md
rename to apps/site/pages/en/learn/diagnostics/live-debugging/using-inspector.md
diff --git a/pages/en/learn/diagnostics/memory/index.md b/apps/site/pages/en/learn/diagnostics/memory/index.md
similarity index 100%
rename from pages/en/learn/diagnostics/memory/index.md
rename to apps/site/pages/en/learn/diagnostics/memory/index.md
diff --git a/pages/en/learn/diagnostics/memory/using-gc-traces.md b/apps/site/pages/en/learn/diagnostics/memory/using-gc-traces.md
similarity index 100%
rename from pages/en/learn/diagnostics/memory/using-gc-traces.md
rename to apps/site/pages/en/learn/diagnostics/memory/using-gc-traces.md
diff --git a/pages/en/learn/diagnostics/memory/using-heap-profiler.md b/apps/site/pages/en/learn/diagnostics/memory/using-heap-profiler.md
similarity index 100%
rename from pages/en/learn/diagnostics/memory/using-heap-profiler.md
rename to apps/site/pages/en/learn/diagnostics/memory/using-heap-profiler.md
diff --git a/pages/en/learn/diagnostics/memory/using-heap-snapshot.md b/apps/site/pages/en/learn/diagnostics/memory/using-heap-snapshot.md
similarity index 100%
rename from pages/en/learn/diagnostics/memory/using-heap-snapshot.md
rename to apps/site/pages/en/learn/diagnostics/memory/using-heap-snapshot.md
diff --git a/pages/en/learn/diagnostics/poor-performance/index.md b/apps/site/pages/en/learn/diagnostics/poor-performance/index.md
similarity index 100%
rename from pages/en/learn/diagnostics/poor-performance/index.md
rename to apps/site/pages/en/learn/diagnostics/poor-performance/index.md
diff --git a/pages/en/learn/diagnostics/poor-performance/using-linux-perf.md b/apps/site/pages/en/learn/diagnostics/poor-performance/using-linux-perf.md
similarity index 100%
rename from pages/en/learn/diagnostics/poor-performance/using-linux-perf.md
rename to apps/site/pages/en/learn/diagnostics/poor-performance/using-linux-perf.md
diff --git a/pages/en/learn/diagnostics/user-journey.md b/apps/site/pages/en/learn/diagnostics/user-journey.md
similarity index 100%
rename from pages/en/learn/diagnostics/user-journey.md
rename to apps/site/pages/en/learn/diagnostics/user-journey.md
diff --git a/pages/en/learn/getting-started/an-introduction-to-the-npm-package-manager.md b/apps/site/pages/en/learn/getting-started/an-introduction-to-the-npm-package-manager.md
similarity index 100%
rename from pages/en/learn/getting-started/an-introduction-to-the-npm-package-manager.md
rename to apps/site/pages/en/learn/getting-started/an-introduction-to-the-npm-package-manager.md
diff --git a/pages/en/learn/getting-started/debugging.md b/apps/site/pages/en/learn/getting-started/debugging.md
similarity index 100%
rename from pages/en/learn/getting-started/debugging.md
rename to apps/site/pages/en/learn/getting-started/debugging.md
diff --git a/pages/en/learn/getting-started/differences-between-nodejs-and-the-browser.md b/apps/site/pages/en/learn/getting-started/differences-between-nodejs-and-the-browser.md
similarity index 100%
rename from pages/en/learn/getting-started/differences-between-nodejs-and-the-browser.md
rename to apps/site/pages/en/learn/getting-started/differences-between-nodejs-and-the-browser.md
diff --git a/pages/en/learn/getting-started/ecmascript-2015-es6-and-beyond.md b/apps/site/pages/en/learn/getting-started/ecmascript-2015-es6-and-beyond.md
similarity index 100%
rename from pages/en/learn/getting-started/ecmascript-2015-es6-and-beyond.md
rename to apps/site/pages/en/learn/getting-started/ecmascript-2015-es6-and-beyond.md
diff --git a/pages/en/learn/getting-started/how-much-javascript-do-you-need-to-know-to-use-nodejs.md b/apps/site/pages/en/learn/getting-started/how-much-javascript-do-you-need-to-know-to-use-nodejs.md
similarity index 100%
rename from pages/en/learn/getting-started/how-much-javascript-do-you-need-to-know-to-use-nodejs.md
rename to apps/site/pages/en/learn/getting-started/how-much-javascript-do-you-need-to-know-to-use-nodejs.md
diff --git a/pages/en/learn/getting-started/how-to-install-nodejs.md b/apps/site/pages/en/learn/getting-started/how-to-install-nodejs.md
similarity index 100%
rename from pages/en/learn/getting-started/how-to-install-nodejs.md
rename to apps/site/pages/en/learn/getting-started/how-to-install-nodejs.md
diff --git a/pages/en/learn/getting-started/introduction-to-nodejs.md b/apps/site/pages/en/learn/getting-started/introduction-to-nodejs.md
similarity index 100%
rename from pages/en/learn/getting-started/introduction-to-nodejs.md
rename to apps/site/pages/en/learn/getting-started/introduction-to-nodejs.md
diff --git a/pages/en/learn/getting-started/nodejs-the-difference-between-development-and-production.md b/apps/site/pages/en/learn/getting-started/nodejs-the-difference-between-development-and-production.md
similarity index 100%
rename from pages/en/learn/getting-started/nodejs-the-difference-between-development-and-production.md
rename to apps/site/pages/en/learn/getting-started/nodejs-the-difference-between-development-and-production.md
diff --git a/pages/en/learn/getting-started/nodejs-with-typescript.md b/apps/site/pages/en/learn/getting-started/nodejs-with-typescript.md
similarity index 100%
rename from pages/en/learn/getting-started/nodejs-with-typescript.md
rename to apps/site/pages/en/learn/getting-started/nodejs-with-typescript.md
diff --git a/pages/en/learn/getting-started/nodejs-with-webassembly.md b/apps/site/pages/en/learn/getting-started/nodejs-with-webassembly.md
similarity index 100%
rename from pages/en/learn/getting-started/nodejs-with-webassembly.md
rename to apps/site/pages/en/learn/getting-started/nodejs-with-webassembly.md
diff --git a/pages/en/learn/getting-started/profiling.md b/apps/site/pages/en/learn/getting-started/profiling.md
similarity index 100%
rename from pages/en/learn/getting-started/profiling.md
rename to apps/site/pages/en/learn/getting-started/profiling.md
diff --git a/pages/en/learn/getting-started/security-best-practices.md b/apps/site/pages/en/learn/getting-started/security-best-practices.md
similarity index 100%
rename from pages/en/learn/getting-started/security-best-practices.md
rename to apps/site/pages/en/learn/getting-started/security-best-practices.md
diff --git a/pages/en/learn/getting-started/the-v8-javascript-engine.md b/apps/site/pages/en/learn/getting-started/the-v8-javascript-engine.md
similarity index 100%
rename from pages/en/learn/getting-started/the-v8-javascript-engine.md
rename to apps/site/pages/en/learn/getting-started/the-v8-javascript-engine.md
diff --git a/pages/en/learn/manipulating-files/nodejs-file-paths.md b/apps/site/pages/en/learn/manipulating-files/nodejs-file-paths.md
similarity index 100%
rename from pages/en/learn/manipulating-files/nodejs-file-paths.md
rename to apps/site/pages/en/learn/manipulating-files/nodejs-file-paths.md
diff --git a/pages/en/learn/manipulating-files/nodejs-file-stats.md b/apps/site/pages/en/learn/manipulating-files/nodejs-file-stats.md
similarity index 100%
rename from pages/en/learn/manipulating-files/nodejs-file-stats.md
rename to apps/site/pages/en/learn/manipulating-files/nodejs-file-stats.md
diff --git a/pages/en/learn/manipulating-files/reading-files-with-nodejs.md b/apps/site/pages/en/learn/manipulating-files/reading-files-with-nodejs.md
similarity index 100%
rename from pages/en/learn/manipulating-files/reading-files-with-nodejs.md
rename to apps/site/pages/en/learn/manipulating-files/reading-files-with-nodejs.md
diff --git a/pages/en/learn/manipulating-files/working-with-different-filesystems.md b/apps/site/pages/en/learn/manipulating-files/working-with-different-filesystems.md
similarity index 100%
rename from pages/en/learn/manipulating-files/working-with-different-filesystems.md
rename to apps/site/pages/en/learn/manipulating-files/working-with-different-filesystems.md
diff --git a/pages/en/learn/manipulating-files/working-with-file-descriptors-in-nodejs.md b/apps/site/pages/en/learn/manipulating-files/working-with-file-descriptors-in-nodejs.md
similarity index 100%
rename from pages/en/learn/manipulating-files/working-with-file-descriptors-in-nodejs.md
rename to apps/site/pages/en/learn/manipulating-files/working-with-file-descriptors-in-nodejs.md
diff --git a/pages/en/learn/manipulating-files/working-with-folders-in-nodejs.md b/apps/site/pages/en/learn/manipulating-files/working-with-folders-in-nodejs.md
similarity index 100%
rename from pages/en/learn/manipulating-files/working-with-folders-in-nodejs.md
rename to apps/site/pages/en/learn/manipulating-files/working-with-folders-in-nodejs.md
diff --git a/pages/en/learn/manipulating-files/writing-files-with-nodejs.md b/apps/site/pages/en/learn/manipulating-files/writing-files-with-nodejs.md
similarity index 100%
rename from pages/en/learn/manipulating-files/writing-files-with-nodejs.md
rename to apps/site/pages/en/learn/manipulating-files/writing-files-with-nodejs.md
diff --git a/pages/en/learn/modules/abi-stability.md b/apps/site/pages/en/learn/modules/abi-stability.md
similarity index 100%
rename from pages/en/learn/modules/abi-stability.md
rename to apps/site/pages/en/learn/modules/abi-stability.md
diff --git a/pages/en/learn/modules/anatomy-of-an-http-transaction.md b/apps/site/pages/en/learn/modules/anatomy-of-an-http-transaction.md
similarity index 100%
rename from pages/en/learn/modules/anatomy-of-an-http-transaction.md
rename to apps/site/pages/en/learn/modules/anatomy-of-an-http-transaction.md
diff --git a/pages/en/learn/modules/backpressuring-in-streams.md b/apps/site/pages/en/learn/modules/backpressuring-in-streams.md
similarity index 100%
rename from pages/en/learn/modules/backpressuring-in-streams.md
rename to apps/site/pages/en/learn/modules/backpressuring-in-streams.md
diff --git a/pages/en/learn/modules/publishing-node-api-modules.md b/apps/site/pages/en/learn/modules/publishing-node-api-modules.md
similarity index 100%
rename from pages/en/learn/modules/publishing-node-api-modules.md
rename to apps/site/pages/en/learn/modules/publishing-node-api-modules.md
diff --git a/pages/en/learn/test-runner/introduction.md b/apps/site/pages/en/learn/test-runner/introduction.md
similarity index 100%
rename from pages/en/learn/test-runner/introduction.md
rename to apps/site/pages/en/learn/test-runner/introduction.md
diff --git a/pages/en/learn/test-runner/using-test-runner.md b/apps/site/pages/en/learn/test-runner/using-test-runner.md
similarity index 100%
rename from pages/en/learn/test-runner/using-test-runner.md
rename to apps/site/pages/en/learn/test-runner/using-test-runner.md
diff --git a/pages/en/search.mdx b/apps/site/pages/en/search.mdx
similarity index 100%
rename from pages/en/search.mdx
rename to apps/site/pages/en/search.mdx
diff --git a/pages/fa/about/branding.mdx b/apps/site/pages/fa/about/branding.mdx
similarity index 100%
rename from pages/fa/about/branding.mdx
rename to apps/site/pages/fa/about/branding.mdx
diff --git a/pages/fa/about/get-involved/collab-summit.md b/apps/site/pages/fa/about/get-involved/collab-summit.md
similarity index 100%
rename from pages/fa/about/get-involved/collab-summit.md
rename to apps/site/pages/fa/about/get-involved/collab-summit.md
diff --git a/pages/fa/about/get-involved/contribute.md b/apps/site/pages/fa/about/get-involved/contribute.md
similarity index 100%
rename from pages/fa/about/get-involved/contribute.md
rename to apps/site/pages/fa/about/get-involved/contribute.md
diff --git a/pages/fa/about/get-involved/events.mdx b/apps/site/pages/fa/about/get-involved/events.mdx
similarity index 100%
rename from pages/fa/about/get-involved/events.mdx
rename to apps/site/pages/fa/about/get-involved/events.mdx
diff --git a/pages/fa/about/get-involved/index.md b/apps/site/pages/fa/about/get-involved/index.md
similarity index 100%
rename from pages/fa/about/get-involved/index.md
rename to apps/site/pages/fa/about/get-involved/index.md
diff --git a/pages/fa/about/governance.md b/apps/site/pages/fa/about/governance.md
similarity index 100%
rename from pages/fa/about/governance.md
rename to apps/site/pages/fa/about/governance.md
diff --git a/pages/fa/about/index.mdx b/apps/site/pages/fa/about/index.mdx
similarity index 100%
rename from pages/fa/about/index.mdx
rename to apps/site/pages/fa/about/index.mdx
diff --git a/pages/fa/about/previous-releases.mdx b/apps/site/pages/fa/about/previous-releases.mdx
similarity index 100%
rename from pages/fa/about/previous-releases.mdx
rename to apps/site/pages/fa/about/previous-releases.mdx
diff --git a/pages/fa/about/security-reporting.mdx b/apps/site/pages/fa/about/security-reporting.mdx
similarity index 100%
rename from pages/fa/about/security-reporting.mdx
rename to apps/site/pages/fa/about/security-reporting.mdx
diff --git a/pages/fa/download/package-manager/all.md b/apps/site/pages/fa/download/package-manager/all.md
similarity index 100%
rename from pages/fa/download/package-manager/all.md
rename to apps/site/pages/fa/download/package-manager/all.md
diff --git a/pages/fa/download/package-manager/current.mdx b/apps/site/pages/fa/download/package-manager/current.mdx
similarity index 100%
rename from pages/fa/download/package-manager/current.mdx
rename to apps/site/pages/fa/download/package-manager/current.mdx
diff --git a/pages/fa/download/package-manager/index.mdx b/apps/site/pages/fa/download/package-manager/index.mdx
similarity index 100%
rename from pages/fa/download/package-manager/index.mdx
rename to apps/site/pages/fa/download/package-manager/index.mdx
diff --git a/pages/fa/download/prebuilt-binaries/current.mdx b/apps/site/pages/fa/download/prebuilt-binaries/current.mdx
similarity index 100%
rename from pages/fa/download/prebuilt-binaries/current.mdx
rename to apps/site/pages/fa/download/prebuilt-binaries/current.mdx
diff --git a/pages/fa/download/prebuilt-binaries/index.mdx b/apps/site/pages/fa/download/prebuilt-binaries/index.mdx
similarity index 100%
rename from pages/fa/download/prebuilt-binaries/index.mdx
rename to apps/site/pages/fa/download/prebuilt-binaries/index.mdx
diff --git a/pages/fa/download/prebuilt-installer/current.mdx b/apps/site/pages/fa/download/prebuilt-installer/current.mdx
similarity index 100%
rename from pages/fa/download/prebuilt-installer/current.mdx
rename to apps/site/pages/fa/download/prebuilt-installer/current.mdx
diff --git a/pages/fa/download/prebuilt-installer/index.mdx b/apps/site/pages/fa/download/prebuilt-installer/index.mdx
similarity index 100%
rename from pages/fa/download/prebuilt-installer/index.mdx
rename to apps/site/pages/fa/download/prebuilt-installer/index.mdx
diff --git a/pages/fa/download/source-code/current.mdx b/apps/site/pages/fa/download/source-code/current.mdx
similarity index 100%
rename from pages/fa/download/source-code/current.mdx
rename to apps/site/pages/fa/download/source-code/current.mdx
diff --git a/pages/fa/download/source-code/index.mdx b/apps/site/pages/fa/download/source-code/index.mdx
similarity index 100%
rename from pages/fa/download/source-code/index.mdx
rename to apps/site/pages/fa/download/source-code/index.mdx
diff --git a/pages/fa/index.mdx b/apps/site/pages/fa/index.mdx
similarity index 100%
rename from pages/fa/index.mdx
rename to apps/site/pages/fa/index.mdx
diff --git a/pages/fa/search.mdx b/apps/site/pages/fa/search.mdx
similarity index 100%
rename from pages/fa/search.mdx
rename to apps/site/pages/fa/search.mdx
diff --git a/pages/fr/about/branding.mdx b/apps/site/pages/fr/about/branding.mdx
similarity index 100%
rename from pages/fr/about/branding.mdx
rename to apps/site/pages/fr/about/branding.mdx
diff --git a/pages/fr/about/get-involved/collab-summit.md b/apps/site/pages/fr/about/get-involved/collab-summit.md
similarity index 100%
rename from pages/fr/about/get-involved/collab-summit.md
rename to apps/site/pages/fr/about/get-involved/collab-summit.md
diff --git a/pages/fr/about/get-involved/contribute.md b/apps/site/pages/fr/about/get-involved/contribute.md
similarity index 100%
rename from pages/fr/about/get-involved/contribute.md
rename to apps/site/pages/fr/about/get-involved/contribute.md
diff --git a/pages/fr/about/get-involved/events.mdx b/apps/site/pages/fr/about/get-involved/events.mdx
similarity index 100%
rename from pages/fr/about/get-involved/events.mdx
rename to apps/site/pages/fr/about/get-involved/events.mdx
diff --git a/pages/fr/about/get-involved/index.md b/apps/site/pages/fr/about/get-involved/index.md
similarity index 100%
rename from pages/fr/about/get-involved/index.md
rename to apps/site/pages/fr/about/get-involved/index.md
diff --git a/pages/fr/about/governance.md b/apps/site/pages/fr/about/governance.md
similarity index 100%
rename from pages/fr/about/governance.md
rename to apps/site/pages/fr/about/governance.md
diff --git a/pages/fr/about/index.mdx b/apps/site/pages/fr/about/index.mdx
similarity index 100%
rename from pages/fr/about/index.mdx
rename to apps/site/pages/fr/about/index.mdx
diff --git a/pages/fr/about/previous-releases.mdx b/apps/site/pages/fr/about/previous-releases.mdx
similarity index 100%
rename from pages/fr/about/previous-releases.mdx
rename to apps/site/pages/fr/about/previous-releases.mdx
diff --git a/pages/fr/about/security-reporting.mdx b/apps/site/pages/fr/about/security-reporting.mdx
similarity index 100%
rename from pages/fr/about/security-reporting.mdx
rename to apps/site/pages/fr/about/security-reporting.mdx
diff --git a/pages/fr/download/package-manager/all.md b/apps/site/pages/fr/download/package-manager/all.md
similarity index 100%
rename from pages/fr/download/package-manager/all.md
rename to apps/site/pages/fr/download/package-manager/all.md
diff --git a/pages/fr/download/package-manager/current.mdx b/apps/site/pages/fr/download/package-manager/current.mdx
similarity index 100%
rename from pages/fr/download/package-manager/current.mdx
rename to apps/site/pages/fr/download/package-manager/current.mdx
diff --git a/pages/fr/download/package-manager/index.mdx b/apps/site/pages/fr/download/package-manager/index.mdx
similarity index 100%
rename from pages/fr/download/package-manager/index.mdx
rename to apps/site/pages/fr/download/package-manager/index.mdx
diff --git a/pages/fr/download/prebuilt-binaries/current.mdx b/apps/site/pages/fr/download/prebuilt-binaries/current.mdx
similarity index 100%
rename from pages/fr/download/prebuilt-binaries/current.mdx
rename to apps/site/pages/fr/download/prebuilt-binaries/current.mdx
diff --git a/pages/fr/download/prebuilt-binaries/index.mdx b/apps/site/pages/fr/download/prebuilt-binaries/index.mdx
similarity index 100%
rename from pages/fr/download/prebuilt-binaries/index.mdx
rename to apps/site/pages/fr/download/prebuilt-binaries/index.mdx
diff --git a/pages/fr/download/prebuilt-installer/current.mdx b/apps/site/pages/fr/download/prebuilt-installer/current.mdx
similarity index 100%
rename from pages/fr/download/prebuilt-installer/current.mdx
rename to apps/site/pages/fr/download/prebuilt-installer/current.mdx
diff --git a/pages/fr/download/prebuilt-installer/index.mdx b/apps/site/pages/fr/download/prebuilt-installer/index.mdx
similarity index 100%
rename from pages/fr/download/prebuilt-installer/index.mdx
rename to apps/site/pages/fr/download/prebuilt-installer/index.mdx
diff --git a/pages/fr/download/source-code/current.mdx b/apps/site/pages/fr/download/source-code/current.mdx
similarity index 100%
rename from pages/fr/download/source-code/current.mdx
rename to apps/site/pages/fr/download/source-code/current.mdx
diff --git a/pages/fr/download/source-code/index.mdx b/apps/site/pages/fr/download/source-code/index.mdx
similarity index 100%
rename from pages/fr/download/source-code/index.mdx
rename to apps/site/pages/fr/download/source-code/index.mdx
diff --git a/pages/fr/index.mdx b/apps/site/pages/fr/index.mdx
similarity index 100%
rename from pages/fr/index.mdx
rename to apps/site/pages/fr/index.mdx
diff --git a/pages/fr/search.mdx b/apps/site/pages/fr/search.mdx
similarity index 100%
rename from pages/fr/search.mdx
rename to apps/site/pages/fr/search.mdx
diff --git a/pages/id/search.mdx b/apps/site/pages/id/search.mdx
similarity index 100%
rename from pages/id/search.mdx
rename to apps/site/pages/id/search.mdx
diff --git a/pages/ja/about/branding.mdx b/apps/site/pages/ja/about/branding.mdx
similarity index 100%
rename from pages/ja/about/branding.mdx
rename to apps/site/pages/ja/about/branding.mdx
diff --git a/pages/ja/about/get-involved/events.mdx b/apps/site/pages/ja/about/get-involved/events.mdx
similarity index 100%
rename from pages/ja/about/get-involved/events.mdx
rename to apps/site/pages/ja/about/get-involved/events.mdx
diff --git a/pages/ja/about/get-involved/index.md b/apps/site/pages/ja/about/get-involved/index.md
similarity index 100%
rename from pages/ja/about/get-involved/index.md
rename to apps/site/pages/ja/about/get-involved/index.md
diff --git a/pages/ja/download/package-manager/current.mdx b/apps/site/pages/ja/download/package-manager/current.mdx
similarity index 100%
rename from pages/ja/download/package-manager/current.mdx
rename to apps/site/pages/ja/download/package-manager/current.mdx
diff --git a/pages/ja/download/package-manager/index.mdx b/apps/site/pages/ja/download/package-manager/index.mdx
similarity index 100%
rename from pages/ja/download/package-manager/index.mdx
rename to apps/site/pages/ja/download/package-manager/index.mdx
diff --git a/pages/ja/download/prebuilt-binaries/current.mdx b/apps/site/pages/ja/download/prebuilt-binaries/current.mdx
similarity index 100%
rename from pages/ja/download/prebuilt-binaries/current.mdx
rename to apps/site/pages/ja/download/prebuilt-binaries/current.mdx
diff --git a/pages/ja/download/prebuilt-binaries/index.mdx b/apps/site/pages/ja/download/prebuilt-binaries/index.mdx
similarity index 100%
rename from pages/ja/download/prebuilt-binaries/index.mdx
rename to apps/site/pages/ja/download/prebuilt-binaries/index.mdx
diff --git a/pages/ja/download/source-code/current.mdx b/apps/site/pages/ja/download/source-code/current.mdx
similarity index 100%
rename from pages/ja/download/source-code/current.mdx
rename to apps/site/pages/ja/download/source-code/current.mdx
diff --git a/pages/ja/download/source-code/index.mdx b/apps/site/pages/ja/download/source-code/index.mdx
similarity index 100%
rename from pages/ja/download/source-code/index.mdx
rename to apps/site/pages/ja/download/source-code/index.mdx
diff --git a/pages/ja/index.mdx b/apps/site/pages/ja/index.mdx
similarity index 100%
rename from pages/ja/index.mdx
rename to apps/site/pages/ja/index.mdx
diff --git a/pages/ja/search.mdx b/apps/site/pages/ja/search.mdx
similarity index 100%
rename from pages/ja/search.mdx
rename to apps/site/pages/ja/search.mdx
diff --git a/pages/pt/about/branding.mdx b/apps/site/pages/pt/about/branding.mdx
similarity index 100%
rename from pages/pt/about/branding.mdx
rename to apps/site/pages/pt/about/branding.mdx
diff --git a/pages/pt/about/get-involved/collab-summit.md b/apps/site/pages/pt/about/get-involved/collab-summit.md
similarity index 100%
rename from pages/pt/about/get-involved/collab-summit.md
rename to apps/site/pages/pt/about/get-involved/collab-summit.md
diff --git a/pages/pt/about/get-involved/contribute.md b/apps/site/pages/pt/about/get-involved/contribute.md
similarity index 100%
rename from pages/pt/about/get-involved/contribute.md
rename to apps/site/pages/pt/about/get-involved/contribute.md
diff --git a/pages/pt/about/get-involved/events.mdx b/apps/site/pages/pt/about/get-involved/events.mdx
similarity index 100%
rename from pages/pt/about/get-involved/events.mdx
rename to apps/site/pages/pt/about/get-involved/events.mdx
diff --git a/pages/pt/about/get-involved/index.md b/apps/site/pages/pt/about/get-involved/index.md
similarity index 100%
rename from pages/pt/about/get-involved/index.md
rename to apps/site/pages/pt/about/get-involved/index.md
diff --git a/pages/pt/about/governance.md b/apps/site/pages/pt/about/governance.md
similarity index 100%
rename from pages/pt/about/governance.md
rename to apps/site/pages/pt/about/governance.md
diff --git a/pages/pt/about/index.mdx b/apps/site/pages/pt/about/index.mdx
similarity index 100%
rename from pages/pt/about/index.mdx
rename to apps/site/pages/pt/about/index.mdx
diff --git a/pages/pt/about/previous-releases.mdx b/apps/site/pages/pt/about/previous-releases.mdx
similarity index 100%
rename from pages/pt/about/previous-releases.mdx
rename to apps/site/pages/pt/about/previous-releases.mdx
diff --git a/pages/pt/about/security-reporting.mdx b/apps/site/pages/pt/about/security-reporting.mdx
similarity index 100%
rename from pages/pt/about/security-reporting.mdx
rename to apps/site/pages/pt/about/security-reporting.mdx
diff --git a/pages/pt/download/package-manager/all.md b/apps/site/pages/pt/download/package-manager/all.md
similarity index 100%
rename from pages/pt/download/package-manager/all.md
rename to apps/site/pages/pt/download/package-manager/all.md
diff --git a/pages/pt/download/package-manager/current.mdx b/apps/site/pages/pt/download/package-manager/current.mdx
similarity index 100%
rename from pages/pt/download/package-manager/current.mdx
rename to apps/site/pages/pt/download/package-manager/current.mdx
diff --git a/pages/pt/download/package-manager/index.mdx b/apps/site/pages/pt/download/package-manager/index.mdx
similarity index 100%
rename from pages/pt/download/package-manager/index.mdx
rename to apps/site/pages/pt/download/package-manager/index.mdx
diff --git a/pages/pt/download/prebuilt-binaries/current.mdx b/apps/site/pages/pt/download/prebuilt-binaries/current.mdx
similarity index 100%
rename from pages/pt/download/prebuilt-binaries/current.mdx
rename to apps/site/pages/pt/download/prebuilt-binaries/current.mdx
diff --git a/pages/pt/download/prebuilt-binaries/index.mdx b/apps/site/pages/pt/download/prebuilt-binaries/index.mdx
similarity index 100%
rename from pages/pt/download/prebuilt-binaries/index.mdx
rename to apps/site/pages/pt/download/prebuilt-binaries/index.mdx
diff --git a/pages/pt/download/prebuilt-installer/current.mdx b/apps/site/pages/pt/download/prebuilt-installer/current.mdx
similarity index 100%
rename from pages/pt/download/prebuilt-installer/current.mdx
rename to apps/site/pages/pt/download/prebuilt-installer/current.mdx
diff --git a/pages/pt/download/prebuilt-installer/index.mdx b/apps/site/pages/pt/download/prebuilt-installer/index.mdx
similarity index 100%
rename from pages/pt/download/prebuilt-installer/index.mdx
rename to apps/site/pages/pt/download/prebuilt-installer/index.mdx
diff --git a/pages/pt/download/source-code/current.mdx b/apps/site/pages/pt/download/source-code/current.mdx
similarity index 100%
rename from pages/pt/download/source-code/current.mdx
rename to apps/site/pages/pt/download/source-code/current.mdx
diff --git a/pages/pt/download/source-code/index.mdx b/apps/site/pages/pt/download/source-code/index.mdx
similarity index 100%
rename from pages/pt/download/source-code/index.mdx
rename to apps/site/pages/pt/download/source-code/index.mdx
diff --git a/pages/pt/index.mdx b/apps/site/pages/pt/index.mdx
similarity index 100%
rename from pages/pt/index.mdx
rename to apps/site/pages/pt/index.mdx
diff --git a/pages/pt/search.mdx b/apps/site/pages/pt/search.mdx
similarity index 100%
rename from pages/pt/search.mdx
rename to apps/site/pages/pt/search.mdx
diff --git a/pages/tr/about/get-involved/contribute.md b/apps/site/pages/tr/about/get-involved/contribute.md
similarity index 100%
rename from pages/tr/about/get-involved/contribute.md
rename to apps/site/pages/tr/about/get-involved/contribute.md
diff --git a/pages/tr/about/get-involved/events.mdx b/apps/site/pages/tr/about/get-involved/events.mdx
similarity index 100%
rename from pages/tr/about/get-involved/events.mdx
rename to apps/site/pages/tr/about/get-involved/events.mdx
diff --git a/pages/tr/about/get-involved/index.md b/apps/site/pages/tr/about/get-involved/index.md
similarity index 100%
rename from pages/tr/about/get-involved/index.md
rename to apps/site/pages/tr/about/get-involved/index.md
diff --git a/pages/tr/search.mdx b/apps/site/pages/tr/search.mdx
similarity index 100%
rename from pages/tr/search.mdx
rename to apps/site/pages/tr/search.mdx
diff --git a/pages/uk/about/branding.mdx b/apps/site/pages/uk/about/branding.mdx
similarity index 100%
rename from pages/uk/about/branding.mdx
rename to apps/site/pages/uk/about/branding.mdx
diff --git a/pages/uk/about/get-involved/collab-summit.md b/apps/site/pages/uk/about/get-involved/collab-summit.md
similarity index 100%
rename from pages/uk/about/get-involved/collab-summit.md
rename to apps/site/pages/uk/about/get-involved/collab-summit.md
diff --git a/pages/uk/about/get-involved/contribute.md b/apps/site/pages/uk/about/get-involved/contribute.md
similarity index 100%
rename from pages/uk/about/get-involved/contribute.md
rename to apps/site/pages/uk/about/get-involved/contribute.md
diff --git a/pages/uk/about/get-involved/events.mdx b/apps/site/pages/uk/about/get-involved/events.mdx
similarity index 100%
rename from pages/uk/about/get-involved/events.mdx
rename to apps/site/pages/uk/about/get-involved/events.mdx
diff --git a/pages/uk/about/get-involved/index.md b/apps/site/pages/uk/about/get-involved/index.md
similarity index 100%
rename from pages/uk/about/get-involved/index.md
rename to apps/site/pages/uk/about/get-involved/index.md
diff --git a/pages/uk/about/governance.md b/apps/site/pages/uk/about/governance.md
similarity index 100%
rename from pages/uk/about/governance.md
rename to apps/site/pages/uk/about/governance.md
diff --git a/pages/uk/about/previous-releases.mdx b/apps/site/pages/uk/about/previous-releases.mdx
similarity index 100%
rename from pages/uk/about/previous-releases.mdx
rename to apps/site/pages/uk/about/previous-releases.mdx
diff --git a/pages/uk/about/security-reporting.mdx b/apps/site/pages/uk/about/security-reporting.mdx
similarity index 100%
rename from pages/uk/about/security-reporting.mdx
rename to apps/site/pages/uk/about/security-reporting.mdx
diff --git a/pages/uk/download/package-manager/current.mdx b/apps/site/pages/uk/download/package-manager/current.mdx
similarity index 100%
rename from pages/uk/download/package-manager/current.mdx
rename to apps/site/pages/uk/download/package-manager/current.mdx
diff --git a/pages/uk/download/package-manager/index.mdx b/apps/site/pages/uk/download/package-manager/index.mdx
similarity index 100%
rename from pages/uk/download/package-manager/index.mdx
rename to apps/site/pages/uk/download/package-manager/index.mdx
diff --git a/pages/uk/download/source-code/current.mdx b/apps/site/pages/uk/download/source-code/current.mdx
similarity index 100%
rename from pages/uk/download/source-code/current.mdx
rename to apps/site/pages/uk/download/source-code/current.mdx
diff --git a/pages/uk/download/source-code/index.mdx b/apps/site/pages/uk/download/source-code/index.mdx
similarity index 100%
rename from pages/uk/download/source-code/index.mdx
rename to apps/site/pages/uk/download/source-code/index.mdx
diff --git a/pages/uk/index.mdx b/apps/site/pages/uk/index.mdx
similarity index 100%
rename from pages/uk/index.mdx
rename to apps/site/pages/uk/index.mdx
diff --git a/pages/uk/search.mdx b/apps/site/pages/uk/search.mdx
similarity index 100%
rename from pages/uk/search.mdx
rename to apps/site/pages/uk/search.mdx
diff --git a/pages/zh-cn/about/branding.mdx b/apps/site/pages/zh-cn/about/branding.mdx
similarity index 100%
rename from pages/zh-cn/about/branding.mdx
rename to apps/site/pages/zh-cn/about/branding.mdx
diff --git a/pages/zh-cn/about/get-involved/collab-summit.md b/apps/site/pages/zh-cn/about/get-involved/collab-summit.md
similarity index 100%
rename from pages/zh-cn/about/get-involved/collab-summit.md
rename to apps/site/pages/zh-cn/about/get-involved/collab-summit.md
diff --git a/pages/zh-cn/about/get-involved/contribute.md b/apps/site/pages/zh-cn/about/get-involved/contribute.md
similarity index 100%
rename from pages/zh-cn/about/get-involved/contribute.md
rename to apps/site/pages/zh-cn/about/get-involved/contribute.md
diff --git a/pages/zh-cn/about/get-involved/events.mdx b/apps/site/pages/zh-cn/about/get-involved/events.mdx
similarity index 100%
rename from pages/zh-cn/about/get-involved/events.mdx
rename to apps/site/pages/zh-cn/about/get-involved/events.mdx
diff --git a/pages/zh-cn/about/get-involved/index.md b/apps/site/pages/zh-cn/about/get-involved/index.md
similarity index 100%
rename from pages/zh-cn/about/get-involved/index.md
rename to apps/site/pages/zh-cn/about/get-involved/index.md
diff --git a/pages/zh-cn/about/governance.md b/apps/site/pages/zh-cn/about/governance.md
similarity index 100%
rename from pages/zh-cn/about/governance.md
rename to apps/site/pages/zh-cn/about/governance.md
diff --git a/pages/zh-cn/about/index.mdx b/apps/site/pages/zh-cn/about/index.mdx
similarity index 100%
rename from pages/zh-cn/about/index.mdx
rename to apps/site/pages/zh-cn/about/index.mdx
diff --git a/pages/zh-cn/about/previous-releases.mdx b/apps/site/pages/zh-cn/about/previous-releases.mdx
similarity index 100%
rename from pages/zh-cn/about/previous-releases.mdx
rename to apps/site/pages/zh-cn/about/previous-releases.mdx
diff --git a/pages/zh-cn/about/security-reporting.mdx b/apps/site/pages/zh-cn/about/security-reporting.mdx
similarity index 100%
rename from pages/zh-cn/about/security-reporting.mdx
rename to apps/site/pages/zh-cn/about/security-reporting.mdx
diff --git a/pages/zh-cn/download/package-manager/all.md b/apps/site/pages/zh-cn/download/package-manager/all.md
similarity index 100%
rename from pages/zh-cn/download/package-manager/all.md
rename to apps/site/pages/zh-cn/download/package-manager/all.md
diff --git a/pages/zh-cn/download/package-manager/current.mdx b/apps/site/pages/zh-cn/download/package-manager/current.mdx
similarity index 100%
rename from pages/zh-cn/download/package-manager/current.mdx
rename to apps/site/pages/zh-cn/download/package-manager/current.mdx
diff --git a/pages/zh-cn/download/package-manager/index.mdx b/apps/site/pages/zh-cn/download/package-manager/index.mdx
similarity index 100%
rename from pages/zh-cn/download/package-manager/index.mdx
rename to apps/site/pages/zh-cn/download/package-manager/index.mdx
diff --git a/pages/zh-cn/download/prebuilt-binaries/current.mdx b/apps/site/pages/zh-cn/download/prebuilt-binaries/current.mdx
similarity index 100%
rename from pages/zh-cn/download/prebuilt-binaries/current.mdx
rename to apps/site/pages/zh-cn/download/prebuilt-binaries/current.mdx
diff --git a/pages/zh-cn/download/prebuilt-binaries/index.mdx b/apps/site/pages/zh-cn/download/prebuilt-binaries/index.mdx
similarity index 100%
rename from pages/zh-cn/download/prebuilt-binaries/index.mdx
rename to apps/site/pages/zh-cn/download/prebuilt-binaries/index.mdx
diff --git a/pages/zh-cn/download/prebuilt-installer/current.mdx b/apps/site/pages/zh-cn/download/prebuilt-installer/current.mdx
similarity index 100%
rename from pages/zh-cn/download/prebuilt-installer/current.mdx
rename to apps/site/pages/zh-cn/download/prebuilt-installer/current.mdx
diff --git a/pages/zh-cn/download/prebuilt-installer/index.mdx b/apps/site/pages/zh-cn/download/prebuilt-installer/index.mdx
similarity index 100%
rename from pages/zh-cn/download/prebuilt-installer/index.mdx
rename to apps/site/pages/zh-cn/download/prebuilt-installer/index.mdx
diff --git a/pages/zh-cn/download/source-code/current.mdx b/apps/site/pages/zh-cn/download/source-code/current.mdx
similarity index 100%
rename from pages/zh-cn/download/source-code/current.mdx
rename to apps/site/pages/zh-cn/download/source-code/current.mdx
diff --git a/pages/zh-cn/download/source-code/index.mdx b/apps/site/pages/zh-cn/download/source-code/index.mdx
similarity index 100%
rename from pages/zh-cn/download/source-code/index.mdx
rename to apps/site/pages/zh-cn/download/source-code/index.mdx
diff --git a/pages/zh-cn/index.mdx b/apps/site/pages/zh-cn/index.mdx
similarity index 100%
rename from pages/zh-cn/index.mdx
rename to apps/site/pages/zh-cn/index.mdx
diff --git a/pages/zh-cn/search.mdx b/apps/site/pages/zh-cn/search.mdx
similarity index 100%
rename from pages/zh-cn/search.mdx
rename to apps/site/pages/zh-cn/search.mdx
diff --git a/providers/__tests__/localeProvider.test.mjs b/apps/site/providers/__tests__/localeProvider.test.mjs
similarity index 100%
rename from providers/__tests__/localeProvider.test.mjs
rename to apps/site/providers/__tests__/localeProvider.test.mjs
diff --git a/providers/__tests__/matterProvider.test.mjs b/apps/site/providers/__tests__/matterProvider.test.mjs
similarity index 100%
rename from providers/__tests__/matterProvider.test.mjs
rename to apps/site/providers/__tests__/matterProvider.test.mjs
diff --git a/providers/__tests__/notificationProvider.test.mjs b/apps/site/providers/__tests__/notificationProvider.test.mjs
similarity index 100%
rename from providers/__tests__/notificationProvider.test.mjs
rename to apps/site/providers/__tests__/notificationProvider.test.mjs
diff --git a/providers/__tests__/themeProvider.test.mjs b/apps/site/providers/__tests__/themeProvider.test.mjs
similarity index 100%
rename from providers/__tests__/themeProvider.test.mjs
rename to apps/site/providers/__tests__/themeProvider.test.mjs
diff --git a/providers/localeProvider.tsx b/apps/site/providers/localeProvider.tsx
similarity index 100%
rename from providers/localeProvider.tsx
rename to apps/site/providers/localeProvider.tsx
diff --git a/providers/matterProvider.tsx b/apps/site/providers/matterProvider.tsx
similarity index 100%
rename from providers/matterProvider.tsx
rename to apps/site/providers/matterProvider.tsx
diff --git a/providers/navigationStateProvider.tsx b/apps/site/providers/navigationStateProvider.tsx
similarity index 100%
rename from providers/navigationStateProvider.tsx
rename to apps/site/providers/navigationStateProvider.tsx
diff --git a/providers/notificationProvider.tsx b/apps/site/providers/notificationProvider.tsx
similarity index 100%
rename from providers/notificationProvider.tsx
rename to apps/site/providers/notificationProvider.tsx
diff --git a/providers/releaseProvider.tsx b/apps/site/providers/releaseProvider.tsx
similarity index 100%
rename from providers/releaseProvider.tsx
rename to apps/site/providers/releaseProvider.tsx
diff --git a/providers/themeProvider.tsx b/apps/site/providers/themeProvider.tsx
similarity index 100%
rename from providers/themeProvider.tsx
rename to apps/site/providers/themeProvider.tsx
diff --git a/public/manifest.json b/apps/site/public/manifest.json
similarity index 100%
rename from public/manifest.json
rename to apps/site/public/manifest.json
diff --git a/public/security.txt b/apps/site/public/security.txt
similarity index 100%
rename from public/security.txt
rename to apps/site/public/security.txt
diff --git a/public/static/documents/2016-survey-infographic.png b/apps/site/public/static/documents/2016-survey-infographic.png
similarity index 100%
rename from public/static/documents/2016-survey-infographic.png
rename to apps/site/public/static/documents/2016-survey-infographic.png
diff --git a/public/static/documents/2016-survey-report.pdf b/apps/site/public/static/documents/2016-survey-report.pdf
similarity index 100%
rename from public/static/documents/2016-survey-report.pdf
rename to apps/site/public/static/documents/2016-survey-report.pdf
diff --git a/public/static/documents/2018-survey-report.pdf b/apps/site/public/static/documents/2018-survey-report.pdf
similarity index 100%
rename from public/static/documents/2018-survey-report.pdf
rename to apps/site/public/static/documents/2018-survey-report.pdf
diff --git a/public/static/documents/foundation-visual-guidelines.pdf b/apps/site/public/static/documents/foundation-visual-guidelines.pdf
similarity index 100%
rename from public/static/documents/foundation-visual-guidelines.pdf
rename to apps/site/public/static/documents/foundation-visual-guidelines.pdf
diff --git a/public/static/images/blog/201609_lts_schedule_summary.gif b/apps/site/public/static/images/blog/201609_lts_schedule_summary.gif
similarity index 100%
rename from public/static/images/blog/201609_lts_schedule_summary.gif
rename to apps/site/public/static/images/blog/201609_lts_schedule_summary.gif
diff --git a/public/static/images/blog/announcements/2011-nodejs-screenshot.png b/apps/site/public/static/images/blog/announcements/2011-nodejs-screenshot.png
similarity index 100%
rename from public/static/images/blog/announcements/2011-nodejs-screenshot.png
rename to apps/site/public/static/images/blog/announcements/2011-nodejs-screenshot.png
diff --git a/public/static/images/blog/announcements/2024-grace-hopper-activity.png b/apps/site/public/static/images/blog/announcements/2024-grace-hopper-activity.png
similarity index 100%
rename from public/static/images/blog/announcements/2024-grace-hopper-activity.png
rename to apps/site/public/static/images/blog/announcements/2024-grace-hopper-activity.png
diff --git a/public/static/images/blog/announcements/2024-nodejs-figma.png b/apps/site/public/static/images/blog/announcements/2024-nodejs-figma.png
similarity index 100%
rename from public/static/images/blog/announcements/2024-nodejs-figma.png
rename to apps/site/public/static/images/blog/announcements/2024-nodejs-figma.png
diff --git a/public/static/images/blog/announcements/2024-nodejs-redesign-lighthouse.jpg b/apps/site/public/static/images/blog/announcements/2024-nodejs-redesign-lighthouse.jpg
similarity index 100%
rename from public/static/images/blog/announcements/2024-nodejs-redesign-lighthouse.jpg
rename to apps/site/public/static/images/blog/announcements/2024-nodejs-redesign-lighthouse.jpg
diff --git a/public/static/images/blog/announcements/2024-nodejs-screenshot.png b/apps/site/public/static/images/blog/announcements/2024-nodejs-screenshot.png
similarity index 100%
rename from public/static/images/blog/announcements/2024-nodejs-screenshot.png
rename to apps/site/public/static/images/blog/announcements/2024-nodejs-screenshot.png
diff --git a/public/static/images/blog/module/bunyan.png b/apps/site/public/static/images/blog/module/bunyan.png
similarity index 100%
rename from public/static/images/blog/module/bunyan.png
rename to apps/site/public/static/images/blog/module/bunyan.png
diff --git a/public/static/images/blog/npm/2013-outage-postmortem/XwrpFNICJ2-3000x3000.png b/apps/site/public/static/images/blog/npm/2013-outage-postmortem/XwrpFNICJ2-3000x3000.png
similarity index 100%
rename from public/static/images/blog/npm/2013-outage-postmortem/XwrpFNICJ2-3000x3000.png
rename to apps/site/public/static/images/blog/npm/2013-outage-postmortem/XwrpFNICJ2-3000x3000.png
diff --git a/public/static/images/blog/npm/2013-outage-postmortem/bapm3fk8Ve-3000x3000.png b/apps/site/public/static/images/blog/npm/2013-outage-postmortem/bapm3fk8Ve-3000x3000.png
similarity index 100%
rename from public/static/images/blog/npm/2013-outage-postmortem/bapm3fk8Ve-3000x3000.png
rename to apps/site/public/static/images/blog/npm/2013-outage-postmortem/bapm3fk8Ve-3000x3000.png
diff --git a/public/static/images/blog/npm/2013-outage-postmortem/xu1faVCq8p-3000x3000.png b/apps/site/public/static/images/blog/npm/2013-outage-postmortem/xu1faVCq8p-3000x3000.png
similarity index 100%
rename from public/static/images/blog/npm/2013-outage-postmortem/xu1faVCq8p-3000x3000.png
rename to apps/site/public/static/images/blog/npm/2013-outage-postmortem/xu1faVCq8p-3000x3000.png
diff --git a/public/static/images/blog/npm/managing-node-js-dependencies-with-shrinkwrap/web-300x300.jpg b/apps/site/public/static/images/blog/npm/managing-node-js-dependencies-with-shrinkwrap/web-300x300.jpg
similarity index 100%
rename from public/static/images/blog/npm/managing-node-js-dependencies-with-shrinkwrap/web-300x300.jpg
rename to apps/site/public/static/images/blog/npm/managing-node-js-dependencies-with-shrinkwrap/web-300x300.jpg
diff --git a/public/static/images/blog/release/lts.png b/apps/site/public/static/images/blog/release/lts.png
similarity index 100%
rename from public/static/images/blog/release/lts.png
rename to apps/site/public/static/images/blog/release/lts.png
diff --git a/public/static/images/blog/uncategorized/evolving-the-node-js-brand/grid.png b/apps/site/public/static/images/blog/uncategorized/evolving-the-node-js-brand/grid.png
similarity index 100%
rename from public/static/images/blog/uncategorized/evolving-the-node-js-brand/grid.png
rename to apps/site/public/static/images/blog/uncategorized/evolving-the-node-js-brand/grid.png
diff --git a/public/static/images/blog/uncategorized/evolving-the-node-js-brand/network.png b/apps/site/public/static/images/blog/uncategorized/evolving-the-node-js-brand/network.png
similarity index 100%
rename from public/static/images/blog/uncategorized/evolving-the-node-js-brand/network.png
rename to apps/site/public/static/images/blog/uncategorized/evolving-the-node-js-brand/network.png
diff --git a/public/static/images/blog/uncategorized/evolving-the-node-js-brand/node.png b/apps/site/public/static/images/blog/uncategorized/evolving-the-node-js-brand/node.png
similarity index 100%
rename from public/static/images/blog/uncategorized/evolving-the-node-js-brand/node.png
rename to apps/site/public/static/images/blog/uncategorized/evolving-the-node-js-brand/node.png
diff --git a/public/static/images/blog/uncategorized/evolving-the-node-js-brand/nodejs.png b/apps/site/public/static/images/blog/uncategorized/evolving-the-node-js-brand/nodejs.png
similarity index 100%
rename from public/static/images/blog/uncategorized/evolving-the-node-js-brand/nodejs.png
rename to apps/site/public/static/images/blog/uncategorized/evolving-the-node-js-brand/nodejs.png
diff --git a/public/static/images/blog/uncategorized/evolving-the-node-js-brand/tri-color-node.png b/apps/site/public/static/images/blog/uncategorized/evolving-the-node-js-brand/tri-color-node.png
similarity index 100%
rename from public/static/images/blog/uncategorized/evolving-the-node-js-brand/tri-color-node.png
rename to apps/site/public/static/images/blog/uncategorized/evolving-the-node-js-brand/tri-color-node.png
diff --git a/public/static/images/blog/uncategorized/ldapjs-a-reprise-of-ldap/uR16U.png b/apps/site/public/static/images/blog/uncategorized/ldapjs-a-reprise-of-ldap/uR16U.png
similarity index 100%
rename from public/static/images/blog/uncategorized/ldapjs-a-reprise-of-ldap/uR16U.png
rename to apps/site/public/static/images/blog/uncategorized/ldapjs-a-reprise-of-ldap/uR16U.png
diff --git a/public/static/images/blog/weekly-update/d7c62f3e-d94c-11e5-8ff8-f32c74b13cc3.png b/apps/site/public/static/images/blog/weekly-update/d7c62f3e-d94c-11e5-8ff8-f32c74b13cc3.png
similarity index 100%
rename from public/static/images/blog/weekly-update/d7c62f3e-d94c-11e5-8ff8-f32c74b13cc3.png
rename to apps/site/public/static/images/blog/weekly-update/d7c62f3e-d94c-11e5-8ff8-f32c74b13cc3.png
diff --git a/public/static/images/docs/guides/diagnostics/compare.png b/apps/site/public/static/images/docs/guides/diagnostics/compare.png
similarity index 100%
rename from public/static/images/docs/guides/diagnostics/compare.png
rename to apps/site/public/static/images/docs/guides/diagnostics/compare.png
diff --git a/public/static/images/docs/guides/diagnostics/heap-profiler-tutorial-1.png b/apps/site/public/static/images/docs/guides/diagnostics/heap-profiler-tutorial-1.png
similarity index 100%
rename from public/static/images/docs/guides/diagnostics/heap-profiler-tutorial-1.png
rename to apps/site/public/static/images/docs/guides/diagnostics/heap-profiler-tutorial-1.png
diff --git a/public/static/images/docs/guides/diagnostics/heap-profiler-tutorial-2.png b/apps/site/public/static/images/docs/guides/diagnostics/heap-profiler-tutorial-2.png
similarity index 100%
rename from public/static/images/docs/guides/diagnostics/heap-profiler-tutorial-2.png
rename to apps/site/public/static/images/docs/guides/diagnostics/heap-profiler-tutorial-2.png
diff --git a/public/static/images/docs/guides/diagnostics/heap-profiler-tutorial-3.png b/apps/site/public/static/images/docs/guides/diagnostics/heap-profiler-tutorial-3.png
similarity index 100%
rename from public/static/images/docs/guides/diagnostics/heap-profiler-tutorial-3.png
rename to apps/site/public/static/images/docs/guides/diagnostics/heap-profiler-tutorial-3.png
diff --git a/public/static/images/docs/guides/diagnostics/heap-profiler-tutorial-4.png b/apps/site/public/static/images/docs/guides/diagnostics/heap-profiler-tutorial-4.png
similarity index 100%
rename from public/static/images/docs/guides/diagnostics/heap-profiler-tutorial-4.png
rename to apps/site/public/static/images/docs/guides/diagnostics/heap-profiler-tutorial-4.png
diff --git a/public/static/images/docs/guides/diagnostics/heap-profiler-tutorial-5.png b/apps/site/public/static/images/docs/guides/diagnostics/heap-profiler-tutorial-5.png
similarity index 100%
rename from public/static/images/docs/guides/diagnostics/heap-profiler-tutorial-5.png
rename to apps/site/public/static/images/docs/guides/diagnostics/heap-profiler-tutorial-5.png
diff --git a/public/static/images/docs/guides/diagnostics/load-snapshot.png b/apps/site/public/static/images/docs/guides/diagnostics/load-snapshot.png
similarity index 100%
rename from public/static/images/docs/guides/diagnostics/load-snapshot.png
rename to apps/site/public/static/images/docs/guides/diagnostics/load-snapshot.png
diff --git a/public/static/images/docs/guides/diagnostics/snapshot.png b/apps/site/public/static/images/docs/guides/diagnostics/snapshot.png
similarity index 100%
rename from public/static/images/docs/guides/diagnostics/snapshot.png
rename to apps/site/public/static/images/docs/guides/diagnostics/snapshot.png
diff --git a/public/static/images/docs/guides/diagnostics/tools.png b/apps/site/public/static/images/docs/guides/diagnostics/tools.png
similarity index 100%
rename from public/static/images/docs/guides/diagnostics/tools.png
rename to apps/site/public/static/images/docs/guides/diagnostics/tools.png
diff --git a/public/static/images/favicons/android-chrome-192x192.png b/apps/site/public/static/images/favicons/android-chrome-192x192.png
similarity index 100%
rename from public/static/images/favicons/android-chrome-192x192.png
rename to apps/site/public/static/images/favicons/android-chrome-192x192.png
diff --git a/public/static/images/favicons/android-chrome-512x512.png b/apps/site/public/static/images/favicons/android-chrome-512x512.png
similarity index 100%
rename from public/static/images/favicons/android-chrome-512x512.png
rename to apps/site/public/static/images/favicons/android-chrome-512x512.png
diff --git a/public/static/images/favicons/favicon.png b/apps/site/public/static/images/favicons/favicon.png
similarity index 100%
rename from public/static/images/favicons/favicon.png
rename to apps/site/public/static/images/favicons/favicon.png
diff --git a/public/static/images/learn/javascript-timers/recursive-settimeout.png b/apps/site/public/static/images/learn/javascript-timers/recursive-settimeout.png
similarity index 100%
rename from public/static/images/learn/javascript-timers/recursive-settimeout.png
rename to apps/site/public/static/images/learn/javascript-timers/recursive-settimeout.png
diff --git a/public/static/images/learn/javascript-timers/setinterval-ok.png b/apps/site/public/static/images/learn/javascript-timers/setinterval-ok.png
similarity index 100%
rename from public/static/images/learn/javascript-timers/setinterval-ok.png
rename to apps/site/public/static/images/learn/javascript-timers/setinterval-ok.png
diff --git a/public/static/images/learn/javascript-timers/setinterval-overlapping.png b/apps/site/public/static/images/learn/javascript-timers/setinterval-overlapping.png
similarity index 100%
rename from public/static/images/learn/javascript-timers/setinterval-overlapping.png
rename to apps/site/public/static/images/learn/javascript-timers/setinterval-overlapping.png
diff --git a/public/static/images/learn/javascript-timers/setinterval-varying-duration.png b/apps/site/public/static/images/learn/javascript-timers/setinterval-varying-duration.png
similarity index 100%
rename from public/static/images/learn/javascript-timers/setinterval-varying-duration.png
rename to apps/site/public/static/images/learn/javascript-timers/setinterval-varying-duration.png
diff --git a/public/static/images/logo-hexagon-card.png b/apps/site/public/static/images/logo-hexagon-card.png
similarity index 100%
rename from public/static/images/logo-hexagon-card.png
rename to apps/site/public/static/images/logo-hexagon-card.png
diff --git a/public/static/images/node-mascot.svg b/apps/site/public/static/images/node-mascot.svg
similarity index 100%
rename from public/static/images/node-mascot.svg
rename to apps/site/public/static/images/node-mascot.svg
diff --git a/public/static/logos/jsIconGreen.svg b/apps/site/public/static/logos/jsIconGreen.svg
similarity index 100%
rename from public/static/logos/jsIconGreen.svg
rename to apps/site/public/static/logos/jsIconGreen.svg
diff --git a/public/static/logos/jsIconWhite.svg b/apps/site/public/static/logos/jsIconWhite.svg
similarity index 100%
rename from public/static/logos/jsIconWhite.svg
rename to apps/site/public/static/logos/jsIconWhite.svg
diff --git a/public/static/logos/nodejsDark.svg b/apps/site/public/static/logos/nodejsDark.svg
similarity index 100%
rename from public/static/logos/nodejsDark.svg
rename to apps/site/public/static/logos/nodejsDark.svg
diff --git a/public/static/logos/nodejsDarkPride.svg b/apps/site/public/static/logos/nodejsDarkPride.svg
similarity index 100%
rename from public/static/logos/nodejsDarkPride.svg
rename to apps/site/public/static/logos/nodejsDarkPride.svg
diff --git a/public/static/logos/nodejsLight.svg b/apps/site/public/static/logos/nodejsLight.svg
similarity index 100%
rename from public/static/logos/nodejsLight.svg
rename to apps/site/public/static/logos/nodejsLight.svg
diff --git a/public/static/logos/nodejsLightPride.svg b/apps/site/public/static/logos/nodejsLightPride.svg
similarity index 100%
rename from public/static/logos/nodejsLightPride.svg
rename to apps/site/public/static/logos/nodejsLightPride.svg
diff --git a/public/static/logos/nodejsStackedBlack.svg b/apps/site/public/static/logos/nodejsStackedBlack.svg
similarity index 100%
rename from public/static/logos/nodejsStackedBlack.svg
rename to apps/site/public/static/logos/nodejsStackedBlack.svg
diff --git a/public/static/logos/nodejsStackedDark.svg b/apps/site/public/static/logos/nodejsStackedDark.svg
similarity index 100%
rename from public/static/logos/nodejsStackedDark.svg
rename to apps/site/public/static/logos/nodejsStackedDark.svg
diff --git a/public/static/logos/nodejsStackedLight.svg b/apps/site/public/static/logos/nodejsStackedLight.svg
similarity index 100%
rename from public/static/logos/nodejsStackedLight.svg
rename to apps/site/public/static/logos/nodejsStackedLight.svg
diff --git a/public/static/logos/nodejsStackedWhite.svg b/apps/site/public/static/logos/nodejsStackedWhite.svg
similarity index 100%
rename from public/static/logos/nodejsStackedWhite.svg
rename to apps/site/public/static/logos/nodejsStackedWhite.svg
diff --git a/public/traffic-manager b/apps/site/public/traffic-manager
similarity index 100%
rename from public/traffic-manager
rename to apps/site/public/traffic-manager
diff --git a/redirects.json b/apps/site/redirects.json
similarity index 100%
rename from redirects.json
rename to apps/site/redirects.json
diff --git a/scripts/lighthouse/__tests__/index.test.mjs b/apps/site/scripts/lighthouse/__tests__/index.test.mjs
similarity index 100%
rename from scripts/lighthouse/__tests__/index.test.mjs
rename to apps/site/scripts/lighthouse/__tests__/index.test.mjs
diff --git a/scripts/lighthouse/index.mjs b/apps/site/scripts/lighthouse/index.mjs
similarity index 100%
rename from scripts/lighthouse/index.mjs
rename to apps/site/scripts/lighthouse/index.mjs
diff --git a/scripts/orama-search/get-documents.mjs b/apps/site/scripts/orama-search/get-documents.mjs
similarity index 100%
rename from scripts/orama-search/get-documents.mjs
rename to apps/site/scripts/orama-search/get-documents.mjs
diff --git a/scripts/orama-search/sync-orama-cloud.mjs b/apps/site/scripts/orama-search/sync-orama-cloud.mjs
similarity index 100%
rename from scripts/orama-search/sync-orama-cloud.mjs
rename to apps/site/scripts/orama-search/sync-orama-cloud.mjs
diff --git a/scripts/release-post/downloadsTable.mjs b/apps/site/scripts/release-post/downloadsTable.mjs
similarity index 100%
rename from scripts/release-post/downloadsTable.mjs
rename to apps/site/scripts/release-post/downloadsTable.mjs
diff --git a/scripts/release-post/index.mjs b/apps/site/scripts/release-post/index.mjs
similarity index 99%
rename from scripts/release-post/index.mjs
rename to apps/site/scripts/release-post/index.mjs
index 35899003256e8..f41f60e49321c 100644
--- a/scripts/release-post/index.mjs
+++ b/apps/site/scripts/release-post/index.mjs
@@ -28,7 +28,7 @@ import handlebars from 'handlebars';
import { format } from 'prettier';
import { downloadsTable } from './downloadsTable.mjs';
-import prettierConfig from '../../.prettierrc.json' with { type: 'json' };
+import prettierConfig from '../../../../.prettierrc.json' with { type: 'json' };
import { getRelativePath } from '../../next.helpers.mjs';
const URLS = {
diff --git a/scripts/release-post/template.hbs b/apps/site/scripts/release-post/template.hbs
similarity index 100%
rename from scripts/release-post/template.hbs
rename to apps/site/scripts/release-post/template.hbs
diff --git a/sentry.constants.mjs b/apps/site/sentry.constants.mjs
similarity index 100%
rename from sentry.constants.mjs
rename to apps/site/sentry.constants.mjs
diff --git a/shiki.config.mjs b/apps/site/shiki.config.mjs
similarity index 100%
rename from shiki.config.mjs
rename to apps/site/shiki.config.mjs
diff --git a/site.json b/apps/site/site.json
similarity index 100%
rename from site.json
rename to apps/site/site.json
diff --git a/styles/base.css b/apps/site/styles/base.css
similarity index 86%
rename from styles/base.css
rename to apps/site/styles/base.css
index 419556096a755..31587ca948d8e 100644
--- a/styles/base.css
+++ b/apps/site/styles/base.css
@@ -10,8 +10,8 @@ body {
}
body {
- @apply bg-white
- font-open-sans
+ @apply font-open-sans
+ bg-white
text-neutral-950
motion-safe:scroll-smooth
dark:bg-neutral-950
diff --git a/styles/effects.css b/apps/site/styles/effects.css
similarity index 100%
rename from styles/effects.css
rename to apps/site/styles/effects.css
index 0f1061ba3157d..bececd16aae56 100644
--- a/styles/effects.css
+++ b/apps/site/styles/effects.css
@@ -1,11 +1,11 @@
h1.special {
@apply bg-gradient-subtle-gray
+ dark:bg-gradient-subtle-white
bg-clip-text
text-4xl
leading-[3rem]
-tracking-[0.045rem]
[-webkit-text-fill-color:transparent]
- dark:bg-gradient-subtle-white
md:text-5xl
md:leading-[4rem]
md:-tracking-[0.06rem];
diff --git a/styles/index.css b/apps/site/styles/index.css
similarity index 100%
rename from styles/index.css
rename to apps/site/styles/index.css
diff --git a/styles/markdown.css b/apps/site/styles/markdown.css
similarity index 90%
rename from styles/markdown.css
rename to apps/site/styles/markdown.css
index 3ef93efb048d9..3984a3ed9c03c 100644
--- a/styles/markdown.css
+++ b/apps/site/styles/markdown.css
@@ -59,10 +59,10 @@ main {
}
code {
- @apply rounded
+ @apply font-ibm-plex-mono
+ rounded
bg-neutral-100
px-1
- font-ibm-plex-mono
text-base
font-semibold
text-neutral-900
@@ -77,9 +77,9 @@ main {
a,
.anchor {
- @apply text-green-600
- dark:text-green-400
- max-xs:font-semibold;
+ @apply max-xs:font-semibold
+ text-green-600
+ dark:text-green-400;
&:hover {
@apply text-green-900
@@ -135,7 +135,9 @@ main {
th,
td {
- @apply border
+ @apply max-xs:block
+ max-xs:border-l-0
+ border
border-r-0
border-t-0
border-neutral-200
@@ -143,9 +145,7 @@ main {
py-2
text-neutral-900
dark:border-neutral-800
- dark:text-white
- max-xs:block
- max-xs:border-l-0;
+ dark:text-white;
> a {
@apply pr-2;
diff --git a/tailwind.config.ts b/apps/site/tailwind.config.ts
similarity index 100%
rename from tailwind.config.ts
rename to apps/site/tailwind.config.ts
diff --git a/tsconfig.json b/apps/site/tsconfig.json
similarity index 100%
rename from tsconfig.json
rename to apps/site/tsconfig.json
diff --git a/apps/site/turbo.json b/apps/site/turbo.json
new file mode 100644
index 0000000000000..327d89ece90da
--- /dev/null
+++ b/apps/site/turbo.json
@@ -0,0 +1,135 @@
+{
+ "$schema": "https://turbo.build/schema.json",
+ "extends": ["//"],
+ "globalEnv": ["NODE_ENV"],
+ "tasks": {
+ "dev": {
+ "cache": false,
+ "persistent": true,
+ "env": [
+ "NEXT_PUBLIC_VERCEL_ENV",
+ "NEXT_PUBLIC_STATIC_EXPORT",
+ "NEXT_PUBLIC_BASE_URL",
+ "NEXT_PUBLIC_VERCEL_URL",
+ "NEXT_PUBLIC_DIST_URL",
+ "NEXT_PUBLIC_DOCS_URL",
+ "NEXT_PUBLIC_BASE_PATH",
+ "NEXT_PUBLIC_ORAMA_API_KEY",
+ "NEXT_PUBLIC_ORAMA_ENDPOINT",
+ "NEXT_PUBLIC_VERCEL_REVALIDATE_TIME",
+ "NEXT_PUBLIC_DATA_URL"
+ ]
+ },
+ "build": {
+ "inputs": [
+ "{app,components,hooks,i18n,layouts,middlewares,pages,providers,types,util}/**/*.{ts,tsx}",
+ "{app,components,layouts,pages,styles}/**/*.css",
+ "{next-data,scripts,i18n}/**/*.{mjs,json}",
+ "{app,pages}/**/*.{mdx,md}",
+ "*.{md,mdx,json,ts,tsx,mjs,yml}"
+ ],
+ "outputs": [".next/**", "!.next/cache/**"],
+ "env": [
+ "NEXT_PUBLIC_VERCEL_ENV",
+ "NEXT_PUBLIC_STATIC_EXPORT",
+ "NEXT_PUBLIC_BASE_URL",
+ "NEXT_PUBLIC_VERCEL_URL",
+ "NEXT_PUBLIC_DIST_URL",
+ "NEXT_PUBLIC_DOCS_URL",
+ "NEXT_PUBLIC_BASE_PATH",
+ "NEXT_PUBLIC_ORAMA_API_KEY",
+ "NEXT_PUBLIC_ORAMA_ENDPOINT",
+ "NEXT_PUBLIC_VERCEL_REVALIDATE_TIME",
+ "NEXT_PUBLIC_DATA_URL"
+ ]
+ },
+ "start": {
+ "cache": false,
+ "persistent": true,
+ "env": [
+ "NEXT_PUBLIC_VERCEL_ENV",
+ "NEXT_PUBLIC_STATIC_EXPORT",
+ "NEXT_PUBLIC_BASE_URL",
+ "NEXT_PUBLIC_VERCEL_URL",
+ "NEXT_PUBLIC_DIST_URL",
+ "NEXT_PUBLIC_DOCS_URL",
+ "NEXT_PUBLIC_BASE_PATH",
+ "NEXT_PUBLIC_ORAMA_API_KEY",
+ "NEXT_PUBLIC_ORAMA_ENDPOINT",
+ "NEXT_PUBLIC_VERCEL_REVALIDATE_TIME",
+ "NEXT_PUBLIC_DATA_URL"
+ ]
+ },
+ "deploy": {
+ "inputs": [
+ "{app,components,hooks,i18n,layouts,middlewares,pages,providers,types,util}/**/*.{ts,tsx}",
+ "{app,components,layouts,pages,styles}/**/*.css",
+ "{next-data,scripts,i18n}/**/*.{mjs,json}",
+ "{app,pages}/**/*.{mdx,md}",
+ "*.{md,mdx,json,ts,tsx,mjs,yml}"
+ ],
+ "outputs": [".next/**", "!.next/cache/**"],
+ "env": [
+ "NEXT_PUBLIC_VERCEL_ENV",
+ "NEXT_PUBLIC_STATIC_EXPORT",
+ "NEXT_PUBLIC_BASE_URL",
+ "NEXT_PUBLIC_VERCEL_URL",
+ "NEXT_PUBLIC_DIST_URL",
+ "NEXT_PUBLIC_DOCS_URL",
+ "NEXT_PUBLIC_BASE_PATH",
+ "NEXT_PUBLIC_ORAMA_API_KEY",
+ "NEXT_PUBLIC_ORAMA_ENDPOINT",
+ "NEXT_PUBLIC_VERCEL_REVALIDATE_TIME",
+ "NEXT_PUBLIC_DATA_URL"
+ ]
+ },
+ "lint:js": {
+ "inputs": [
+ "{app,components,hooks,i18n,layouts,middlewares,pages,providers,types,util}/**/*.{ts,tsx,mjs}",
+ "{next-data,scripts,i18n}/**/*.{mjs,json}",
+ "{.storybook,public}/**/*.{ts,js,json}",
+ "*.{json,ts,tsx}"
+ ],
+ "outputs": [".eslintjscache"]
+ },
+ "lint:md": {
+ "inputs": ["{app,pages}/**/*.{md,mdx}", "*.{md,mdx}"],
+ "outputs": [".eslintmdcache"]
+ },
+ "lint:css": {
+ "inputs": ["{app,components,layouts,pages,styles}/**/*.css"],
+ "outputs": [".stylelintcache"]
+ },
+ "lint:fix": {
+ "cache": false
+ },
+ "format": {
+ "cache": false
+ },
+ "storybook": {
+ "cache": false,
+ "persistent": true
+ },
+ "storybook:build": {
+ "inputs": [
+ "{app,components,hooks,i18n,layouts,middlewares,pages,providers,types,util}/**/*.{ts,tsx}",
+ "{app,components,layouts,pages,styles}/**/*.css",
+ "{next-data,scripts,i18n}/**/*.{mjs,json}",
+ "{.storybook,public}/**/*.{ts,js,css,json}",
+ "{app,pages}/**/*.{mdx,md}",
+ "*.{md,mdx,json,ts,tsx,mjs,yml}"
+ ],
+ "outputs": ["storybook-static/**"]
+ },
+ "test:unit": {
+ "inputs": [
+ "{app,components,hooks,i18n,layouts,middlewares,pages,providers,types,util}/**/*.{ts,tsx,mjs}",
+ "{app,components,layouts,pages,styles}/**/*.css",
+ "{next-data,scripts,i18n}/**/*.{mjs,json}",
+ "{app,pages}/**/*.{mdx,md}",
+ "*.{md,mdx,json,ts,tsx,mjs,yml}"
+ ],
+ "outputs": ["coverage/**", "junit.xml"]
+ }
+ }
+}
diff --git a/types/blog.ts b/apps/site/types/blog.ts
similarity index 100%
rename from types/blog.ts
rename to apps/site/types/blog.ts
diff --git a/types/calendar.ts b/apps/site/types/calendar.ts
similarity index 100%
rename from types/calendar.ts
rename to apps/site/types/calendar.ts
diff --git a/types/config.ts b/apps/site/types/config.ts
similarity index 100%
rename from types/config.ts
rename to apps/site/types/config.ts
diff --git a/types/features.ts b/apps/site/types/features.ts
similarity index 100%
rename from types/features.ts
rename to apps/site/types/features.ts
diff --git a/types/frontmatter.ts b/apps/site/types/frontmatter.ts
similarity index 100%
rename from types/frontmatter.ts
rename to apps/site/types/frontmatter.ts
diff --git a/types/github.ts b/apps/site/types/github.ts
similarity index 100%
rename from types/github.ts
rename to apps/site/types/github.ts
diff --git a/types/i18n.ts b/apps/site/types/i18n.ts
similarity index 100%
rename from types/i18n.ts
rename to apps/site/types/i18n.ts
diff --git a/types/index.ts b/apps/site/types/index.ts
similarity index 100%
rename from types/index.ts
rename to apps/site/types/index.ts
diff --git a/types/layouts.ts b/apps/site/types/layouts.ts
similarity index 100%
rename from types/layouts.ts
rename to apps/site/types/layouts.ts
diff --git a/types/navigation.ts b/apps/site/types/navigation.ts
similarity index 100%
rename from types/navigation.ts
rename to apps/site/types/navigation.ts
diff --git a/types/og.ts b/apps/site/types/og.ts
similarity index 100%
rename from types/og.ts
rename to apps/site/types/og.ts
diff --git a/types/redirects.ts b/apps/site/types/redirects.ts
similarity index 100%
rename from types/redirects.ts
rename to apps/site/types/redirects.ts
diff --git a/types/release.ts b/apps/site/types/release.ts
similarity index 100%
rename from types/release.ts
rename to apps/site/types/release.ts
diff --git a/types/releases.ts b/apps/site/types/releases.ts
similarity index 100%
rename from types/releases.ts
rename to apps/site/types/releases.ts
diff --git a/types/search.ts b/apps/site/types/search.ts
similarity index 100%
rename from types/search.ts
rename to apps/site/types/search.ts
diff --git a/types/server.ts b/apps/site/types/server.ts
similarity index 100%
rename from types/server.ts
rename to apps/site/types/server.ts
diff --git a/types/userOS.ts b/apps/site/types/userOS.ts
similarity index 100%
rename from types/userOS.ts
rename to apps/site/types/userOS.ts
diff --git a/util/__tests__/assignClientContext.test.mjs b/apps/site/util/__tests__/assignClientContext.test.mjs
similarity index 100%
rename from util/__tests__/assignClientContext.test.mjs
rename to apps/site/util/__tests__/assignClientContext.test.mjs
diff --git a/util/__tests__/blogUtils.test.mjs b/apps/site/util/__tests__/blogUtils.test.mjs
similarity index 100%
rename from util/__tests__/blogUtils.test.mjs
rename to apps/site/util/__tests__/blogUtils.test.mjs
diff --git a/util/__tests__/dateUtils.test.mjs b/apps/site/util/__tests__/dateUtils.test.mjs
similarity index 100%
rename from util/__tests__/dateUtils.test.mjs
rename to apps/site/util/__tests__/dateUtils.test.mjs
diff --git a/util/__tests__/debounce.test.mjs b/apps/site/util/__tests__/debounce.test.mjs
similarity index 100%
rename from util/__tests__/debounce.test.mjs
rename to apps/site/util/__tests__/debounce.test.mjs
diff --git a/util/__tests__/detectOS.test.mjs b/apps/site/util/__tests__/detectOS.test.mjs
similarity index 100%
rename from util/__tests__/detectOS.test.mjs
rename to apps/site/util/__tests__/detectOS.test.mjs
diff --git a/util/__tests__/downloadUtils.test.mjs b/apps/site/util/__tests__/downloadUtils.test.mjs
similarity index 100%
rename from util/__tests__/downloadUtils.test.mjs
rename to apps/site/util/__tests__/downloadUtils.test.mjs
diff --git a/util/__tests__/getBitness.test.mjs b/apps/site/util/__tests__/getBitness.test.mjs
similarity index 100%
rename from util/__tests__/getBitness.test.mjs
rename to apps/site/util/__tests__/getBitness.test.mjs
diff --git a/util/__tests__/getNodeApiLink.test.mjs b/apps/site/util/__tests__/getNodeApiLink.test.mjs
similarity index 100%
rename from util/__tests__/getNodeApiLink.test.mjs
rename to apps/site/util/__tests__/getNodeApiLink.test.mjs
diff --git a/util/__tests__/getNodeDownloadUrl.test.mjs b/apps/site/util/__tests__/getNodeDownloadUrl.test.mjs
similarity index 100%
rename from util/__tests__/getNodeDownloadUrl.test.mjs
rename to apps/site/util/__tests__/getNodeDownloadUrl.test.mjs
diff --git a/util/__tests__/getNodeJsChangelog.test.mjs b/apps/site/util/__tests__/getNodeJsChangelog.test.mjs
similarity index 100%
rename from util/__tests__/getNodeJsChangelog.test.mjs
rename to apps/site/util/__tests__/getNodeJsChangelog.test.mjs
diff --git a/util/__tests__/getUserBitnessByArchitecture.test.mjs b/apps/site/util/__tests__/getUserBitnessByArchitecture.test.mjs
similarity index 100%
rename from util/__tests__/getUserBitnessByArchitecture.test.mjs
rename to apps/site/util/__tests__/getUserBitnessByArchitecture.test.mjs
diff --git a/util/__tests__/gitHubUtils.test.mjs b/apps/site/util/__tests__/gitHubUtils.test.mjs
similarity index 100%
rename from util/__tests__/gitHubUtils.test.mjs
rename to apps/site/util/__tests__/gitHubUtils.test.mjs
diff --git a/util/__tests__/hexToRGBA.test.mjs b/apps/site/util/__tests__/hexToRGBA.test.mjs
similarity index 100%
rename from util/__tests__/hexToRGBA.test.mjs
rename to apps/site/util/__tests__/hexToRGBA.test.mjs
diff --git a/util/__tests__/stringUtils.test.mjs b/apps/site/util/__tests__/stringUtils.test.mjs
similarity index 100%
rename from util/__tests__/stringUtils.test.mjs
rename to apps/site/util/__tests__/stringUtils.test.mjs
diff --git a/util/assignClientContext.ts b/apps/site/util/assignClientContext.ts
similarity index 100%
rename from util/assignClientContext.ts
rename to apps/site/util/assignClientContext.ts
diff --git a/util/blogUtils.ts b/apps/site/util/blogUtils.ts
similarity index 100%
rename from util/blogUtils.ts
rename to apps/site/util/blogUtils.ts
diff --git a/util/dateUtils.ts b/apps/site/util/dateUtils.ts
similarity index 100%
rename from util/dateUtils.ts
rename to apps/site/util/dateUtils.ts
diff --git a/util/debounce.ts b/apps/site/util/debounce.ts
similarity index 100%
rename from util/debounce.ts
rename to apps/site/util/debounce.ts
diff --git a/util/detectOS.ts b/apps/site/util/detectOS.ts
similarity index 100%
rename from util/detectOS.ts
rename to apps/site/util/detectOS.ts
diff --git a/util/downloadUtils.ts b/apps/site/util/downloadUtils.ts
similarity index 100%
rename from util/downloadUtils.ts
rename to apps/site/util/downloadUtils.ts
diff --git a/util/fetchNodeJsChangelog.ts b/apps/site/util/fetchNodeJsChangelog.ts
similarity index 100%
rename from util/fetchNodeJsChangelog.ts
rename to apps/site/util/fetchNodeJsChangelog.ts
diff --git a/util/getArchitecture.ts b/apps/site/util/getArchitecture.ts
similarity index 100%
rename from util/getArchitecture.ts
rename to apps/site/util/getArchitecture.ts
diff --git a/util/getBitness.ts b/apps/site/util/getBitness.ts
similarity index 100%
rename from util/getBitness.ts
rename to apps/site/util/getBitness.ts
diff --git a/util/getHighlighter.ts b/apps/site/util/getHighlighter.ts
similarity index 100%
rename from util/getHighlighter.ts
rename to apps/site/util/getHighlighter.ts
diff --git a/util/getLanguageDisplayName.ts b/apps/site/util/getLanguageDisplayName.ts
similarity index 100%
rename from util/getLanguageDisplayName.ts
rename to apps/site/util/getLanguageDisplayName.ts
diff --git a/util/getNodeApiLink.ts b/apps/site/util/getNodeApiLink.ts
similarity index 100%
rename from util/getNodeApiLink.ts
rename to apps/site/util/getNodeApiLink.ts
diff --git a/util/getNodeDownloadSnippet.ts b/apps/site/util/getNodeDownloadSnippet.ts
similarity index 100%
rename from util/getNodeDownloadSnippet.ts
rename to apps/site/util/getNodeDownloadSnippet.ts
diff --git a/util/getNodeDownloadUrl.ts b/apps/site/util/getNodeDownloadUrl.ts
similarity index 100%
rename from util/getNodeDownloadUrl.ts
rename to apps/site/util/getNodeDownloadUrl.ts
diff --git a/util/getNodeJsChangelog.ts b/apps/site/util/getNodeJsChangelog.ts
similarity index 100%
rename from util/getNodeJsChangelog.ts
rename to apps/site/util/getNodeJsChangelog.ts
diff --git a/util/getUserBitnessByArchitecture.ts b/apps/site/util/getUserBitnessByArchitecture.ts
similarity index 100%
rename from util/getUserBitnessByArchitecture.ts
rename to apps/site/util/getUserBitnessByArchitecture.ts
diff --git a/util/gitHubUtils.ts b/apps/site/util/gitHubUtils.ts
similarity index 100%
rename from util/gitHubUtils.ts
rename to apps/site/util/gitHubUtils.ts
diff --git a/util/hexToRGBA.ts b/apps/site/util/hexToRGBA.ts
similarity index 100%
rename from util/hexToRGBA.ts
rename to apps/site/util/hexToRGBA.ts
diff --git a/util/searchUtils.ts b/apps/site/util/searchUtils.ts
similarity index 100%
rename from util/searchUtils.ts
rename to apps/site/util/searchUtils.ts
diff --git a/util/stringUtils.ts b/apps/site/util/stringUtils.ts
similarity index 100%
rename from util/stringUtils.ts
rename to apps/site/util/stringUtils.ts
diff --git a/apps/site/vercel.json b/apps/site/vercel.json
new file mode 100644
index 0000000000000..753b312a426f9
--- /dev/null
+++ b/apps/site/vercel.json
@@ -0,0 +1,4 @@
+{
+ "buildCommand": "turbo build",
+ "installCommand": "npm install --omit=dev --include-workspace-root"
+}
diff --git a/components/__design__/colors.stories.tsx b/components/__design__/colors.stories.tsx
deleted file mode 100644
index 9626a36dccc6a..0000000000000
--- a/components/__design__/colors.stories.tsx
+++ /dev/null
@@ -1,82 +0,0 @@
-import type { Meta as MetaObj, StoryObj } from '@storybook/react';
-
-export const Colors: StoryObj = {
- render: () => (
-
- ),
-};
-
-export default { title: 'Design System' } as MetaObj;
diff --git a/crowdin.yml b/crowdin.yml
index c9c6bad8b121b..a3e118ce652f0 100644
--- a/crowdin.yml
+++ b/crowdin.yml
@@ -4,34 +4,34 @@ pull_request_title: '[automated]: crowdin sync'
pull_request_labels:
- 'github_actions:pull-request'
files:
- - source: /pages/en/**/*.md
- translation: /pages/%two_letters_code%/**/%original_file_name%
+ - source: /apps/site/pages/en/**/*.md
+ translation: /apps/site/pages/%two_letters_code%/**/%original_file_name%
content_segmentation: 0
ignore:
- - /pages/en/blog/**/*.md
- - /pages/en/learn/**/*.md
- - /pages/en/download/index.md
- - /pages/en/download/current.md
+ - /apps/site/pages/en/blog/**/*.md
+ - /apps/site/pages/en/learn/**/*.md
+ - /apps/site/pages/en/download/index.md
+ - /apps/site/pages/en/download/current.md
languages_mapping:
two_letters_code:
es-ES: es
pt-BR: pt-br
zh-CN: zh-cn
zh-TW: zh-tw
- - source: /pages/en/**/*.mdx
- translation: /pages/%two_letters_code%/**/%original_file_name%
+ - source: /apps/site/pages/en/**/*.mdx
+ translation: /apps/site/pages/%two_letters_code%/**/%original_file_name%
content_segmentation: 0
ignore:
- - /pages/en/blog/**/*.mdx
- - /pages/en/learn/**/*.mdx
+ - /apps/site/pages/en/blog/**/*.mdx
+ - /apps/site/pages/en/learn/**/*.mdx
languages_mapping:
two_letters_code:
es-ES: es
pt-BR: pt-br
zh-CN: zh-cn
zh-TW: zh-tw
- - source: /i18n/locales/en.json
- translation: /i18n/locales/%two_letters_code%.json
+ - source: /apps/site/i18n/locales/en.json
+ translation: /apps/site/i18n/locales/%two_letters_code%.json
languages_mapping:
two_letters_code:
es-ES: es
diff --git a/global.ts b/global.ts
deleted file mode 100644
index 58a0dbb28cd11..0000000000000
--- a/global.ts
+++ /dev/null
@@ -1,7 +0,0 @@
-import type { clientMdxComponents } from '@/next.mdx.use.client.mjs';
-import type { mdxComponents } from '@/next.mdx.use.mjs';
-
-declare global {
- type MDXProvidedComponents = typeof mdxComponents &
- typeof clientMdxComponents;
-}
diff --git a/package-lock.json b/package-lock.json
index 0abe81cf2fd21..862c33dd0c777 100644
--- a/package-lock.json
+++ b/package-lock.json
@@ -4,6 +4,28 @@
"requires": true,
"packages": {
"": {
+ "name": "@nodejs/website",
+ "license": "MIT",
+ "workspaces": [
+ "apps/*"
+ ],
+ "dependencies": {
+ "husky": "9.0.11",
+ "lint-staged": "15.2.5",
+ "turbo": "2.0.3"
+ },
+ "devDependencies": {
+ "commitizen": "4.3.0",
+ "cz-conventional-changelog": "3.3.0",
+ "prettier": "3.3.0",
+ "prettier-plugin-tailwindcss": "0.6.1",
+ "typescript": "~5.4.2"
+ },
+ "engines": {
+ "node": "v20"
+ }
+ },
+ "apps/site": {
"name": "@nodejs/website",
"license": "MIT",
"dependencies": {
@@ -37,8 +59,6 @@
"github-slugger": "~2.0.0",
"glob": "~10.4.1",
"gray-matter": "~4.0.3",
- "husky": "9.0.11",
- "lint-staged": "15.2.5",
"next": "~14.2.4",
"next-intl": "~3.14.1",
"next-themes": "~0.3.0",
@@ -76,8 +96,6 @@
"@types/semver": "~7.5.8",
"@typescript-eslint/eslint-plugin": "7.11.0",
"@typescript-eslint/parser": "7.11.0",
- "commitizen": "4.3.0",
- "cz-conventional-changelog": "3.3.0",
"eslint": "8.57.0",
"eslint-config-next": "~14.2.3",
"eslint-config-prettier": "9.1.0",
@@ -88,8 +106,6 @@
"jest": "29.7.0",
"jest-environment-jsdom": "29.7.0",
"jest-junit": "16.0.0",
- "prettier": "3.3.0",
- "prettier-plugin-tailwindcss": "0.6.1",
"remark-frontmatter": "5.0.0",
"remark-preset-lint-node": "5.0.2",
"storybook": "~8.1.5",
@@ -97,7 +113,6 @@
"stylelint-config-standard": "36.0.0",
"stylelint-order": "6.0.4",
"stylelint-selector-bem-pattern": "4.0.0",
- "turbo": "2.0.3",
"user-agent-data-types": "0.4.2"
},
"engines": {
@@ -2597,16 +2612,6 @@
"url": "https://github.com/sponsors/wooorm"
}
},
- "node_modules/@emnapi/runtime": {
- "version": "1.2.0",
- "resolved": "https://registry.npmjs.org/@emnapi/runtime/-/runtime-1.2.0.tgz",
- "integrity": "sha512-bV21/9LQmcQeCPEg3BDFtvwL6cwiTMksYNWQQ4KOxCZikEGalWtenoZ0wCiukJINlGCIi2KXx01g4FoH/LxpzQ==",
- "dev": true,
- "optional": true,
- "dependencies": {
- "tslib": "^2.4.0"
- }
- },
"node_modules/@emotion/use-insertion-effect-with-fallbacks": {
"version": "1.0.1",
"resolved": "https://registry.npmjs.org/@emotion/use-insertion-effect-with-fallbacks/-/use-insertion-effect-with-fallbacks-1.0.1.tgz",
@@ -2616,70 +2621,6 @@
"react": ">=16.8.0"
}
},
- "node_modules/@esbuild/aix-ppc64": {
- "version": "0.20.2",
- "resolved": "https://registry.npmjs.org/@esbuild/aix-ppc64/-/aix-ppc64-0.20.2.tgz",
- "integrity": "sha512-D+EBOJHXdNZcLJRBkhENNG8Wji2kgc9AZ9KiPr1JuZjsNtyHzrsfLRrY0tk2H2aoFu6RANO1y1iPPUCDYWkb5g==",
- "cpu": [
- "ppc64"
- ],
- "dev": true,
- "optional": true,
- "os": [
- "aix"
- ],
- "engines": {
- "node": ">=12"
- }
- },
- "node_modules/@esbuild/android-arm": {
- "version": "0.20.2",
- "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.20.2.tgz",
- "integrity": "sha512-t98Ra6pw2VaDhqNWO2Oph2LXbz/EJcnLmKLGBJwEwXX/JAN83Fym1rU8l0JUWK6HkIbWONCSSatf4sf2NBRx/w==",
- "cpu": [
- "arm"
- ],
- "dev": true,
- "optional": true,
- "os": [
- "android"
- ],
- "engines": {
- "node": ">=12"
- }
- },
- "node_modules/@esbuild/android-arm64": {
- "version": "0.20.2",
- "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.20.2.tgz",
- "integrity": "sha512-mRzjLacRtl/tWU0SvD8lUEwb61yP9cqQo6noDZP/O8VkwafSYwZ4yWy24kan8jE/IMERpYncRt2dw438LP3Xmg==",
- "cpu": [
- "arm64"
- ],
- "dev": true,
- "optional": true,
- "os": [
- "android"
- ],
- "engines": {
- "node": ">=12"
- }
- },
- "node_modules/@esbuild/android-x64": {
- "version": "0.20.2",
- "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.20.2.tgz",
- "integrity": "sha512-btzExgV+/lMGDDa194CcUQm53ncxzeBrWJcncOBxuC6ndBkKxnHdFJn86mCIgTELsooUmwUm9FkhSp5HYu00Rg==",
- "cpu": [
- "x64"
- ],
- "dev": true,
- "optional": true,
- "os": [
- "android"
- ],
- "engines": {
- "node": ">=12"
- }
- },
"node_modules/@esbuild/darwin-arm64": {
"version": "0.20.2",
"resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.20.2.tgz",
@@ -2696,419 +2637,131 @@
"node": ">=12"
}
},
- "node_modules/@esbuild/darwin-x64": {
- "version": "0.20.2",
- "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.20.2.tgz",
- "integrity": "sha512-tBcXp9KNphnNH0dfhv8KYkZhjc+H3XBkF5DKtswJblV7KlT9EI2+jeA8DgBjp908WEuYll6pF+UStUCfEpdysA==",
- "cpu": [
- "x64"
- ],
+ "node_modules/@eslint-community/eslint-utils": {
+ "version": "4.4.0",
+ "resolved": "https://registry.npmjs.org/@eslint-community/eslint-utils/-/eslint-utils-4.4.0.tgz",
+ "integrity": "sha512-1/sA4dwrzBAyeUoQ6oxahHKmrZvsnLCg4RfxW3ZFGGmQkSNQPFNLV9CUEFQP1x9EYXHTo5p6xdhZM1Ne9p/AfA==",
"dev": true,
- "optional": true,
- "os": [
- "darwin"
- ],
+ "dependencies": {
+ "eslint-visitor-keys": "^3.3.0"
+ },
"engines": {
- "node": ">=12"
+ "node": "^12.22.0 || ^14.17.0 || >=16.0.0"
+ },
+ "peerDependencies": {
+ "eslint": "^6.0.0 || ^7.0.0 || >=8.0.0"
}
},
- "node_modules/@esbuild/freebsd-arm64": {
- "version": "0.20.2",
- "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.20.2.tgz",
- "integrity": "sha512-d3qI41G4SuLiCGCFGUrKsSeTXyWG6yem1KcGZVS+3FYlYhtNoNgYrWcvkOoaqMhwXSMrZRl69ArHsGJ9mYdbbw==",
- "cpu": [
- "arm64"
- ],
+ "node_modules/@eslint-community/regexpp": {
+ "version": "4.10.0",
+ "resolved": "https://registry.npmjs.org/@eslint-community/regexpp/-/regexpp-4.10.0.tgz",
+ "integrity": "sha512-Cu96Sd2By9mCNTx2iyKOmq10v22jUVQv0lQnlGNy16oE9589yE+QADPbrMGCkA51cKZSg3Pu/aTJVTGfL/qjUA==",
"dev": true,
- "optional": true,
- "os": [
- "freebsd"
- ],
"engines": {
- "node": ">=12"
+ "node": "^12.0.0 || ^14.0.0 || >=16.0.0"
}
},
- "node_modules/@esbuild/freebsd-x64": {
- "version": "0.20.2",
- "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.20.2.tgz",
- "integrity": "sha512-d+DipyvHRuqEeM5zDivKV1KuXn9WeRX6vqSqIDgwIfPQtwMP4jaDsQsDncjTDDsExT4lR/91OLjRo8bmC1e+Cw==",
- "cpu": [
- "x64"
- ],
+ "node_modules/@eslint/eslintrc": {
+ "version": "2.1.4",
+ "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-2.1.4.tgz",
+ "integrity": "sha512-269Z39MS6wVJtsoUl10L60WdkhJVdPG24Q4eZTH3nnF6lpvSShEK3wQjDX9JRWAUPvPh7COouPpU9IrqaZFvtQ==",
"dev": true,
- "optional": true,
- "os": [
- "freebsd"
- ],
+ "dependencies": {
+ "ajv": "^6.12.4",
+ "debug": "^4.3.2",
+ "espree": "^9.6.0",
+ "globals": "^13.19.0",
+ "ignore": "^5.2.0",
+ "import-fresh": "^3.2.1",
+ "js-yaml": "^4.1.0",
+ "minimatch": "^3.1.2",
+ "strip-json-comments": "^3.1.1"
+ },
"engines": {
- "node": ">=12"
+ "node": "^12.22.0 || ^14.17.0 || >=16.0.0"
+ },
+ "funding": {
+ "url": "https://opencollective.com/eslint"
}
},
- "node_modules/@esbuild/linux-arm": {
- "version": "0.20.2",
- "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.20.2.tgz",
- "integrity": "sha512-VhLPeR8HTMPccbuWWcEUD1Az68TqaTYyj6nfE4QByZIQEQVWBB8vup8PpR7y1QHL3CpcF6xd5WVBU/+SBEvGTg==",
- "cpu": [
- "arm"
- ],
+ "node_modules/@eslint/eslintrc/node_modules/brace-expansion": {
+ "version": "1.1.11",
+ "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz",
+ "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==",
"dev": true,
- "optional": true,
- "os": [
- "linux"
- ],
- "engines": {
- "node": ">=12"
+ "dependencies": {
+ "balanced-match": "^1.0.0",
+ "concat-map": "0.0.1"
}
},
- "node_modules/@esbuild/linux-arm64": {
- "version": "0.20.2",
- "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.20.2.tgz",
- "integrity": "sha512-9pb6rBjGvTFNira2FLIWqDk/uaf42sSyLE8j1rnUpuzsODBq7FvpwHYZxQ/It/8b+QOS1RYfqgGFNLRI+qlq2A==",
- "cpu": [
- "arm64"
- ],
+ "node_modules/@eslint/eslintrc/node_modules/globals": {
+ "version": "13.24.0",
+ "resolved": "https://registry.npmjs.org/globals/-/globals-13.24.0.tgz",
+ "integrity": "sha512-AhO5QUcj8llrbG09iWhPU2B204J1xnPeL8kQmVorSsy+Sjj1sk8gIyh6cUocGmH4L0UuhAJy+hJMRA4mgA4mFQ==",
"dev": true,
- "optional": true,
- "os": [
- "linux"
- ],
+ "dependencies": {
+ "type-fest": "^0.20.2"
+ },
"engines": {
- "node": ">=12"
+ "node": ">=8"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
}
},
- "node_modules/@esbuild/linux-ia32": {
- "version": "0.20.2",
- "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.20.2.tgz",
- "integrity": "sha512-o10utieEkNPFDZFQm9CoP7Tvb33UutoJqg3qKf1PWVeeJhJw0Q347PxMvBgVVFgouYLGIhFYG0UGdBumROyiig==",
- "cpu": [
- "ia32"
- ],
+ "node_modules/@eslint/eslintrc/node_modules/minimatch": {
+ "version": "3.1.2",
+ "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz",
+ "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==",
"dev": true,
- "optional": true,
- "os": [
- "linux"
- ],
+ "dependencies": {
+ "brace-expansion": "^1.1.7"
+ },
"engines": {
- "node": ">=12"
+ "node": "*"
}
},
- "node_modules/@esbuild/linux-loong64": {
+ "node_modules/@eslint/eslintrc/node_modules/type-fest": {
"version": "0.20.2",
- "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.20.2.tgz",
- "integrity": "sha512-PR7sp6R/UC4CFVomVINKJ80pMFlfDfMQMYynX7t1tNTeivQ6XdX5r2XovMmha/VjR1YN/HgHWsVcTRIMkymrgQ==",
- "cpu": [
- "loong64"
- ],
+ "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz",
+ "integrity": "sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==",
"dev": true,
- "optional": true,
- "os": [
- "linux"
- ],
"engines": {
- "node": ">=12"
+ "node": ">=10"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
}
},
- "node_modules/@esbuild/linux-mips64el": {
- "version": "0.20.2",
- "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.20.2.tgz",
- "integrity": "sha512-4BlTqeutE/KnOiTG5Y6Sb/Hw6hsBOZapOVF6njAESHInhlQAghVVZL1ZpIctBOoTFbQyGW+LsVYZ8lSSB3wkjA==",
- "cpu": [
- "mips64el"
- ],
+ "node_modules/@eslint/js": {
+ "version": "8.57.0",
+ "resolved": "https://registry.npmjs.org/@eslint/js/-/js-8.57.0.tgz",
+ "integrity": "sha512-Ys+3g2TaW7gADOJzPt83SJtCDhMjndcDMFVQ/Tj9iA1BfJzFKD9mAUXT3OenpuPHbI6P/myECxRJrofUsDx/5g==",
"dev": true,
- "optional": true,
- "os": [
- "linux"
- ],
"engines": {
- "node": ">=12"
+ "node": "^12.22.0 || ^14.17.0 || >=16.0.0"
}
},
- "node_modules/@esbuild/linux-ppc64": {
- "version": "0.20.2",
- "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.20.2.tgz",
- "integrity": "sha512-rD3KsaDprDcfajSKdn25ooz5J5/fWBylaaXkuotBDGnMnDP1Uv5DLAN/45qfnf3JDYyJv/ytGHQaziHUdyzaAg==",
- "cpu": [
- "ppc64"
- ],
- "dev": true,
- "optional": true,
- "os": [
- "linux"
- ],
+ "node_modules/@fal-works/esbuild-plugin-global-externals": {
+ "version": "2.1.2",
+ "resolved": "https://registry.npmjs.org/@fal-works/esbuild-plugin-global-externals/-/esbuild-plugin-global-externals-2.1.2.tgz",
+ "integrity": "sha512-cEee/Z+I12mZcFJshKcCqC8tuX5hG3s+d+9nZ3LabqKF1vKdF41B92pJVCBggjAGORAeOzyyDDKrZwIkLffeOQ==",
+ "dev": true
+ },
+ "node_modules/@fastify/busboy": {
+ "version": "2.1.1",
+ "resolved": "https://registry.npmjs.org/@fastify/busboy/-/busboy-2.1.1.tgz",
+ "integrity": "sha512-vBZP4NlzfOlerQTnba4aqZoMhE/a9HY7HRqoOPaETQcSQuWEIyZMHGfVu6w9wGtGK5fED5qRs2DteVCjOH60sA==",
"engines": {
- "node": ">=12"
+ "node": ">=14"
}
},
- "node_modules/@esbuild/linux-riscv64": {
- "version": "0.20.2",
- "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.20.2.tgz",
- "integrity": "sha512-snwmBKacKmwTMmhLlz/3aH1Q9T8v45bKYGE3j26TsaOVtjIag4wLfWSiZykXzXuE1kbCE+zJRmwp+ZbIHinnVg==",
- "cpu": [
- "riscv64"
- ],
- "dev": true,
- "optional": true,
- "os": [
- "linux"
- ],
- "engines": {
- "node": ">=12"
- }
- },
- "node_modules/@esbuild/linux-s390x": {
- "version": "0.20.2",
- "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.20.2.tgz",
- "integrity": "sha512-wcWISOobRWNm3cezm5HOZcYz1sKoHLd8VL1dl309DiixxVFoFe/o8HnwuIwn6sXre88Nwj+VwZUvJf4AFxkyrQ==",
- "cpu": [
- "s390x"
- ],
- "dev": true,
- "optional": true,
- "os": [
- "linux"
- ],
- "engines": {
- "node": ">=12"
- }
- },
- "node_modules/@esbuild/linux-x64": {
- "version": "0.20.2",
- "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.20.2.tgz",
- "integrity": "sha512-1MdwI6OOTsfQfek8sLwgyjOXAu+wKhLEoaOLTjbijk6E2WONYpH9ZU2mNtR+lZ2B4uwr+usqGuVfFT9tMtGvGw==",
- "cpu": [
- "x64"
- ],
- "dev": true,
- "optional": true,
- "os": [
- "linux"
- ],
- "engines": {
- "node": ">=12"
- }
- },
- "node_modules/@esbuild/netbsd-x64": {
- "version": "0.20.2",
- "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.20.2.tgz",
- "integrity": "sha512-K8/DhBxcVQkzYc43yJXDSyjlFeHQJBiowJ0uVL6Tor3jGQfSGHNNJcWxNbOI8v5k82prYqzPuwkzHt3J1T1iZQ==",
- "cpu": [
- "x64"
- ],
- "dev": true,
- "optional": true,
- "os": [
- "netbsd"
- ],
- "engines": {
- "node": ">=12"
- }
- },
- "node_modules/@esbuild/openbsd-x64": {
- "version": "0.20.2",
- "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.20.2.tgz",
- "integrity": "sha512-eMpKlV0SThJmmJgiVyN9jTPJ2VBPquf6Kt/nAoo6DgHAoN57K15ZghiHaMvqjCye/uU4X5u3YSMgVBI1h3vKrQ==",
- "cpu": [
- "x64"
- ],
- "dev": true,
- "optional": true,
- "os": [
- "openbsd"
- ],
- "engines": {
- "node": ">=12"
- }
- },
- "node_modules/@esbuild/sunos-x64": {
- "version": "0.20.2",
- "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.20.2.tgz",
- "integrity": "sha512-2UyFtRC6cXLyejf/YEld4Hajo7UHILetzE1vsRcGL3earZEW77JxrFjH4Ez2qaTiEfMgAXxfAZCm1fvM/G/o8w==",
- "cpu": [
- "x64"
- ],
- "dev": true,
- "optional": true,
- "os": [
- "sunos"
- ],
- "engines": {
- "node": ">=12"
- }
- },
- "node_modules/@esbuild/win32-arm64": {
- "version": "0.20.2",
- "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.20.2.tgz",
- "integrity": "sha512-GRibxoawM9ZCnDxnP3usoUDO9vUkpAxIIZ6GQI+IlVmr5kP3zUq+l17xELTHMWTWzjxa2guPNyrpq1GWmPvcGQ==",
- "cpu": [
- "arm64"
- ],
- "dev": true,
- "optional": true,
- "os": [
- "win32"
- ],
- "engines": {
- "node": ">=12"
- }
- },
- "node_modules/@esbuild/win32-ia32": {
- "version": "0.20.2",
- "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.20.2.tgz",
- "integrity": "sha512-HfLOfn9YWmkSKRQqovpnITazdtquEW8/SoHW7pWpuEeguaZI4QnCRW6b+oZTztdBnZOS2hqJ6im/D5cPzBTTlQ==",
- "cpu": [
- "ia32"
- ],
- "dev": true,
- "optional": true,
- "os": [
- "win32"
- ],
- "engines": {
- "node": ">=12"
- }
- },
- "node_modules/@esbuild/win32-x64": {
- "version": "0.20.2",
- "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.20.2.tgz",
- "integrity": "sha512-N49X4lJX27+l9jbLKSqZ6bKNjzQvHaT8IIFUy+YIqmXQdjYCToGWwOItDrfby14c78aDd5NHQl29xingXfCdLQ==",
- "cpu": [
- "x64"
- ],
- "dev": true,
- "optional": true,
- "os": [
- "win32"
- ],
- "engines": {
- "node": ">=12"
- }
- },
- "node_modules/@eslint-community/eslint-utils": {
- "version": "4.4.0",
- "resolved": "https://registry.npmjs.org/@eslint-community/eslint-utils/-/eslint-utils-4.4.0.tgz",
- "integrity": "sha512-1/sA4dwrzBAyeUoQ6oxahHKmrZvsnLCg4RfxW3ZFGGmQkSNQPFNLV9CUEFQP1x9EYXHTo5p6xdhZM1Ne9p/AfA==",
- "dev": true,
- "dependencies": {
- "eslint-visitor-keys": "^3.3.0"
- },
- "engines": {
- "node": "^12.22.0 || ^14.17.0 || >=16.0.0"
- },
- "peerDependencies": {
- "eslint": "^6.0.0 || ^7.0.0 || >=8.0.0"
- }
- },
- "node_modules/@eslint-community/regexpp": {
- "version": "4.10.0",
- "resolved": "https://registry.npmjs.org/@eslint-community/regexpp/-/regexpp-4.10.0.tgz",
- "integrity": "sha512-Cu96Sd2By9mCNTx2iyKOmq10v22jUVQv0lQnlGNy16oE9589yE+QADPbrMGCkA51cKZSg3Pu/aTJVTGfL/qjUA==",
- "dev": true,
- "engines": {
- "node": "^12.0.0 || ^14.0.0 || >=16.0.0"
- }
- },
- "node_modules/@eslint/eslintrc": {
- "version": "2.1.4",
- "resolved": "https://registry.npmjs.org/@eslint/eslintrc/-/eslintrc-2.1.4.tgz",
- "integrity": "sha512-269Z39MS6wVJtsoUl10L60WdkhJVdPG24Q4eZTH3nnF6lpvSShEK3wQjDX9JRWAUPvPh7COouPpU9IrqaZFvtQ==",
- "dev": true,
- "dependencies": {
- "ajv": "^6.12.4",
- "debug": "^4.3.2",
- "espree": "^9.6.0",
- "globals": "^13.19.0",
- "ignore": "^5.2.0",
- "import-fresh": "^3.2.1",
- "js-yaml": "^4.1.0",
- "minimatch": "^3.1.2",
- "strip-json-comments": "^3.1.1"
- },
- "engines": {
- "node": "^12.22.0 || ^14.17.0 || >=16.0.0"
- },
- "funding": {
- "url": "https://opencollective.com/eslint"
- }
- },
- "node_modules/@eslint/eslintrc/node_modules/brace-expansion": {
- "version": "1.1.11",
- "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz",
- "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==",
- "dev": true,
- "dependencies": {
- "balanced-match": "^1.0.0",
- "concat-map": "0.0.1"
- }
- },
- "node_modules/@eslint/eslintrc/node_modules/globals": {
- "version": "13.24.0",
- "resolved": "https://registry.npmjs.org/globals/-/globals-13.24.0.tgz",
- "integrity": "sha512-AhO5QUcj8llrbG09iWhPU2B204J1xnPeL8kQmVorSsy+Sjj1sk8gIyh6cUocGmH4L0UuhAJy+hJMRA4mgA4mFQ==",
- "dev": true,
- "dependencies": {
- "type-fest": "^0.20.2"
- },
- "engines": {
- "node": ">=8"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
- "node_modules/@eslint/eslintrc/node_modules/minimatch": {
- "version": "3.1.2",
- "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz",
- "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==",
- "dev": true,
- "dependencies": {
- "brace-expansion": "^1.1.7"
- },
- "engines": {
- "node": "*"
- }
- },
- "node_modules/@eslint/eslintrc/node_modules/type-fest": {
- "version": "0.20.2",
- "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.20.2.tgz",
- "integrity": "sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==",
- "dev": true,
- "engines": {
- "node": ">=10"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
- "node_modules/@eslint/js": {
- "version": "8.57.0",
- "resolved": "https://registry.npmjs.org/@eslint/js/-/js-8.57.0.tgz",
- "integrity": "sha512-Ys+3g2TaW7gADOJzPt83SJtCDhMjndcDMFVQ/Tj9iA1BfJzFKD9mAUXT3OenpuPHbI6P/myECxRJrofUsDx/5g==",
- "dev": true,
- "engines": {
- "node": "^12.22.0 || ^14.17.0 || >=16.0.0"
- }
- },
- "node_modules/@fal-works/esbuild-plugin-global-externals": {
- "version": "2.1.2",
- "resolved": "https://registry.npmjs.org/@fal-works/esbuild-plugin-global-externals/-/esbuild-plugin-global-externals-2.1.2.tgz",
- "integrity": "sha512-cEee/Z+I12mZcFJshKcCqC8tuX5hG3s+d+9nZ3LabqKF1vKdF41B92pJVCBggjAGORAeOzyyDDKrZwIkLffeOQ==",
- "dev": true
- },
- "node_modules/@fastify/busboy": {
- "version": "2.1.1",
- "resolved": "https://registry.npmjs.org/@fastify/busboy/-/busboy-2.1.1.tgz",
- "integrity": "sha512-vBZP4NlzfOlerQTnba4aqZoMhE/a9HY7HRqoOPaETQcSQuWEIyZMHGfVu6w9wGtGK5fED5qRs2DteVCjOH60sA==",
- "engines": {
- "node": ">=14"
- }
- },
- "node_modules/@floating-ui/core": {
- "version": "1.6.2",
- "resolved": "https://registry.npmjs.org/@floating-ui/core/-/core-1.6.2.tgz",
- "integrity": "sha512-+2XpQV9LLZeanU4ZevzRnGFg2neDeKHgFLjP6YLW+tly0IvrhqT4u8enLGjLH3qeh85g19xY5rsAusfwTdn5lg==",
- "dependencies": {
- "@floating-ui/utils": "^0.2.0"
+ "node_modules/@floating-ui/core": {
+ "version": "1.6.2",
+ "resolved": "https://registry.npmjs.org/@floating-ui/core/-/core-1.6.2.tgz",
+ "integrity": "sha512-+2XpQV9LLZeanU4ZevzRnGFg2neDeKHgFLjP6YLW+tly0IvrhqT4u8enLGjLH3qeh85g19xY5rsAusfwTdn5lg==",
+ "dependencies": {
+ "@floating-ui/utils": "^0.2.0"
}
},
"node_modules/@floating-ui/dom": {
@@ -3217,494 +2870,89 @@
},
"node_modules/@formatjs/intl-localematcher": {
"version": "0.2.32",
- "resolved": "https://registry.npmjs.org/@formatjs/intl-localematcher/-/intl-localematcher-0.2.32.tgz",
- "integrity": "sha512-k/MEBstff4sttohyEpXxCmC3MqbUn9VvHGlZ8fauLzkbwXmVrEeyzS+4uhrvAk9DWU9/7otYWxyDox4nT/KVLQ==",
- "dependencies": {
- "tslib": "^2.4.0"
- }
- },
- "node_modules/@heroicons/react": {
- "version": "2.1.3",
- "resolved": "https://registry.npmjs.org/@heroicons/react/-/react-2.1.3.tgz",
- "integrity": "sha512-fEcPfo4oN345SoqdlCDdSa4ivjaKbk0jTd+oubcgNxnNgAfzysfwWfQUr+51wigiWHQQRiZNd1Ao0M5Y3M2EGg==",
- "peerDependencies": {
- "react": ">= 16"
- }
- },
- "node_modules/@humanwhocodes/config-array": {
- "version": "0.11.14",
- "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.11.14.tgz",
- "integrity": "sha512-3T8LkOmg45BV5FICb15QQMsyUSWrQ8AygVfC7ZG32zOalnqrilm018ZVCw0eapXux8FtA33q8PSRSstjee3jSg==",
- "dev": true,
- "dependencies": {
- "@humanwhocodes/object-schema": "^2.0.2",
- "debug": "^4.3.1",
- "minimatch": "^3.0.5"
- },
- "engines": {
- "node": ">=10.10.0"
- }
- },
- "node_modules/@humanwhocodes/config-array/node_modules/brace-expansion": {
- "version": "1.1.11",
- "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz",
- "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==",
- "dev": true,
- "dependencies": {
- "balanced-match": "^1.0.0",
- "concat-map": "0.0.1"
- }
- },
- "node_modules/@humanwhocodes/config-array/node_modules/minimatch": {
- "version": "3.1.2",
- "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz",
- "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==",
- "dev": true,
- "dependencies": {
- "brace-expansion": "^1.1.7"
- },
- "engines": {
- "node": "*"
- }
- },
- "node_modules/@humanwhocodes/module-importer": {
- "version": "1.0.1",
- "resolved": "https://registry.npmjs.org/@humanwhocodes/module-importer/-/module-importer-1.0.1.tgz",
- "integrity": "sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA==",
- "dev": true,
- "engines": {
- "node": ">=12.22"
- },
- "funding": {
- "type": "github",
- "url": "https://github.com/sponsors/nzakas"
- }
- },
- "node_modules/@humanwhocodes/object-schema": {
- "version": "2.0.3",
- "resolved": "https://registry.npmjs.org/@humanwhocodes/object-schema/-/object-schema-2.0.3.tgz",
- "integrity": "sha512-93zYdMES/c1D69yZiKDBj0V24vqNzB/koF26KPaagAfd3P/4gUlh3Dys5ogAK+Exi9QyzlD8x/08Zt7wIKcDcA==",
- "dev": true
- },
- "node_modules/@img/sharp-darwin-arm64": {
- "version": "0.33.4",
- "resolved": "https://registry.npmjs.org/@img/sharp-darwin-arm64/-/sharp-darwin-arm64-0.33.4.tgz",
- "integrity": "sha512-p0suNqXufJs9t3RqLBO6vvrgr5OhgbWp76s5gTRvdmxmuv9E1rcaqGUsl3l4mKVmXPkTkTErXediAui4x+8PSA==",
- "cpu": [
- "arm64"
- ],
- "dev": true,
- "optional": true,
- "os": [
- "darwin"
- ],
- "engines": {
- "glibc": ">=2.26",
- "node": "^18.17.0 || ^20.3.0 || >=21.0.0",
- "npm": ">=9.6.5",
- "pnpm": ">=7.1.0",
- "yarn": ">=3.2.0"
- },
- "funding": {
- "url": "https://opencollective.com/libvips"
- },
- "optionalDependencies": {
- "@img/sharp-libvips-darwin-arm64": "1.0.2"
- }
- },
- "node_modules/@img/sharp-darwin-x64": {
- "version": "0.33.4",
- "resolved": "https://registry.npmjs.org/@img/sharp-darwin-x64/-/sharp-darwin-x64-0.33.4.tgz",
- "integrity": "sha512-0l7yRObwtTi82Z6ebVI2PnHT8EB2NxBgpK2MiKJZJ7cz32R4lxd001ecMhzzsZig3Yv9oclvqqdV93jo9hy+Dw==",
- "cpu": [
- "x64"
- ],
- "dev": true,
- "optional": true,
- "os": [
- "darwin"
- ],
- "engines": {
- "glibc": ">=2.26",
- "node": "^18.17.0 || ^20.3.0 || >=21.0.0",
- "npm": ">=9.6.5",
- "pnpm": ">=7.1.0",
- "yarn": ">=3.2.0"
- },
- "funding": {
- "url": "https://opencollective.com/libvips"
- },
- "optionalDependencies": {
- "@img/sharp-libvips-darwin-x64": "1.0.2"
- }
- },
- "node_modules/@img/sharp-libvips-darwin-arm64": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/@img/sharp-libvips-darwin-arm64/-/sharp-libvips-darwin-arm64-1.0.2.tgz",
- "integrity": "sha512-tcK/41Rq8IKlSaKRCCAuuY3lDJjQnYIW1UXU1kxcEKrfL8WR7N6+rzNoOxoQRJWTAECuKwgAHnPvqXGN8XfkHA==",
- "cpu": [
- "arm64"
- ],
- "dev": true,
- "optional": true,
- "os": [
- "darwin"
- ],
- "engines": {
- "macos": ">=11",
- "npm": ">=9.6.5",
- "pnpm": ">=7.1.0",
- "yarn": ">=3.2.0"
- },
- "funding": {
- "url": "https://opencollective.com/libvips"
- }
- },
- "node_modules/@img/sharp-libvips-darwin-x64": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/@img/sharp-libvips-darwin-x64/-/sharp-libvips-darwin-x64-1.0.2.tgz",
- "integrity": "sha512-Ofw+7oaWa0HiiMiKWqqaZbaYV3/UGL2wAPeLuJTx+9cXpCRdvQhCLG0IH8YGwM0yGWGLpsF4Su9vM1o6aer+Fw==",
- "cpu": [
- "x64"
- ],
- "dev": true,
- "optional": true,
- "os": [
- "darwin"
- ],
- "engines": {
- "macos": ">=10.13",
- "npm": ">=9.6.5",
- "pnpm": ">=7.1.0",
- "yarn": ">=3.2.0"
- },
- "funding": {
- "url": "https://opencollective.com/libvips"
- }
- },
- "node_modules/@img/sharp-libvips-linux-arm": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/@img/sharp-libvips-linux-arm/-/sharp-libvips-linux-arm-1.0.2.tgz",
- "integrity": "sha512-iLWCvrKgeFoglQxdEwzu1eQV04o8YeYGFXtfWU26Zr2wWT3q3MTzC+QTCO3ZQfWd3doKHT4Pm2kRmLbupT+sZw==",
- "cpu": [
- "arm"
- ],
- "dev": true,
- "optional": true,
- "os": [
- "linux"
- ],
- "engines": {
- "glibc": ">=2.28",
- "npm": ">=9.6.5",
- "pnpm": ">=7.1.0",
- "yarn": ">=3.2.0"
- },
- "funding": {
- "url": "https://opencollective.com/libvips"
- }
- },
- "node_modules/@img/sharp-libvips-linux-arm64": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/@img/sharp-libvips-linux-arm64/-/sharp-libvips-linux-arm64-1.0.2.tgz",
- "integrity": "sha512-x7kCt3N00ofFmmkkdshwj3vGPCnmiDh7Gwnd4nUwZln2YjqPxV1NlTyZOvoDWdKQVDL911487HOueBvrpflagw==",
- "cpu": [
- "arm64"
- ],
- "dev": true,
- "optional": true,
- "os": [
- "linux"
- ],
- "engines": {
- "glibc": ">=2.26",
- "npm": ">=9.6.5",
- "pnpm": ">=7.1.0",
- "yarn": ">=3.2.0"
- },
- "funding": {
- "url": "https://opencollective.com/libvips"
- }
- },
- "node_modules/@img/sharp-libvips-linux-s390x": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/@img/sharp-libvips-linux-s390x/-/sharp-libvips-linux-s390x-1.0.2.tgz",
- "integrity": "sha512-cmhQ1J4qVhfmS6szYW7RT+gLJq9dH2i4maq+qyXayUSn9/3iY2ZeWpbAgSpSVbV2E1JUL2Gg7pwnYQ1h8rQIog==",
- "cpu": [
- "s390x"
- ],
- "dev": true,
- "optional": true,
- "os": [
- "linux"
- ],
- "engines": {
- "glibc": ">=2.28",
- "npm": ">=9.6.5",
- "pnpm": ">=7.1.0",
- "yarn": ">=3.2.0"
- },
- "funding": {
- "url": "https://opencollective.com/libvips"
- }
- },
- "node_modules/@img/sharp-libvips-linux-x64": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/@img/sharp-libvips-linux-x64/-/sharp-libvips-linux-x64-1.0.2.tgz",
- "integrity": "sha512-E441q4Qdb+7yuyiADVi5J+44x8ctlrqn8XgkDTwr4qPJzWkaHwD489iZ4nGDgcuya4iMN3ULV6NwbhRZJ9Z7SQ==",
- "cpu": [
- "x64"
- ],
- "dev": true,
- "optional": true,
- "os": [
- "linux"
- ],
- "engines": {
- "glibc": ">=2.26",
- "npm": ">=9.6.5",
- "pnpm": ">=7.1.0",
- "yarn": ">=3.2.0"
- },
- "funding": {
- "url": "https://opencollective.com/libvips"
- }
- },
- "node_modules/@img/sharp-libvips-linuxmusl-arm64": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/@img/sharp-libvips-linuxmusl-arm64/-/sharp-libvips-linuxmusl-arm64-1.0.2.tgz",
- "integrity": "sha512-3CAkndNpYUrlDqkCM5qhksfE+qSIREVpyoeHIU6jd48SJZViAmznoQQLAv4hVXF7xyUB9zf+G++e2v1ABjCbEQ==",
- "cpu": [
- "arm64"
- ],
- "dev": true,
- "optional": true,
- "os": [
- "linux"
- ],
- "engines": {
- "musl": ">=1.2.2",
- "npm": ">=9.6.5",
- "pnpm": ">=7.1.0",
- "yarn": ">=3.2.0"
- },
- "funding": {
- "url": "https://opencollective.com/libvips"
- }
- },
- "node_modules/@img/sharp-libvips-linuxmusl-x64": {
- "version": "1.0.2",
- "resolved": "https://registry.npmjs.org/@img/sharp-libvips-linuxmusl-x64/-/sharp-libvips-linuxmusl-x64-1.0.2.tgz",
- "integrity": "sha512-VI94Q6khIHqHWNOh6LLdm9s2Ry4zdjWJwH56WoiJU7NTeDwyApdZZ8c+SADC8OH98KWNQXnE01UdJ9CSfZvwZw==",
- "cpu": [
- "x64"
- ],
- "dev": true,
- "optional": true,
- "os": [
- "linux"
- ],
- "engines": {
- "musl": ">=1.2.2",
- "npm": ">=9.6.5",
- "pnpm": ">=7.1.0",
- "yarn": ">=3.2.0"
- },
- "funding": {
- "url": "https://opencollective.com/libvips"
- }
- },
- "node_modules/@img/sharp-linux-arm": {
- "version": "0.33.4",
- "resolved": "https://registry.npmjs.org/@img/sharp-linux-arm/-/sharp-linux-arm-0.33.4.tgz",
- "integrity": "sha512-RUgBD1c0+gCYZGCCe6mMdTiOFS0Zc/XrN0fYd6hISIKcDUbAW5NtSQW9g/powkrXYm6Vzwd6y+fqmExDuCdHNQ==",
- "cpu": [
- "arm"
- ],
- "dev": true,
- "optional": true,
- "os": [
- "linux"
- ],
- "engines": {
- "glibc": ">=2.28",
- "node": "^18.17.0 || ^20.3.0 || >=21.0.0",
- "npm": ">=9.6.5",
- "pnpm": ">=7.1.0",
- "yarn": ">=3.2.0"
- },
- "funding": {
- "url": "https://opencollective.com/libvips"
- },
- "optionalDependencies": {
- "@img/sharp-libvips-linux-arm": "1.0.2"
- }
- },
- "node_modules/@img/sharp-linux-arm64": {
- "version": "0.33.4",
- "resolved": "https://registry.npmjs.org/@img/sharp-linux-arm64/-/sharp-linux-arm64-0.33.4.tgz",
- "integrity": "sha512-2800clwVg1ZQtxwSoTlHvtm9ObgAax7V6MTAB/hDT945Tfyy3hVkmiHpeLPCKYqYR1Gcmv1uDZ3a4OFwkdBL7Q==",
- "cpu": [
- "arm64"
- ],
- "dev": true,
- "optional": true,
- "os": [
- "linux"
- ],
- "engines": {
- "glibc": ">=2.26",
- "node": "^18.17.0 || ^20.3.0 || >=21.0.0",
- "npm": ">=9.6.5",
- "pnpm": ">=7.1.0",
- "yarn": ">=3.2.0"
- },
- "funding": {
- "url": "https://opencollective.com/libvips"
- },
- "optionalDependencies": {
- "@img/sharp-libvips-linux-arm64": "1.0.2"
- }
- },
- "node_modules/@img/sharp-linux-s390x": {
- "version": "0.33.4",
- "resolved": "https://registry.npmjs.org/@img/sharp-linux-s390x/-/sharp-linux-s390x-0.33.4.tgz",
- "integrity": "sha512-h3RAL3siQoyzSoH36tUeS0PDmb5wINKGYzcLB5C6DIiAn2F3udeFAum+gj8IbA/82+8RGCTn7XW8WTFnqag4tQ==",
- "cpu": [
- "s390x"
- ],
- "dev": true,
- "optional": true,
- "os": [
- "linux"
- ],
- "engines": {
- "glibc": ">=2.31",
- "node": "^18.17.0 || ^20.3.0 || >=21.0.0",
- "npm": ">=9.6.5",
- "pnpm": ">=7.1.0",
- "yarn": ">=3.2.0"
- },
- "funding": {
- "url": "https://opencollective.com/libvips"
- },
- "optionalDependencies": {
- "@img/sharp-libvips-linux-s390x": "1.0.2"
+ "resolved": "https://registry.npmjs.org/@formatjs/intl-localematcher/-/intl-localematcher-0.2.32.tgz",
+ "integrity": "sha512-k/MEBstff4sttohyEpXxCmC3MqbUn9VvHGlZ8fauLzkbwXmVrEeyzS+4uhrvAk9DWU9/7otYWxyDox4nT/KVLQ==",
+ "dependencies": {
+ "tslib": "^2.4.0"
}
},
- "node_modules/@img/sharp-linux-x64": {
- "version": "0.33.4",
- "resolved": "https://registry.npmjs.org/@img/sharp-linux-x64/-/sharp-linux-x64-0.33.4.tgz",
- "integrity": "sha512-GoR++s0XW9DGVi8SUGQ/U4AeIzLdNjHka6jidVwapQ/JebGVQIpi52OdyxCNVRE++n1FCLzjDovJNozif7w/Aw==",
- "cpu": [
- "x64"
- ],
- "dev": true,
- "optional": true,
- "os": [
- "linux"
- ],
- "engines": {
- "glibc": ">=2.26",
- "node": "^18.17.0 || ^20.3.0 || >=21.0.0",
- "npm": ">=9.6.5",
- "pnpm": ">=7.1.0",
- "yarn": ">=3.2.0"
- },
- "funding": {
- "url": "https://opencollective.com/libvips"
- },
- "optionalDependencies": {
- "@img/sharp-libvips-linux-x64": "1.0.2"
+ "node_modules/@heroicons/react": {
+ "version": "2.1.3",
+ "resolved": "https://registry.npmjs.org/@heroicons/react/-/react-2.1.3.tgz",
+ "integrity": "sha512-fEcPfo4oN345SoqdlCDdSa4ivjaKbk0jTd+oubcgNxnNgAfzysfwWfQUr+51wigiWHQQRiZNd1Ao0M5Y3M2EGg==",
+ "peerDependencies": {
+ "react": ">= 16"
}
},
- "node_modules/@img/sharp-linuxmusl-arm64": {
- "version": "0.33.4",
- "resolved": "https://registry.npmjs.org/@img/sharp-linuxmusl-arm64/-/sharp-linuxmusl-arm64-0.33.4.tgz",
- "integrity": "sha512-nhr1yC3BlVrKDTl6cO12gTpXMl4ITBUZieehFvMntlCXFzH2bvKG76tBL2Y/OqhupZt81pR7R+Q5YhJxW0rGgQ==",
- "cpu": [
- "arm64"
- ],
+ "node_modules/@humanwhocodes/config-array": {
+ "version": "0.11.14",
+ "resolved": "https://registry.npmjs.org/@humanwhocodes/config-array/-/config-array-0.11.14.tgz",
+ "integrity": "sha512-3T8LkOmg45BV5FICb15QQMsyUSWrQ8AygVfC7ZG32zOalnqrilm018ZVCw0eapXux8FtA33q8PSRSstjee3jSg==",
"dev": true,
- "optional": true,
- "os": [
- "linux"
- ],
- "engines": {
- "musl": ">=1.2.2",
- "node": "^18.17.0 || ^20.3.0 || >=21.0.0",
- "npm": ">=9.6.5",
- "pnpm": ">=7.1.0",
- "yarn": ">=3.2.0"
- },
- "funding": {
- "url": "https://opencollective.com/libvips"
+ "dependencies": {
+ "@humanwhocodes/object-schema": "^2.0.2",
+ "debug": "^4.3.1",
+ "minimatch": "^3.0.5"
},
- "optionalDependencies": {
- "@img/sharp-libvips-linuxmusl-arm64": "1.0.2"
+ "engines": {
+ "node": ">=10.10.0"
}
},
- "node_modules/@img/sharp-linuxmusl-x64": {
- "version": "0.33.4",
- "resolved": "https://registry.npmjs.org/@img/sharp-linuxmusl-x64/-/sharp-linuxmusl-x64-0.33.4.tgz",
- "integrity": "sha512-uCPTku0zwqDmZEOi4ILyGdmW76tH7dm8kKlOIV1XC5cLyJ71ENAAqarOHQh0RLfpIpbV5KOpXzdU6XkJtS0daw==",
- "cpu": [
- "x64"
- ],
+ "node_modules/@humanwhocodes/config-array/node_modules/brace-expansion": {
+ "version": "1.1.11",
+ "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz",
+ "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==",
"dev": true,
- "optional": true,
- "os": [
- "linux"
- ],
- "engines": {
- "musl": ">=1.2.2",
- "node": "^18.17.0 || ^20.3.0 || >=21.0.0",
- "npm": ">=9.6.5",
- "pnpm": ">=7.1.0",
- "yarn": ">=3.2.0"
- },
- "funding": {
- "url": "https://opencollective.com/libvips"
- },
- "optionalDependencies": {
- "@img/sharp-libvips-linuxmusl-x64": "1.0.2"
+ "dependencies": {
+ "balanced-match": "^1.0.0",
+ "concat-map": "0.0.1"
}
},
- "node_modules/@img/sharp-wasm32": {
- "version": "0.33.4",
- "resolved": "https://registry.npmjs.org/@img/sharp-wasm32/-/sharp-wasm32-0.33.4.tgz",
- "integrity": "sha512-Bmmauh4sXUsUqkleQahpdNXKvo+wa1V9KhT2pDA4VJGKwnKMJXiSTGphn0gnJrlooda0QxCtXc6RX1XAU6hMnQ==",
- "cpu": [
- "wasm32"
- ],
+ "node_modules/@humanwhocodes/config-array/node_modules/minimatch": {
+ "version": "3.1.2",
+ "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz",
+ "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==",
"dev": true,
- "optional": true,
"dependencies": {
- "@emnapi/runtime": "^1.1.1"
+ "brace-expansion": "^1.1.7"
},
"engines": {
- "node": "^18.17.0 || ^20.3.0 || >=21.0.0",
- "npm": ">=9.6.5",
- "pnpm": ">=7.1.0",
- "yarn": ">=3.2.0"
+ "node": "*"
+ }
+ },
+ "node_modules/@humanwhocodes/module-importer": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/@humanwhocodes/module-importer/-/module-importer-1.0.1.tgz",
+ "integrity": "sha512-bxveV4V8v5Yb4ncFTT3rPSgZBOpCkjfK0y4oVVVJwIuDVBRMDXrPyXRL988i5ap9m9bnyEEjWfm5WkBmtffLfA==",
+ "dev": true,
+ "engines": {
+ "node": ">=12.22"
},
"funding": {
- "url": "https://opencollective.com/libvips"
+ "type": "github",
+ "url": "https://github.com/sponsors/nzakas"
}
},
- "node_modules/@img/sharp-win32-ia32": {
+ "node_modules/@humanwhocodes/object-schema": {
+ "version": "2.0.3",
+ "resolved": "https://registry.npmjs.org/@humanwhocodes/object-schema/-/object-schema-2.0.3.tgz",
+ "integrity": "sha512-93zYdMES/c1D69yZiKDBj0V24vqNzB/koF26KPaagAfd3P/4gUlh3Dys5ogAK+Exi9QyzlD8x/08Zt7wIKcDcA==",
+ "dev": true
+ },
+ "node_modules/@img/sharp-darwin-arm64": {
"version": "0.33.4",
- "resolved": "https://registry.npmjs.org/@img/sharp-win32-ia32/-/sharp-win32-ia32-0.33.4.tgz",
- "integrity": "sha512-99SJ91XzUhYHbx7uhK3+9Lf7+LjwMGQZMDlO/E/YVJ7Nc3lyDFZPGhjwiYdctoH2BOzW9+TnfqcaMKt0jHLdqw==",
+ "resolved": "https://registry.npmjs.org/@img/sharp-darwin-arm64/-/sharp-darwin-arm64-0.33.4.tgz",
+ "integrity": "sha512-p0suNqXufJs9t3RqLBO6vvrgr5OhgbWp76s5gTRvdmxmuv9E1rcaqGUsl3l4mKVmXPkTkTErXediAui4x+8PSA==",
"cpu": [
- "ia32"
+ "arm64"
],
"dev": true,
"optional": true,
"os": [
- "win32"
+ "darwin"
],
"engines": {
+ "glibc": ">=2.26",
"node": "^18.17.0 || ^20.3.0 || >=21.0.0",
"npm": ">=9.6.5",
"pnpm": ">=7.1.0",
@@ -3712,22 +2960,25 @@
},
"funding": {
"url": "https://opencollective.com/libvips"
+ },
+ "optionalDependencies": {
+ "@img/sharp-libvips-darwin-arm64": "1.0.2"
}
},
- "node_modules/@img/sharp-win32-x64": {
- "version": "0.33.4",
- "resolved": "https://registry.npmjs.org/@img/sharp-win32-x64/-/sharp-win32-x64-0.33.4.tgz",
- "integrity": "sha512-3QLocdTRVIrFNye5YocZl+KKpYKP+fksi1QhmOArgx7GyhIbQp/WrJRu176jm8IxromS7RIkzMiMINVdBtC8Aw==",
+ "node_modules/@img/sharp-libvips-darwin-arm64": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/@img/sharp-libvips-darwin-arm64/-/sharp-libvips-darwin-arm64-1.0.2.tgz",
+ "integrity": "sha512-tcK/41Rq8IKlSaKRCCAuuY3lDJjQnYIW1UXU1kxcEKrfL8WR7N6+rzNoOxoQRJWTAECuKwgAHnPvqXGN8XfkHA==",
"cpu": [
- "x64"
+ "arm64"
],
"dev": true,
"optional": true,
"os": [
- "win32"
+ "darwin"
],
"engines": {
- "node": "^18.17.0 || ^20.3.0 || >=21.0.0",
+ "macos": ">=11",
"npm": ">=9.6.5",
"pnpm": ">=7.1.0",
"yarn": ">=3.2.0"
@@ -4606,6 +3857,10 @@
"url": "https://paulmillr.com/funding/"
}
},
+ "node_modules/@nodejs/website": {
+ "resolved": "apps/site",
+ "link": true
+ },
"node_modules/@nodelib/fs.scandir": {
"version": "2.1.5",
"resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz",
@@ -6319,102 +5574,6 @@
"node": ">=10"
}
},
- "node_modules/@sentry/cli-linux-arm": {
- "version": "2.32.1",
- "resolved": "https://registry.npmjs.org/@sentry/cli-linux-arm/-/cli-linux-arm-2.32.1.tgz",
- "integrity": "sha512-m0lHkn+o4YKBq8KptGZvpT64FAwSl9mYvHZO9/ChnEGIJ/WyJwiN1X1r9JHVaW4iT5lD0Y5FAyq3JLkk0m0XHg==",
- "cpu": [
- "arm"
- ],
- "optional": true,
- "os": [
- "linux",
- "freebsd"
- ],
- "engines": {
- "node": ">=10"
- }
- },
- "node_modules/@sentry/cli-linux-arm64": {
- "version": "2.32.1",
- "resolved": "https://registry.npmjs.org/@sentry/cli-linux-arm64/-/cli-linux-arm64-2.32.1.tgz",
- "integrity": "sha512-hsGqHYuecUl1Yhq4MhiRejfh1gNlmhyNPcQEoO/DDRBnGnJyEAdiDpKXJcc2e/lT9k40B55Ob2CP1SeY040T2w==",
- "cpu": [
- "arm64"
- ],
- "optional": true,
- "os": [
- "linux",
- "freebsd"
- ],
- "engines": {
- "node": ">=10"
- }
- },
- "node_modules/@sentry/cli-linux-i686": {
- "version": "2.32.1",
- "resolved": "https://registry.npmjs.org/@sentry/cli-linux-i686/-/cli-linux-i686-2.32.1.tgz",
- "integrity": "sha512-SuMLN1/ceFd3Q/B0DVyh5igjetTAF423txiABAHASenEev0lG0vZkRDXFclfgDtDUKRPmOXW7VDMirM3yZWQHQ==",
- "cpu": [
- "x86",
- "ia32"
- ],
- "optional": true,
- "os": [
- "linux",
- "freebsd"
- ],
- "engines": {
- "node": ">=10"
- }
- },
- "node_modules/@sentry/cli-linux-x64": {
- "version": "2.32.1",
- "resolved": "https://registry.npmjs.org/@sentry/cli-linux-x64/-/cli-linux-x64-2.32.1.tgz",
- "integrity": "sha512-x4FGd6xgvFddz8V/dh6jii4wy9qjWyvYLBTz8Fhi9rIP+b8wQ3oxwHIdzntareetZP7C1ggx+hZheiYocNYVwA==",
- "cpu": [
- "x64"
- ],
- "optional": true,
- "os": [
- "linux",
- "freebsd"
- ],
- "engines": {
- "node": ">=10"
- }
- },
- "node_modules/@sentry/cli-win32-i686": {
- "version": "2.32.1",
- "resolved": "https://registry.npmjs.org/@sentry/cli-win32-i686/-/cli-win32-i686-2.32.1.tgz",
- "integrity": "sha512-i6aZma9mFzR+hqMY5VliQZEX6ypP/zUjPK0VtIMYWs5cC6PsQLRmuoeJmy3Z7d4nlh0CdK5NPC813Ej6RY6/vg==",
- "cpu": [
- "x86",
- "ia32"
- ],
- "optional": true,
- "os": [
- "win32"
- ],
- "engines": {
- "node": ">=10"
- }
- },
- "node_modules/@sentry/cli-win32-x64": {
- "version": "2.32.1",
- "resolved": "https://registry.npmjs.org/@sentry/cli-win32-x64/-/cli-win32-x64-2.32.1.tgz",
- "integrity": "sha512-B58w/lRHLb4MUSjJNfMMw2cQykfimDCMLMmeK+1EiT2RmSeNQliwhhBxYcKk82a8kszH6zg3wT2vCea7LyPUyA==",
- "cpu": [
- "x64"
- ],
- "optional": true,
- "os": [
- "win32"
- ],
- "engines": {
- "node": ">=10"
- }
- },
"node_modules/@sentry/core": {
"version": "8.7.0",
"resolved": "https://registry.npmjs.org/@sentry/core/-/core-8.7.0.tgz",
@@ -29293,7 +28452,6 @@
"version": "2.0.3",
"resolved": "https://registry.npmjs.org/turbo/-/turbo-2.0.3.tgz",
"integrity": "sha512-jF1K0tTUyryEWmgqk1V0ALbSz3VdeZ8FXUo6B64WsPksCMCE48N5jUezGOH2MN0+epdaRMH8/WcPU0QQaVfeLA==",
- "dev": true,
"bin": {
"turbo": "bin/turbo"
},
@@ -29306,19 +28464,6 @@
"turbo-windows-arm64": "2.0.3"
}
},
- "node_modules/turbo-darwin-64": {
- "version": "2.0.3",
- "resolved": "https://registry.npmjs.org/turbo-darwin-64/-/turbo-darwin-64-2.0.3.tgz",
- "integrity": "sha512-v7ztJ8sxdHw3SLfO2MhGFeeU4LQhFii1hIGs9uBiXns/0YTGOvxLeifnfGqhfSrAIIhrCoByXO7nR9wlm10n3Q==",
- "cpu": [
- "x64"
- ],
- "dev": true,
- "optional": true,
- "os": [
- "darwin"
- ]
- },
"node_modules/turbo-darwin-arm64": {
"version": "2.0.3",
"resolved": "https://registry.npmjs.org/turbo-darwin-arm64/-/turbo-darwin-arm64-2.0.3.tgz",
@@ -29326,64 +28471,11 @@
"cpu": [
"arm64"
],
- "dev": true,
"optional": true,
"os": [
"darwin"
]
},
- "node_modules/turbo-linux-64": {
- "version": "2.0.3",
- "resolved": "https://registry.npmjs.org/turbo-linux-64/-/turbo-linux-64-2.0.3.tgz",
- "integrity": "sha512-xpdY1suXoEbsQsu0kPep2zrB8ijv/S5aKKrntGuQ62hCiwDFoDcA/Z7FZ8IHQ2u+dpJARa7yfiByHmizFE0r5Q==",
- "cpu": [
- "x64"
- ],
- "dev": true,
- "optional": true,
- "os": [
- "linux"
- ]
- },
- "node_modules/turbo-linux-arm64": {
- "version": "2.0.3",
- "resolved": "https://registry.npmjs.org/turbo-linux-arm64/-/turbo-linux-arm64-2.0.3.tgz",
- "integrity": "sha512-MBACTcSR874L1FtLL7gkgbI4yYJWBUCqeBN/iE29D+8EFe0d3fAyviFlbQP4K/HaDYet1i26xkkOiWr0z7/V9A==",
- "cpu": [
- "arm64"
- ],
- "dev": true,
- "optional": true,
- "os": [
- "linux"
- ]
- },
- "node_modules/turbo-windows-64": {
- "version": "2.0.3",
- "resolved": "https://registry.npmjs.org/turbo-windows-64/-/turbo-windows-64-2.0.3.tgz",
- "integrity": "sha512-zi3YuKPkM9JxMTshZo3excPk37hUrj5WfnCqh4FjI26ux6j/LJK+Dh3SebMHd9mR7wP9CMam4GhmLCT+gDfM+w==",
- "cpu": [
- "x64"
- ],
- "dev": true,
- "optional": true,
- "os": [
- "win32"
- ]
- },
- "node_modules/turbo-windows-arm64": {
- "version": "2.0.3",
- "resolved": "https://registry.npmjs.org/turbo-windows-arm64/-/turbo-windows-arm64-2.0.3.tgz",
- "integrity": "sha512-wmed4kkenLvRbidi7gISB4PU77ujBuZfgVGDZ4DXTFslE/kYpINulwzkVwJIvNXsJtHqyOq0n6jL8Zwl3BrwDg==",
- "cpu": [
- "arm64"
- ],
- "dev": true,
- "optional": true,
- "os": [
- "win32"
- ]
- },
"node_modules/type-check": {
"version": "0.4.0",
"resolved": "https://registry.npmjs.org/type-check/-/type-check-0.4.0.tgz",
diff --git a/package.json b/package.json
index 95fb4b6bd2670..6a46d39e10ee4 100644
--- a/package.json
+++ b/package.json
@@ -16,121 +16,34 @@
"node": "v20"
},
"packageManager": "npm@10.7.0",
+ "workspaces": [
+ "apps/*"
+ ],
"scripts": {
- "scripts:release-post": "cross-env NODE_NO_WARNINGS=1 node scripts/release-post/index.mjs",
- "dev": "cross-env NODE_NO_WARNINGS=1 next dev --turbo",
- "serve": "npm run dev",
- "build": "cross-env NODE_NO_WARNINGS=1 next build",
- "start": "cross-env NODE_NO_WARNINGS=1 next start",
- "deploy": "cross-env NEXT_PUBLIC_STATIC_EXPORT=true npm run build",
- "lint:js": "eslint \"**/*.{js,mjs,ts,tsx}\" --cache --cache-strategy=content --cache-location=.eslintjscache",
- "lint:md": "eslint \"**/*.md?(x)\" --cache --cache-strategy=content --cache-location=.eslintmdcache",
- "lint:css": "stylelint \"**/*.css\" --allow-empty-input --cache --cache-strategy=content --cache-location=.stylelintcache",
- "lint": "turbo run lint:md lint:js lint:css",
- "lint:fix": "turbo run lint:md lint:js lint:css --no-cache -- --fix",
+ "dev": "turbo run dev",
+ "build": "turbo run build",
+ "storybook:build": "turbo run storybook:build",
+ "start": "turbo run start",
+ "check-types": "turbo check-types",
+ "scripts:release-post": "turbo run scripts:release-post",
+ "lint": "turbo run lint",
+ "lint:fix": "turbo run lint --force",
"prettier": "prettier \"**/*.{js,mjs,ts,tsx,md,mdx,json,yml,css}\" --check --cache --cache-strategy=content --cache-location=.prettiercache",
- "prettier:fix": "npm run prettier -- --write",
+ "prettier:fix": "npm run prettier --write",
"format": "npm run lint:fix && npm run prettier:fix",
- "sync-orama": "node ./scripts/orama-search/sync-orama-cloud.mjs",
- "storybook": "cross-env NODE_NO_WARNINGS=1 storybook dev -p 6006 --quiet --no-open",
- "storybook:build": "cross-env NODE_NO_WARNINGS=1 storybook build --quiet --webpack-stats-json",
- "test:unit": "cross-env NODE_NO_WARNINGS=1 jest",
- "test:unit:watch": "npm run test:unit -- --watch",
"test": "turbo test:unit",
"prepare": "husky"
},
"dependencies": {
- "@heroicons/react": "~2.1.1",
- "@mdx-js/mdx": "^3.0.1",
- "@nodevu/core": "~0.1.0",
- "@orama/highlight": "^0.1.5",
- "@oramacloud/client": "^1.0.13",
- "@radix-ui/react-accessible-icon": "^1.0.3",
- "@radix-ui/react-avatar": "^1.0.4",
- "@radix-ui/react-dialog": "^1.0.5",
- "@radix-ui/react-dropdown-menu": "^2.0.6",
- "@radix-ui/react-label": "^2.0.2",
- "@radix-ui/react-scroll-area": "^1.0.5",
- "@radix-ui/react-select": "^2.0.0",
- "@radix-ui/react-slot": "^1.0.2",
- "@radix-ui/react-tabs": "^1.0.4",
- "@radix-ui/react-toast": "^1.1.5",
- "@savvywombat/tailwindcss-grid-areas": "~4.0.0",
- "@sentry/nextjs": "~8.7.0",
- "@tailwindcss/container-queries": "~0.1.1",
- "@types/node": "20.14.0",
- "@vcarl/remark-headings": "~0.1.0",
- "@vercel/analytics": "~1.3.1",
- "@vercel/speed-insights": "~1.0.10",
- "autoprefixer": "~10.4.18",
- "classnames": "~2.5.1",
- "cross-env": "7.0.3",
- "dedent": "1.5.3",
- "feed": "~4.2.2",
- "github-slugger": "~2.0.0",
- "glob": "~10.4.1",
- "gray-matter": "~4.0.3",
"husky": "9.0.11",
"lint-staged": "15.2.5",
- "next": "~14.2.4",
- "next-intl": "~3.14.1",
- "next-themes": "~0.3.0",
- "postcss": "~8.4.38",
- "postcss-calc": "~10.0.0",
- "postcss-import": "~16.1.0",
- "postcss-mixins": "~10.0.1",
- "postcss-simple-vars": "~7.0.1",
- "react": "^18.3.1",
- "react-dom": "^18.3.1",
- "rehype-autolink-headings": "~7.1.0",
- "rehype-slug": "~6.0.0",
- "remark-gfm": "~4.0.0",
- "remark-reading-time": "~2.0.1",
- "semver": "~7.6.0",
- "shiki": "~1.6.2",
- "tailwindcss": "^3.4.3",
- "typescript": "~5.4.2",
- "unist-util-visit": "~5.0.0",
- "vfile": "~6.0.1",
- "vfile-matter": "~5.0.0"
+ "turbo": "2.0.3"
},
"devDependencies": {
- "@storybook/addon-controls": "~8.1.5",
- "@storybook/addon-interactions": "~8.1.5",
- "@storybook/addon-themes": "~8.1.5",
- "@storybook/addon-viewport": "~8.1.5",
- "@storybook/nextjs": "~8.1.5",
- "@testing-library/jest-dom": "~6.4.5",
- "@testing-library/react": "~15.0.7",
- "@testing-library/user-event": "~14.5.2",
- "@types/jest": "29.5.12",
- "@types/react": "^18.3.1",
- "@types/react-dom": "^18.3.0",
- "@types/semver": "~7.5.8",
- "@typescript-eslint/eslint-plugin": "7.11.0",
- "@typescript-eslint/parser": "7.11.0",
"commitizen": "4.3.0",
"cz-conventional-changelog": "3.3.0",
- "eslint": "8.57.0",
- "eslint-config-next": "~14.2.3",
- "eslint-config-prettier": "9.1.0",
- "eslint-plugin-mdx": "3.1.5",
- "eslint-plugin-no-relative-import-paths": "^1.5.3",
- "eslint-plugin-storybook": "0.8.0",
- "handlebars": "4.7.8",
- "jest": "29.7.0",
- "jest-environment-jsdom": "29.7.0",
- "jest-junit": "16.0.0",
"prettier": "3.3.0",
"prettier-plugin-tailwindcss": "0.6.1",
- "remark-frontmatter": "5.0.0",
- "remark-preset-lint-node": "5.0.2",
- "storybook": "~8.1.5",
- "stylelint": "16.6.1",
- "stylelint-config-standard": "36.0.0",
- "stylelint-order": "6.0.4",
- "stylelint-selector-bem-pattern": "4.0.0",
- "turbo": "2.0.3",
- "user-agent-data-types": "0.4.2"
+ "typescript": "~5.4.2"
}
}
diff --git a/pages/en/blog/release/v22.4.0.md b/pages/en/blog/release/v22.4.0.md
deleted file mode 100644
index b7ee7aaa1f28e..0000000000000
--- a/pages/en/blog/release/v22.4.0.md
+++ /dev/null
@@ -1,217 +0,0 @@
----
-date: '2024-07-02T09:06:33.007Z'
-category: release
-title: Node v22.4.0 (Current)
-layout: blog-post
-author: Michaël Zasso
----
-
-## 2024-07-02, Version 22.4.0 (Current), @targos
-
-### Notable Changes
-
-#### Experimental Web Storage API
-
-- \[[`9e30724b53`](https://github.com/nodejs/node/commit/9e30724b53)] - **(SEMVER-MINOR)** **deps,lib,src**: add experimental web storage (Colin Ihrig) [#52435](https://github.com/nodejs/node/pull/52435)
-
-#### API stability updates
-
-- \[[`201266706b`](https://github.com/nodejs/node/commit/201266706b)] - **doc**: move `node --run` stability to rc (Yagiz Nizipli) [#53433](https://github.com/nodejs/node/pull/53433)
-- \[[`16c0884d48`](https://github.com/nodejs/node/commit/16c0884d48)] - **doc**: mark WebSocket as stable (Matthew Aitken) [#53352](https://github.com/nodejs/node/pull/53352)
-- \[[`cf375e73c1`](https://github.com/nodejs/node/commit/cf375e73c1)] - **doc**: mark --heap-prof and related flags stable (Joyee Cheung) [#53343](https://github.com/nodejs/node/pull/53343)
-- \[[`0160745057`](https://github.com/nodejs/node/commit/0160745057)] - **doc**: mark --cpu-prof and related flags stable (Joyee Cheung) [#53343](https://github.com/nodejs/node/pull/53343)
-
-#### Other Notable Changes
-
-- \[[`df4762722c`](https://github.com/nodejs/node/commit/df4762722c)] - **doc**: doc-only deprecate OpenSSL engine-based APIs (Richard Lau) [#53329](https://github.com/nodejs/node/pull/53329)
-- \[[`ad5282e196`](https://github.com/nodejs/node/commit/ad5282e196)] - **inspector**: fix disable async hooks on `Debugger.setAsyncCallStackDepth` (Joyee Cheung) [#53473](https://github.com/nodejs/node/pull/53473)
-- \[[`e95af740fc`](https://github.com/nodejs/node/commit/e95af740fc)] - **(SEMVER-MINOR)** **lib**: add diagnostics_channel events to module loading (RafaelGSS) [#44340](https://github.com/nodejs/node/pull/44340)
-- \[[`50733a1abe`](https://github.com/nodejs/node/commit/50733a1abe)] - **(SEMVER-MINOR)** **util**: support `--no-` for argument with boolean type for parseArgs (Zhenwei Jin) [#53107](https://github.com/nodejs/node/pull/53107)
-
-### Commits
-
-- \[[`9f32002397`](https://github.com/nodejs/node/commit/9f32002397)] - **assert,util**: correct comparison when both contain same reference (Daniel Lemire) [#53431](https://github.com/nodejs/node/pull/53431)
-- \[[`dfdc062111`](https://github.com/nodejs/node/commit/dfdc062111)] - **buffer**: make indexOf(byte) faster (Tobias Nießen) [#53455](https://github.com/nodejs/node/pull/53455)
-- \[[`1de437527e`](https://github.com/nodejs/node/commit/1de437527e)] - **build**: configure with shared sqlite3 (Chengzhong Wu) [#53519](https://github.com/nodejs/node/pull/53519)
-- \[[`c7d44ba1f3`](https://github.com/nodejs/node/commit/c7d44ba1f3)] - **build**: find version of Clang installed on Windows (Stefan Stojanovic) [#53228](https://github.com/nodejs/node/pull/53228)
-- \[[`36aad8b204`](https://github.com/nodejs/node/commit/36aad8b204)] - **build**: fix spacing before NINJA_ARGS (jakecastelli) [#53181](https://github.com/nodejs/node/pull/53181)
-- \[[`82092cdaa3`](https://github.com/nodejs/node/commit/82092cdaa3)] - **crypto**: improve GetECGroupBits signature (Tobias Nießen) [#53364](https://github.com/nodejs/node/pull/53364)
-- \[[`073c231607`](https://github.com/nodejs/node/commit/073c231607)] - **deps**: update c-ares to v1.31.0 (Node.js GitHub Bot) [#53554](https://github.com/nodejs/node/pull/53554)
-- \[[`977beab729`](https://github.com/nodejs/node/commit/977beab729)] - **(SEMVER-MINOR)** **deps**: sqlite: fix Windows compilation (Colin Ihrig) [#52435](https://github.com/nodejs/node/pull/52435)
-- \[[`e69b8d202c`](https://github.com/nodejs/node/commit/e69b8d202c)] - **deps**: update undici to 6.19.2 (Node.js GitHub Bot) [#53468](https://github.com/nodejs/node/pull/53468)
-- \[[`c4a7e051c8`](https://github.com/nodejs/node/commit/c4a7e051c8)] - **deps**: update undici to 6.19.1 (Node.js GitHub Bot) [#53468](https://github.com/nodejs/node/pull/53468)
-- \[[`fa34f8fcf0`](https://github.com/nodejs/node/commit/fa34f8fcf0)] - **deps**: update undici to 6.19.1 (Node.js GitHub Bot) [#53468](https://github.com/nodejs/node/pull/53468)
-- \[[`0b40bfad43`](https://github.com/nodejs/node/commit/0b40bfad43)] - **deps**: update undici to 6.19.0 (Node.js GitHub Bot) [#53468](https://github.com/nodejs/node/pull/53468)
-- \[[`1877f22a79`](https://github.com/nodejs/node/commit/1877f22a79)] - **deps**: update simdjson to 3.9.4 (Node.js GitHub Bot) [#53467](https://github.com/nodejs/node/pull/53467)
-- \[[`1b84964b8d`](https://github.com/nodejs/node/commit/1b84964b8d)] - **deps**: patch V8 to 12.4.254.21 (Node.js GitHub Bot) [#53470](https://github.com/nodejs/node/pull/53470)
-- \[[`6acadeb59b`](https://github.com/nodejs/node/commit/6acadeb59b)] - **deps**: update acorn-walk to 8.3.3 (Node.js GitHub Bot) [#53466](https://github.com/nodejs/node/pull/53466)
-- \[[`7a7f438841`](https://github.com/nodejs/node/commit/7a7f438841)] - **deps**: update zlib to 1.3.0.1-motley-209717d (Node.js GitHub Bot) [#53156](https://github.com/nodejs/node/pull/53156)
-- \[[`bf891bf64c`](https://github.com/nodejs/node/commit/bf891bf64c)] - **deps**: update c-ares to v1.30.0 (Node.js GitHub Bot) [#53416](https://github.com/nodejs/node/pull/53416)
-- \[[`bd68888261`](https://github.com/nodejs/node/commit/bd68888261)] - **deps**: V8: cherry-pick a3cc8522a4c8 (kxxt) [#53412](https://github.com/nodejs/node/pull/53412)
-- \[[`2defaaf771`](https://github.com/nodejs/node/commit/2defaaf771)] - **deps**: V8: cherry-pick 6ea594ff7132 (kxxt) [#53412](https://github.com/nodejs/node/pull/53412)
-- \[[`9e30724b53`](https://github.com/nodejs/node/commit/9e30724b53)] - **(SEMVER-MINOR)** **deps,lib,src**: add experimental web storage (Colin Ihrig) [#52435](https://github.com/nodejs/node/pull/52435)
-- \[[`608cc05de1`](https://github.com/nodejs/node/commit/608cc05de1)] - **doc**: recommend not using libuv node-api function (Michael Dawson) [#53521](https://github.com/nodejs/node/pull/53521)
-- \[[`30858eca59`](https://github.com/nodejs/node/commit/30858eca59)] - **doc**: add additional guidance for PRs to deps (Michael Dawson) [#53499](https://github.com/nodejs/node/pull/53499)
-- \[[`a5852cc710`](https://github.com/nodejs/node/commit/a5852cc710)] - **doc**: only apply content-visibility on all.html (Filip Skokan) [#53510](https://github.com/nodejs/node/pull/53510)
-- \[[`befabe5c58`](https://github.com/nodejs/node/commit/befabe5c58)] - **doc**: update the description of the return type for options.filter (Zhenwei Jin) [#52742](https://github.com/nodejs/node/pull/52742)
-- \[[`5ed1a036ba`](https://github.com/nodejs/node/commit/5ed1a036ba)] - **doc**: remove first timer badge (Aviv Keller) [#53338](https://github.com/nodejs/node/pull/53338)
-- \[[`201266706b`](https://github.com/nodejs/node/commit/201266706b)] - **doc**: move `node --run` stability to rc (Yagiz Nizipli) [#53433](https://github.com/nodejs/node/pull/53433)
-- \[[`46a7681cc4`](https://github.com/nodejs/node/commit/46a7681cc4)] - **doc**: add Buffer.from(string) to functions that use buffer pool (Christian Bates-White) [#52801](https://github.com/nodejs/node/pull/52801)
-- \[[`ec5364f6de`](https://github.com/nodejs/node/commit/ec5364f6de)] - **doc**: add initial text for ambassadors program (Michael Dawson) [#52857](https://github.com/nodejs/node/pull/52857)
-- \[[`fa113b8fc7`](https://github.com/nodejs/node/commit/fa113b8fc7)] - **doc**: fix typo (EhsanKhaki) [#53397](https://github.com/nodejs/node/pull/53397)
-- \[[`d9182d0086`](https://github.com/nodejs/node/commit/d9182d0086)] - **doc**: define more cases for stream event emissions (Aviv Keller) [#53317](https://github.com/nodejs/node/pull/53317)
-- \[[`923d24b6f2`](https://github.com/nodejs/node/commit/923d24b6f2)] - **doc**: remove mentions of policy model from security info (Aviv Keller) [#53249](https://github.com/nodejs/node/pull/53249)
-- \[[`48f78cd31b`](https://github.com/nodejs/node/commit/48f78cd31b)] - **doc**: fix mistakes in the module `load` hook api (István Donkó) [#53349](https://github.com/nodejs/node/pull/53349)
-- \[[`16c0884d48`](https://github.com/nodejs/node/commit/16c0884d48)] - **doc**: mark WebSocket as stable (Matthew Aitken) [#53352](https://github.com/nodejs/node/pull/53352)
-- \[[`df4762722c`](https://github.com/nodejs/node/commit/df4762722c)] - **doc**: doc-only deprecate OpenSSL engine-based APIs (Richard Lau) [#53329](https://github.com/nodejs/node/pull/53329)
-- \[[`cf375e73c1`](https://github.com/nodejs/node/commit/cf375e73c1)] - **doc**: mark --heap-prof and related flags stable (Joyee Cheung) [#53343](https://github.com/nodejs/node/pull/53343)
-- \[[`0160745057`](https://github.com/nodejs/node/commit/0160745057)] - **doc**: mark --cpu-prof and related flags stable (Joyee Cheung) [#53343](https://github.com/nodejs/node/pull/53343)
-- \[[`6e12d9f049`](https://github.com/nodejs/node/commit/6e12d9f049)] - **doc**: remove IRC from man page (Tobias Nießen) [#53344](https://github.com/nodejs/node/pull/53344)
-- \[[`24c7a9415b`](https://github.com/nodejs/node/commit/24c7a9415b)] - **doc, http**: add `rejectNonStandardBodyWrites` option, clear its behaviour (jakecastelli) [#53396](https://github.com/nodejs/node/pull/53396)
-- \[[`ec38f3dc6a`](https://github.com/nodejs/node/commit/ec38f3dc6a)] - **doc, meta**: organize contributing to Node-API guide (Aviv Keller) [#53243](https://github.com/nodejs/node/pull/53243)
-- \[[`cf5a973c42`](https://github.com/nodejs/node/commit/cf5a973c42)] - **doc, meta**: use markdown rather than HTML in CONTRIBUTING.md (Aviv Keller) [#53235](https://github.com/nodejs/node/pull/53235)
-- \[[`105b006fd2`](https://github.com/nodejs/node/commit/105b006fd2)] - **fs**: move `ToNamespacedPath` to c++ (Yagiz Nizipli) [#52135](https://github.com/nodejs/node/pull/52135)
-- \[[`568377f7f0`](https://github.com/nodejs/node/commit/568377f7f0)] - **fs**: do not crash if the watched file is removed while setting up watch (Matteo Collina) [#53452](https://github.com/nodejs/node/pull/53452)
-- \[[`fad179307c`](https://github.com/nodejs/node/commit/fad179307c)] - **fs**: add fast api for `InternalModuleStat` (Yagiz Nizipli) [#51344](https://github.com/nodejs/node/pull/51344)
-- \[[`41100b65f6`](https://github.com/nodejs/node/commit/41100b65f6)] - **http2**: reject failed http2.connect when used with promisify (ehsankhfr) [#53475](https://github.com/nodejs/node/pull/53475)
-- \[[`ad5282e196`](https://github.com/nodejs/node/commit/ad5282e196)] - **inspector**: fix disable async hooks on Debugger.setAsyncCallStackDepth (Joyee Cheung) [#53473](https://github.com/nodejs/node/pull/53473)
-- \[[`b5fc227344`](https://github.com/nodejs/node/commit/b5fc227344)] - **lib**: fix typo in comment (codediverdev) [#53543](https://github.com/nodejs/node/pull/53543)
-- \[[`e95af740fc`](https://github.com/nodejs/node/commit/e95af740fc)] - **(SEMVER-MINOR)** **lib**: add diagnostics_channel events to module loading (RafaelGSS) [#44340](https://github.com/nodejs/node/pull/44340)
-- \[[`123910f1de`](https://github.com/nodejs/node/commit/123910f1de)] - **lib**: remove the unused code (theanarkh) [#53463](https://github.com/nodejs/node/pull/53463)
-- \[[`452011b719`](https://github.com/nodejs/node/commit/452011b719)] - **lib**: speed up MessageEvent creation internally (Matthew Aitken) [#52951](https://github.com/nodejs/node/pull/52951)
-- \[[`710cf7758c`](https://github.com/nodejs/node/commit/710cf7758c)] - **lib**: reduce amount of caught URL errors (Yagiz Nizipli) [#52658](https://github.com/nodejs/node/pull/52658)
-- \[[`45b59e58d1`](https://github.com/nodejs/node/commit/45b59e58d1)] - **lib**: fix naming convention of `Symbol` (Deokjin Kim) [#53387](https://github.com/nodejs/node/pull/53387)
-- \[[`515dd24ee7`](https://github.com/nodejs/node/commit/515dd24ee7)] - **lib**: fix timer leak (theanarkh) [#53337](https://github.com/nodejs/node/pull/53337)
-- \[[`77166137be`](https://github.com/nodejs/node/commit/77166137be)] - **meta**: use correct source for workflow in PR (Aviv Keller) [#53490](https://github.com/nodejs/node/pull/53490)
-- \[[`d1c10fee53`](https://github.com/nodejs/node/commit/d1c10fee53)] - **meta**: move one or more collaborators to emeritus (Node.js GitHub Bot) [#53480](https://github.com/nodejs/node/pull/53480)
-- \[[`a5026386bf`](https://github.com/nodejs/node/commit/a5026386bf)] - **meta**: fix typo in dependency updates (Aviv Keller) [#53471](https://github.com/nodejs/node/pull/53471)
-- \[[`0b9191da99`](https://github.com/nodejs/node/commit/0b9191da99)] - **meta**: bump step-security/harden-runner from 2.7.1 to 2.8.0 (dependabot\[bot]) [#53245](https://github.com/nodejs/node/pull/53245)
-- \[[`49cfb9d001`](https://github.com/nodejs/node/commit/49cfb9d001)] - **src**: reset `process.versions` during pre-execution (Richard Lau) [#53444](https://github.com/nodejs/node/pull/53444)
-- \[[`15df4edd22`](https://github.com/nodejs/node/commit/15df4edd22)] - **src**: use `args.This()` instead of `Holder` (Michaël Zasso) [#53474](https://github.com/nodejs/node/pull/53474)
-- \[[`e16a04e852`](https://github.com/nodejs/node/commit/e16a04e852)] - **src**: fix dynamically linked OpenSSL version (Richard Lau) [#53456](https://github.com/nodejs/node/pull/53456)
-- \[[`5961253824`](https://github.com/nodejs/node/commit/5961253824)] - **src**: remove `base64` from `process.versions` (Richard Lau) [#53442](https://github.com/nodejs/node/pull/53442)
-- \[[`11dd15c0b5`](https://github.com/nodejs/node/commit/11dd15c0b5)] - **src**: remove `SetEncoding` from StringEncoder (Yagiz Nizipli) [#53441](https://github.com/nodejs/node/pull/53441)
-- \[[`0c7e69acd2`](https://github.com/nodejs/node/commit/0c7e69acd2)] - **src**: simplify `size() == 0` checks (Yagiz Nizipli) [#53440](https://github.com/nodejs/node/pull/53440)
-- \[[`f077afafda`](https://github.com/nodejs/node/commit/f077afafda)] - **src**: add utilities to help debugging reproducibility of snapshots (Joyee Cheung) [#50983](https://github.com/nodejs/node/pull/50983)
-- \[[`004b9ea4c4`](https://github.com/nodejs/node/commit/004b9ea4c4)] - **src**: make sure that memcpy-ed structs in snapshot have no padding (Joyee Cheung) [#50983](https://github.com/nodejs/node/pull/50983)
-- \[[`bfc5236423`](https://github.com/nodejs/node/commit/bfc5236423)] - **src**: return non-empty data in context data serializer (Joyee Cheung) [#50983](https://github.com/nodejs/node/pull/50983)
-- \[[`955454ba4d`](https://github.com/nodejs/node/commit/955454ba4d)] - **src**: fix typo in env.cc (EhsanKhaki) [#53418](https://github.com/nodejs/node/pull/53418)
-- \[[`7d8787768c`](https://github.com/nodejs/node/commit/7d8787768c)] - **src**: avoid strcmp in favor of operator== (Tobias Nießen) [#53439](https://github.com/nodejs/node/pull/53439)
-- \[[`599e7c3d8e`](https://github.com/nodejs/node/commit/599e7c3d8e)] - **src**: remove ArrayBufferAllocator::Reallocate override (Shu-yu Guo) [#52910](https://github.com/nodejs/node/pull/52910)
-- \[[`f9075ff38e`](https://github.com/nodejs/node/commit/f9075ff38e)] - **src**: print v8::OOMDetails::detail when it's available (Joyee Cheung) [#53360](https://github.com/nodejs/node/pull/53360)
-- \[[`4704270443`](https://github.com/nodejs/node/commit/4704270443)] - **src**: fix IsIPAddress for IPv6 (Hüseyin Açacak) [#53400](https://github.com/nodejs/node/pull/53400)
-- \[[`63f62d76de`](https://github.com/nodejs/node/commit/63f62d76de)] - **src**: fix permission inspector crash (theanarkh) [#53389](https://github.com/nodejs/node/pull/53389)
-- \[[`70bbc02dac`](https://github.com/nodejs/node/commit/70bbc02dac)] - **src, deps**: add nbytes library (James M Snell) [#53507](https://github.com/nodejs/node/pull/53507)
-- \[[`8b877099d0`](https://github.com/nodejs/node/commit/8b877099d0)] - **stream**: update outdated highwatermark doc (Jay Kim) [#53494](https://github.com/nodejs/node/pull/53494)
-- \[[`eded1e9768`](https://github.com/nodejs/node/commit/eded1e9768)] - **stream**: support dispose in writable (Benjamin Gruenbaum) [#48547](https://github.com/nodejs/node/pull/48547)
-- \[[`b3372a8b0e`](https://github.com/nodejs/node/commit/b3372a8b0e)] - **stream**: callback should be called when pendingcb is 0 (jakecastelli) [#53438](https://github.com/nodejs/node/pull/53438)
-- \[[`f4efb7f625`](https://github.com/nodejs/node/commit/f4efb7f625)] - **stream**: make sure \_destroy is called (jakecastelli) [#53213](https://github.com/nodejs/node/pull/53213)
-- \[[`7dde37591c`](https://github.com/nodejs/node/commit/7dde37591c)] - **stream**: prevent stream unexpected pause when highWaterMark set to 0 (jakecastelli) [#53261](https://github.com/nodejs/node/pull/53261)
-- \[[`6e66d9763f`](https://github.com/nodejs/node/commit/6e66d9763f)] - **test**: mark `test-benchmark-crypto` as flaky (Antoine du Hamel) [#52955](https://github.com/nodejs/node/pull/52955)
-- \[[`1eebcbf9bf`](https://github.com/nodejs/node/commit/1eebcbf9bf)] - **test**: skip reproducible snapshot test on 32-bit (Michaël Zasso) [#53592](https://github.com/nodejs/node/pull/53592)
-- \[[`91b2850303`](https://github.com/nodejs/node/commit/91b2850303)] - **test**: extend env for `test-node-output-errors` (Richard Lau) [#53535](https://github.com/nodejs/node/pull/53535)
-- \[[`bcad560726`](https://github.com/nodejs/node/commit/bcad560726)] - **test**: update `compression` web-platform tests (Yagiz Nizipli) [#53478](https://github.com/nodejs/node/pull/53478)
-- \[[`b8f436c755`](https://github.com/nodejs/node/commit/b8f436c755)] - **test**: update encoding web-platform tests (Yagiz Nizipli) [#53477](https://github.com/nodejs/node/pull/53477)
-- \[[`d2c169a4f6`](https://github.com/nodejs/node/commit/d2c169a4f6)] - **test**: update `url` web-platform tests (Yagiz Nizipli) [#53472](https://github.com/nodejs/node/pull/53472)
-- \[[`513e6aa4c7`](https://github.com/nodejs/node/commit/513e6aa4c7)] - **test**: check against run-time OpenSSL version (Richard Lau) [#53456](https://github.com/nodejs/node/pull/53456)
-- \[[`602b9d63c4`](https://github.com/nodejs/node/commit/602b9d63c4)] - **test**: update tests for OpenSSL 3.0.14 (Richard Lau) [#53373](https://github.com/nodejs/node/pull/53373)
-- \[[`4a3525bb08`](https://github.com/nodejs/node/commit/4a3525bb08)] - **test**: fix test-http-server-keepalive-req-gc (Etienne Pierre-doray) [#53292](https://github.com/nodejs/node/pull/53292)
-- \[[`7349edb28b`](https://github.com/nodejs/node/commit/7349edb28b)] - **test**: update TLS tests for OpenSSL 3.2 (Richard Lau) [#53384](https://github.com/nodejs/node/pull/53384)
-- \[[`a11a05763d`](https://github.com/nodejs/node/commit/a11a05763d)] - **tls**: check result of SSL_CTX_set\_\*\_proto_version (Tobias Nießen) [#53459](https://github.com/nodejs/node/pull/53459)
-- \[[`4b47f89eb2`](https://github.com/nodejs/node/commit/4b47f89eb2)] - **tls**: avoid taking ownership of OpenSSL objects (Tobias Nießen) [#53436](https://github.com/nodejs/node/pull/53436)
-- \[[`ac8adeb99f`](https://github.com/nodejs/node/commit/ac8adeb99f)] - **tls**: use SSL_get_peer_tmp_key (Tobias Nießen) [#53366](https://github.com/nodejs/node/pull/53366)
-- \[[`d5c380bb09`](https://github.com/nodejs/node/commit/d5c380bb09)] - **tools**: lock versions of irrelevant DB deps (Michaël Zasso) [#53546](https://github.com/nodejs/node/pull/53546)
-- \[[`71321bb249`](https://github.com/nodejs/node/commit/71321bb249)] - **tools**: fix skip detection of test runner output (Richard Lau) [#53545](https://github.com/nodejs/node/pull/53545)
-- \[[`ca198f4125`](https://github.com/nodejs/node/commit/ca198f4125)] - **tools**: update eslint to 9.5.0 (Node.js GitHub Bot) [#53515](https://github.com/nodejs/node/pull/53515)
-- \[[`30fdd482a1`](https://github.com/nodejs/node/commit/30fdd482a1)] - **tools**: move ESLint to tools/eslint (Michaël Zasso) [#53413](https://github.com/nodejs/node/pull/53413)
-- \[[`fe85e05ba9`](https://github.com/nodejs/node/commit/fe85e05ba9)] - **tools**: fix c-ares update script (Marco Ippolito) [#53414](https://github.com/nodejs/node/pull/53414)
-- \[[`8eb7bdf81b`](https://github.com/nodejs/node/commit/8eb7bdf81b)] - **tools**: update lint-md-dependencies (Node.js GitHub Bot) [#53158](https://github.com/nodejs/node/pull/53158)
-- \[[`9ece63d415`](https://github.com/nodejs/node/commit/9ece63d415)] - **tools**: do not run Corepack code before it's reviewed (Antoine du Hamel) [#53405](https://github.com/nodejs/node/pull/53405)
-- \[[`ab2021492b`](https://github.com/nodejs/node/commit/ab2021492b)] - **tools**: move ESLint tools to tools/eslint (Michaël Zasso) [#53393](https://github.com/nodejs/node/pull/53393)
-- \[[`78a9037a6d`](https://github.com/nodejs/node/commit/78a9037a6d)] - **tools**: use Ubuntu 24.04 and Clang on GitHub actions (Michaël Zasso) [#53212](https://github.com/nodejs/node/pull/53212)
-- \[[`855eb25dad`](https://github.com/nodejs/node/commit/855eb25dad)] - **tools**: add stream label on PR when related files being changed in lib (jakecastelli) [#53269](https://github.com/nodejs/node/pull/53269)
-- \[[`50733a1abe`](https://github.com/nodejs/node/commit/50733a1abe)] - **(SEMVER-MINOR)** **util**: support `--no-` for argument with boolean type for parseArgs (Zhenwei Jin) [#53107](https://github.com/nodejs/node/pull/53107)
-
-Windows 32-bit Installer: https://nodejs.org/dist/v22.4.0/node-v22.4.0-x86.msi \
-Windows 64-bit Installer: https://nodejs.org/dist/v22.4.0/node-v22.4.0-x64.msi \
-Windows ARM 64-bit Installer: https://nodejs.org/dist/v22.4.0/node-v22.4.0-arm64.msi \
-Windows 32-bit Binary: https://nodejs.org/dist/v22.4.0/win-x86/node.exe \
-Windows 64-bit Binary: https://nodejs.org/dist/v22.4.0/win-x64/node.exe \
-Windows ARM 64-bit Binary: https://nodejs.org/dist/v22.4.0/win-arm64/node.exe \
-macOS 64-bit Installer: https://nodejs.org/dist/v22.4.0/node-v22.4.0.pkg \
-macOS Apple Silicon 64-bit Binary: https://nodejs.org/dist/v22.4.0/node-v22.4.0-darwin-arm64.tar.gz \
-macOS Intel 64-bit Binary: https://nodejs.org/dist/v22.4.0/node-v22.4.0-darwin-x64.tar.gz \
-Linux 64-bit Binary: https://nodejs.org/dist/v22.4.0/node-v22.4.0-linux-x64.tar.xz \
-Linux PPC LE 64-bit Binary: https://nodejs.org/dist/v22.4.0/node-v22.4.0-linux-ppc64le.tar.xz \
-Linux s390x 64-bit Binary: https://nodejs.org/dist/v22.4.0/node-v22.4.0-linux-s390x.tar.xz \
-AIX 64-bit Binary: https://nodejs.org/dist/v22.4.0/node-v22.4.0-aix-ppc64.tar.gz \
-ARMv7 32-bit Binary: https://nodejs.org/dist/v22.4.0/node-v22.4.0-linux-armv7l.tar.xz \
-ARMv8 64-bit Binary: https://nodejs.org/dist/v22.4.0/node-v22.4.0-linux-arm64.tar.xz \
-Source Code: https://nodejs.org/dist/v22.4.0/node-v22.4.0.tar.gz \
-Other release files: https://nodejs.org/dist/v22.4.0/ \
-Documentation: https://nodejs.org/docs/v22.4.0/api/
-
-### SHASUMS
-
-```
------BEGIN PGP SIGNED MESSAGE-----
-Hash: SHA256
-
-bffb8cd1229ad1b572b0354cd858841eebb5b4c8e360da5d1597e91966a4df82 node-v22.4.0-aix-ppc64.tar.gz
-06f5e87171eaabe4264e1d6af5f95a5273cde289e236c1cf28e12c9cfa8fadef node-v22.4.0-arm64.msi
-3cac2e50c2bac76700d1bf124cb8836299f82550f9032b94a84e53cfc687c2b4 node-v22.4.0-darwin-arm64.tar.gz
-d52d15e86cda4fec28ffafafde955c1a4b3df3920192bd8d0add834ba9c51702 node-v22.4.0-darwin-arm64.tar.xz
-d0b978af9b20b7d083ebd00932dee29a57466bd030cd605f6fe6cf00ff9df357 node-v22.4.0-darwin-x64.tar.gz
-e39b56ba416425075d6241c359011e7493286b71a8b8aefbddcd2a7acb57394a node-v22.4.0-darwin-x64.tar.xz
-e965433c8bf6676fa22d1f5bd68ccdccdaad92be0db6c75aa69c470d63f71fee node-v22.4.0-headers.tar.gz
-4db890054c6105f62cbd5390154a8da1d7fe76dfa12730d462845baa081dc471 node-v22.4.0-headers.tar.xz
-2157b6eca925abae88bd6543b66e2ebefed7106b7ef34fc792553a303309422e node-v22.4.0-linux-arm64.tar.gz
-ae2a05ed0a7de095ddf6b2ee4fa4cfe935754ecdd4d115fde57edbc54818b93e node-v22.4.0-linux-arm64.tar.xz
-3511b88be58a137c2e59507bb1f8023744107f0cfd27fb9714208ffd065615f9 node-v22.4.0-linux-armv7l.tar.gz
-dbc373854bfb2d5d2e408263b14f56c286553a7bfc6414665cf7bce23762744c node-v22.4.0-linux-armv7l.tar.xz
-0c02a6c722cdb61ba542128073014d5927aa5e068ba7b9f67cce50f1edefc9a9 node-v22.4.0-linux-ppc64le.tar.gz
-8973f6338fb7ebca3e752020da8f71036d254db22cf29d54dadeaa1f2bc432a1 node-v22.4.0-linux-ppc64le.tar.xz
-c73714c0867c0503fb4516047f76f1305e932dadb76f1f013e70f3f91c47c505 node-v22.4.0-linux-s390x.tar.gz
-e4fb48861a10fe09b4e1efc88fd34ca05c32047131719869057a0d30ad19d590 node-v22.4.0-linux-s390x.tar.xz
-407531c82d4ccffa4231b82086f614f2de2e4008146aff124f7d76ebb87ea45a node-v22.4.0-linux-x64.tar.gz
-5ea7c609f4bfcdc20b872f2cf7c80ea4330e5b52164d5d701db97028f9628309 node-v22.4.0-linux-x64.tar.xz
-112e8d48e49f9960173e31bbe4b8c12c5fe95b6c907060e81ded400a0468d3fd node-v22.4.0.pkg
-b62cd83c9a57a11349883f89b1727a16e66c02eb6255a4bf32714ff5d93165f5 node-v22.4.0.tar.gz
-292b430084f2f32913dc7da4eb2fbc8969252772a9d1bfe8ae6c4b4a98ca3ad3 node-v22.4.0.tar.xz
-5f45a76ff5ba0400eb936446f395e4f058e91554659bb0005130767dffe17991 node-v22.4.0-win-arm64.7z
-222f68e2bc3527496712db83dbcf6e0b0618ffadea1bf3259019aa4c143b0d18 node-v22.4.0-win-arm64.zip
-c098207b8c009c6ecd080d64546016399c41c1ff874050ddf70307be5e4d2f5b node-v22.4.0-win-x64.7z
-ba7746d0c83367365332668c800d95e2e0a0b9b765fecc25d395e04fa5fd5c1d node-v22.4.0-win-x64.zip
-a3977767a4726ad7ce27b9ca78f53b6733fad29fc415e5d8ddbd865c8b75347f node-v22.4.0-win-x86.7z
-cb7d9f7d6803f3447ac91844736d060589ececc930159d12046a643451781b29 node-v22.4.0-win-x86.zip
-04ca0f66d06822159fc2e3d21d566645691425c4e3ee422aa8d55a3ac5d30ad6 node-v22.4.0-x64.msi
-3e7c379ed68603b646f785686f44e4d2c6d88640696366673aa4a34228a478ae node-v22.4.0-x86.msi
-2c39a66055b1d47b8647f5d01bc66864afe54091199a0947ee46450d0d6714ac win-arm64/node.exe
-30e63a6726cda6539eeb37c311adf915bccd5c1462723b97a6c07ac91e8ae728 win-arm64/node.lib
-09d7baa46c430757d62d4ed03b2f582446eedd7659d98ef76b4908badbe6765c win-arm64/node_pdb.7z
-d9a2dc235735b186fa059e9f87a724ec89a7df07f7cab51fb19014c2a8ba35a7 win-arm64/node_pdb.zip
-4e07f7a361170db55f9463fe5abfb39340f8f57849ee6839f1089fa095e5c430 win-x64/node.exe
-c4d08d45267da3625a30730bf5c8e41518f25d9809179feb267f1b393f5c5f05 win-x64/node.lib
-c7683f7309a7be898f6c8ba7dd0d14c02d15e0e87ee60dd83f9e53fa7be77085 win-x64/node_pdb.7z
-2cb700e32ad42fed6c1cc4aa8e792ec9caf28020b141050c6b99473c2f8df194 win-x64/node_pdb.zip
-39dfc52bacc268c959ce1952b38d42dddc56e05ff798ab1209d5c8a743ec868e win-x86/node.exe
-fc3bf3c1e561da1e1c152be9aa5ed1bce8d263a5124841a4ba41ebc37c727f3e win-x86/node.lib
-261dcb7bb9751fcb4338f0101946ccc12c4be38dcc17ae03db316a870d507893 win-x86/node_pdb.7z
-847c000dcdfbaccbad6d76c231d49e7862a19cba34ac2efe252e74e1ee3ee275 win-x86/node_pdb.zip
------BEGIN PGP SIGNATURE-----
-
-iQIzBAEBCAAdFiEEj8yhP+8dDC6RAI4Jdw96mlrhVgAFAmaDwFwACgkQdw96mlrh
-VgAFhg//e+fo6ByzG9J62eMbGUgtXRt9QYBT1Qkfe7AlBoAExFdoJgH+VLdVApMK
-odKiGQfu2OqsOPYBocLDa0cVLx7c7LQdae3IHOabTgOgj1NdB3H9gjzbDOpzfxy9
-ILeUNcsxJZnb6BNnD58cBPMsjLIsQ78Y5Xa6HCkpmfDaQnUtyexiSqvEl8jf5gQf
-E/1DLCKw5muIpF7I07JyoBTCSc63Eg9FK8E8dkkpcz9zj0BBovIVyajKGADs1p5O
-BZu6tV1GEOYq0RSEQk0+89tIfIzOSsDloBSh0Yq98oDEqKVPyApZUqNBapDkX+oK
-DDOAytpU7mrAmxvr3ChV73QutfNPzMj6m1YMbUVRYoJvhpgmt5xZA0lX8WTJ60tx
-dUcihHQVy1NhlPhiKtKelhuS7TiA4Z4B3TIGIMpIdgBbmY/pm7E4pZXgtPgaE0ke
-Jg8vx67iXBoyAVvb5GWzXsCPJ1bvDfvkAGSqW2HkWTCW+E2DrM+5jRUqX/wtZHSA
-IbtpySCfhKMaR8ZHHTWiq+B5N3gFE5p9XYx/bSUsaGPfshsxBXPQUeLmeOFfr7kB
-ZubuvVIgytmw9cD+jgb9UCdAQ6pK4qskj0K3rJ/QK/renV0xz6Cy56HNXUNsrxdI
-8WY2fbbMRgaghJqpVb6+xIe/Zg7OL0mHuz1WYaTCQgSDFjBTjkQ=
-=WxEV
------END PGP SIGNATURE-----
-```
diff --git a/sentry.client.config.ts b/sentry.client.config.ts
deleted file mode 100644
index f29159d28fc37..0000000000000
--- a/sentry.client.config.ts
+++ /dev/null
@@ -1,72 +0,0 @@
-import {
- BrowserClient,
- defaultStackParser,
- makeFetchTransport,
- setCurrentClient,
- breadcrumbsIntegration,
- dedupeIntegration,
- httpContextIntegration,
- linkedErrorsIntegration,
-} from '@sentry/nextjs';
-
-import {
- SENTRY_DSN,
- SENTRY_ENABLE,
- SENTRY_CAPTURE_RATE,
- SENTRY_TUNNEL,
-} from '@/sentry.constants.mjs';
-
-// This creates a custom Sentry Client with minimal integrations
-export const sentryClient = new BrowserClient({
- // Only run Sentry on Vercel Environment
- enabled: SENTRY_ENABLE,
- // Provide Sentry's Secret Key
- dsn: SENTRY_DSN,
- // Sentry's Error Transport Mechanism
- transport: makeFetchTransport,
- // Sentry's Stack Trace Parser
- stackParser: defaultStackParser,
- // All supported Integrations by us
- integrations: [
- dedupeIntegration(),
- httpContextIntegration(),
- breadcrumbsIntegration(),
- linkedErrorsIntegration(),
- ],
- // We only want to allow ingestion from these pre-selected allowed URLs
- // Note that the vercel.app prefix is for our Pull Request Branch Previews
- allowUrls: ['https://nodejs.org/', /^https:\/\/.+\.vercel\.app/],
- // Percentage of events to send to Sentry (1% of them) (for performance metrics)
- tracesSampleRate: SENTRY_CAPTURE_RATE,
- // Percentage of events to send to Sentry (1% of them) (for session replays)
- replaysSessionSampleRate: SENTRY_CAPTURE_RATE,
- // Percentage of events to send to Sentry (1% of them) (for session replays when error happens)
- replaysOnErrorSampleRate: 1.0,
- // Provides a custom Sentry Tunnel Router
- // @note these are components of the Sentry DSN string
- // @see @sentry/nextjs/esm/client/tunnelRoute.js
- tunnel: SENTRY_TUNNEL(`?o=4506191161786368&p=4506191307735040`),
- // Adds custom filtering before sending an Event to Sentry
- beforeSend: (event, hint) => {
- // Attempts to grab the original Exception before any "magic" happens
- const exception = hint.originalException as Error;
-
- // We only want to capture Errors that have a Stack Trace and that are not Anonymous Errors
- return exception?.stack && !exception.stack.includes('')
- ? event
- : null;
- },
-});
-
-// Attaches this Browser Client to Sentry
-setCurrentClient(sentryClient);
-
-// Loads this Dynamically to avoid adding this to the main bundle (initial load)
-const lazyLoadSentryIntegrations = async () => {
- const { addIntegration, replayIntegration, browserTracingIntegration } =
- await import('@sentry/nextjs');
- addIntegration(replayIntegration({ maskAllText: false }));
- addIntegration(browserTracingIntegration());
-};
-
-lazyLoadSentryIntegrations();
diff --git a/turbo.json b/turbo.json
index 08d456e7556a4..13bc9d9fdab63 100644
--- a/turbo.json
+++ b/turbo.json
@@ -1,140 +1,23 @@
{
"$schema": "https://turbo.build/schema.json",
- "globalEnv": ["NODE_ENV"],
"tasks": {
- "dev": {
- "cache": false,
- "persistent": true,
- "env": [
- "NEXT_PUBLIC_VERCEL_ENV",
- "NEXT_PUBLIC_STATIC_EXPORT",
- "NEXT_PUBLIC_BASE_URL",
- "NEXT_PUBLIC_VERCEL_URL",
- "NEXT_PUBLIC_DIST_URL",
- "NEXT_PUBLIC_DOCS_URL",
- "NEXT_PUBLIC_BASE_PATH",
- "NEXT_PUBLIC_ORAMA_API_KEY",
- "NEXT_PUBLIC_ORAMA_ENDPOINT",
- "NEXT_PUBLIC_VERCEL_REVALIDATE_TIME",
- "NEXT_PUBLIC_DATA_URL"
- ]
- },
- "build": {
- "inputs": [
- "{app,components,hooks,i18n,layouts,middlewares,pages,providers,types,util}/**/*.{ts,tsx}",
- "{app,components,layouts,pages,styles}/**/*.css",
- "{next-data,scripts,i18n}/**/*.{mjs,json}",
- "{app,pages}/**/*.{mdx,md}",
- "*.{md,mdx,json,ts,tsx,mjs,yml}"
- ],
- "outputs": [".next/**", "!.next/cache/**"],
- "env": [
- "NEXT_PUBLIC_VERCEL_ENV",
- "NEXT_PUBLIC_STATIC_EXPORT",
- "NEXT_PUBLIC_BASE_URL",
- "NEXT_PUBLIC_VERCEL_URL",
- "NEXT_PUBLIC_DIST_URL",
- "NEXT_PUBLIC_DOCS_URL",
- "NEXT_PUBLIC_BASE_PATH",
- "NEXT_PUBLIC_ORAMA_API_KEY",
- "NEXT_PUBLIC_ORAMA_ENDPOINT",
- "NEXT_PUBLIC_VERCEL_REVALIDATE_TIME",
- "NEXT_PUBLIC_DATA_URL"
- ]
- },
- "start": {
- "cache": false,
- "persistent": true,
- "env": [
- "NEXT_PUBLIC_VERCEL_ENV",
- "NEXT_PUBLIC_STATIC_EXPORT",
- "NEXT_PUBLIC_BASE_URL",
- "NEXT_PUBLIC_VERCEL_URL",
- "NEXT_PUBLIC_DIST_URL",
- "NEXT_PUBLIC_DOCS_URL",
- "NEXT_PUBLIC_BASE_PATH",
- "NEXT_PUBLIC_ORAMA_API_KEY",
- "NEXT_PUBLIC_ORAMA_ENDPOINT",
- "NEXT_PUBLIC_VERCEL_REVALIDATE_TIME",
- "NEXT_PUBLIC_DATA_URL"
- ]
- },
- "deploy": {
- "inputs": [
- "{app,components,hooks,i18n,layouts,middlewares,pages,providers,types,util}/**/*.{ts,tsx}",
- "{app,components,layouts,pages,styles}/**/*.css",
- "{next-data,scripts,i18n}/**/*.{mjs,json}",
- "{app,pages}/**/*.{mdx,md}",
- "*.{md,mdx,json,ts,tsx,mjs,yml}"
- ],
- "outputs": [".next/**", "!.next/cache/**"],
- "env": [
- "NEXT_PUBLIC_VERCEL_ENV",
- "NEXT_PUBLIC_STATIC_EXPORT",
- "NEXT_PUBLIC_BASE_URL",
- "NEXT_PUBLIC_VERCEL_URL",
- "NEXT_PUBLIC_DIST_URL",
- "NEXT_PUBLIC_DOCS_URL",
- "NEXT_PUBLIC_BASE_PATH",
- "NEXT_PUBLIC_ORAMA_API_KEY",
- "NEXT_PUBLIC_ORAMA_ENDPOINT",
- "NEXT_PUBLIC_VERCEL_REVALIDATE_TIME",
- "NEXT_PUBLIC_DATA_URL"
- ]
- },
- "lint:js": {
- "inputs": [
- "{app,components,hooks,i18n,layouts,middlewares,pages,providers,types,util}/**/*.{ts,tsx,mjs}",
- "{next-data,scripts,i18n}/**/*.{mjs,json}",
- "{.storybook,public}/**/*.{ts,js,json}",
- "*.{json,ts,tsx}"
- ],
- "outputs": [".eslintjscache"]
- },
- "lint:md": {
- "inputs": ["{app,pages}/**/*.{md,mdx}", "*.{md,mdx}"],
- "outputs": [".eslintmdcache"]
- },
- "lint:css": {
- "inputs": ["{app,components,layouts,pages,styles}/**/*.css"],
- "outputs": [".stylelintcache"]
- },
- "lint:fix": {
+ "scripts:release-post": {
"cache": false
},
- "prettier": {
+ "//#prettier": {
"outputs": [".prettiercache"]
},
- "prettier:fix": {
- "cache": false
- },
- "format": {
- "cache": false
+ "lint": {
+ "dependsOn": ["lint:md", "lint:css", "lint:js"]
},
- "storybook": {
- "cache": false,
- "persistent": true
+ "lint:lint-staged": {
+ "dependsOn": ["lint:md", "lint:css", "lint:js"]
},
- "storybook:build": {
- "inputs": [
- "{app,components,hooks,i18n,layouts,middlewares,pages,providers,types,util}/**/*.{ts,tsx}",
- "{app,components,layouts,pages,styles}/**/*.css",
- "{next-data,scripts,i18n}/**/*.{mjs,json}",
- "{.storybook,public}/**/*.{ts,js,css,json}",
- "{app,pages}/**/*.{mdx,md}",
- "*.{md,mdx,json,ts,tsx,mjs,yml}"
- ],
- "outputs": ["storybook-static/**"]
+ "check-types": {
+ "dependsOn": ["^topo"]
},
- "test:unit": {
- "inputs": [
- "{app,components,hooks,i18n,layouts,middlewares,pages,providers,types,util}/**/*.{ts,tsx,mjs}",
- "{app,components,layouts,pages,styles}/**/*.css",
- "{next-data,scripts,i18n}/**/*.{mjs,json}",
- "{app,pages}/**/*.{mdx,md}",
- "*.{md,mdx,json,ts,tsx,mjs,yml}"
- ],
- "outputs": ["coverage/**", "junit.xml"]
+ "topo": {
+ "dependsOn": ["^topo"]
}
}
}