desta versãoverificar o SHASUMS assinado
Consultar como compilar a Node.js a partir do código-fonte.
-
From 7f7342a741ab11d3563ae125c1ef162aa41d93fd Mon Sep 17 00:00:00 2001
From: "Node.js Crowdin Bot"
<148437438+nodejs-crowdin@users.noreply.github.com>
Date: Fri, 13 Sep 2024 15:48:32 +0200
Subject: [PATCH 079/108] chore: synced translations from crowdin [skip ci]
---
apps/site/pages/uk/download/source-code/index.mdx | 1 -
1 file changed, 1 deletion(-)
diff --git a/apps/site/pages/uk/download/source-code/index.mdx b/apps/site/pages/uk/download/source-code/index.mdx
index 1493d3c29b2c..e314d2418b0d 100644
--- a/apps/site/pages/uk/download/source-code/index.mdx
+++ b/apps/site/pages/uk/download/source-code/index.mdx
@@ -20,5 +20,4 @@ Node.js містить .
Дізнайтеся, як перевірити підписані SHASUMS
Дізнайтеся, як зібрати Node.js із вихідного коду.
-
From 9828eb9b14f06958240e696bf593fe0ca10dc823 Mon Sep 17 00:00:00 2001
From: "Node.js Crowdin Bot"
<148437438+nodejs-crowdin@users.noreply.github.com>
Date: Fri, 13 Sep 2024 15:48:34 +0200
Subject: [PATCH 080/108] chore: synced translations from crowdin [skip ci]
---
apps/site/pages/zh-cn/download/source-code/index.mdx | 1 -
1 file changed, 1 deletion(-)
diff --git a/apps/site/pages/zh-cn/download/source-code/index.mdx b/apps/site/pages/zh-cn/download/source-code/index.mdx
index 79c96f973038..a25a1e1b1161 100644
--- a/apps/site/pages/zh-cn/download/source-code/index.mdx
+++ b/apps/site/pages/zh-cn/download/source-code/index.mdx
@@ -20,5 +20,4 @@ Node.js 已包含 。
学习如何 验证签名的 SHASUMS。
查看如何从源代码构建 Node.js。
-
From 33f37feafef23e3a2f2428cbcb0c7024d05dc9ca Mon Sep 17 00:00:00 2001
From: "Node.js Crowdin Bot"
<148437438+nodejs-crowdin@users.noreply.github.com>
Date: Fri, 13 Sep 2024 15:48:35 +0200
Subject: [PATCH 081/108] chore: synced translations from crowdin [skip ci]
---
apps/site/pages/zh-tw/download/source-code/index.mdx | 1 -
1 file changed, 1 deletion(-)
diff --git a/apps/site/pages/zh-tw/download/source-code/index.mdx b/apps/site/pages/zh-tw/download/source-code/index.mdx
index 66421f326582..6262b4fc2aaf 100644
--- a/apps/site/pages/zh-tw/download/source-code/index.mdx
+++ b/apps/site/pages/zh-tw/download/source-code/index.mdx
@@ -20,5 +20,4 @@ Node.js 內含 。
瞭解如何驗證已簽署的 SHASUMS
探索如何從原始碼建構 Node.js
-
From 08e2c5cf4c414cdf42dcda0ca64bba261f991de0 Mon Sep 17 00:00:00 2001
From: "Node.js Crowdin Bot"
<148437438+nodejs-crowdin@users.noreply.github.com>
Date: Fri, 13 Sep 2024 15:48:36 +0200
Subject: [PATCH 082/108] chore: synced translations from crowdin [skip ci]
---
apps/site/pages/id/download/source-code/index.mdx | 1 -
1 file changed, 1 deletion(-)
diff --git a/apps/site/pages/id/download/source-code/index.mdx b/apps/site/pages/id/download/source-code/index.mdx
index 0979f0795113..9752fa9e466a 100644
--- a/apps/site/pages/id/download/source-code/index.mdx
+++ b/apps/site/pages/id/download/source-code/index.mdx
@@ -20,5 +20,4 @@ Baca pos artikel untuk versi ini
Pelajari cara memverifikasi SHASUMS yang ditandatangani
Lihat bagaimana cara membangun Node.js dari sumber.
-
From a7246fce51938b15ed3d1612de04aec453619ed0 Mon Sep 17 00:00:00 2001
From: "Node.js Crowdin Bot"
<148437438+nodejs-crowdin@users.noreply.github.com>
Date: Fri, 13 Sep 2024 15:48:37 +0200
Subject: [PATCH 083/108] chore: synced translations from crowdin [skip ci]
---
apps/site/pages/fa/download/source-code/index.mdx | 1 -
1 file changed, 1 deletion(-)
diff --git a/apps/site/pages/fa/download/source-code/index.mdx b/apps/site/pages/fa/download/source-code/index.mdx
index 25599aa1b2b0..3b5cdd32cd74 100644
--- a/apps/site/pages/fa/download/source-code/index.mdx
+++ b/apps/site/pages/fa/download/source-code/index.mdx
@@ -20,5 +20,4 @@ Node.js شامل است.
یاد بگیرید که چگونه امضاهای SHASUMS را تایید کنید
نحوه ساخت Node.js از سورس کد را ببینید.
-
From 0616fa1cdcd803baab8be23d38cf59e61a1e9948 Mon Sep 17 00:00:00 2001
From: "Node.js Crowdin Bot"
<148437438+nodejs-crowdin@users.noreply.github.com>
Date: Fri, 13 Sep 2024 15:48:39 +0200
Subject: [PATCH 084/108] chore: synced translations from crowdin [skip ci]
---
apps/site/pages/fr/index.mdx | 171 +++++++++++++++++------------------
1 file changed, 82 insertions(+), 89 deletions(-)
diff --git a/apps/site/pages/fr/index.mdx b/apps/site/pages/fr/index.mdx
index 54262c84798a..0d45f38a64b9 100644
--- a/apps/site/pages/fr/index.mdx
+++ b/apps/site/pages/fr/index.mdx
@@ -9,9 +9,8 @@ layout: home
Exécuter du JavaScript partout
-Node.js® est un environnement d'exécution JavaScript gratuit, open-source et multiplateforme qui permet aux développeurs de créer des serveurs, des applications web et des applications de gestion de contenu.
-qui permet aux développeurs de créer des serveurs, des applications web, des outils en ligne de commande et des scripts.
-
+ Node.js® est un environnement d'exécution JavaScript gratuit, open-source et multiplateforme qui permet aux développeurs de créer des serveurs, des applications web et des applications de gestion de contenu.
+ qui permet aux développeurs de créer des serveurs, des applications web, des outils en ligne de commande et des scripts.
@@ -46,93 +45,87 @@ qui permet aux développeurs de créer des serveurs, des applications web, des o
// server.mjs
import { createServer } from 'node:http';
-const server = createServer((req, res) => {
-res.writeHead(200, { 'Content-Type': 'text/plain' });
-res.end('Hello World!\n');
-});
-
-// starts a simple http server locally on port 3000
-server.listen(3000, '127.0.0.1', () => {
-console.log('Listening on 127.0.0.1:3000');
-});
-
-// run with `node server.mjs`
-
-````
-
-```js displayName="Write Tests"
-// tests.mjs
-import assert from 'node:assert';
-import test from 'node:test';
-
-test('that 1 is equal 1', () => {
- assert.strictEqual(1, 1);
-});
-
-test('that throws as 1 is not equal 2', () => {
- // throws an exception because 1 != 2
- assert.strictEqual(1, 2);
-});
-
-// run with `node tests.mjs`
-````
-
-```js displayName="Read and Hash a File"
-// crypto.mjs
-import { createHash } from 'node:crypto';
-import { readFile } from 'node:fs/promises';
-
-const hasher = createHash('sha1');
-
-hasher.setEncoding('hex');
-// ensure you have a `package.json` file for this test!
-hasher.write(await readFile('package.json'));
-hasher.end();
-
-const fileHash = hasher.read();
-
-// run with `node crypto.mjs`
-```
-
-```js displayName="Streams Pipeline"
-// streams.mjs
-import { pipeline } from 'node:stream/promises';
-import { createReadStream, createWriteStream } from 'node:fs';
-import { createGzip } from 'node:zlib';
-
-// ensure you have a `package.json` file for this test!
-await pipeline(
- createReadStream('package.json'),
- createGzip(),
- createWriteStream('package.json.gz')
-);
-
-// run with `node streams.mjs`
-```
-
-```js displayName="Work with Threads"
-// threads.mjs
-import {
- Worker,
- isMainThread,
- workerData,
- parentPort,
-} from 'node:worker_threads';
-
-if (isMainThread) {
- const data = 'some data';
- const worker = new Worker(import.meta.filename, { workerData: data });
- worker.on('message', msg => console.log('Reply from Thread:', msg));
-} else {
- const source = workerData;
- parentPort.postMessage(btoa(source.toUpperCase()));
-}
-
-// run with `node threads.mjs`
-```
-
+ const server = createServer((req, res) => {
+ res.writeHead(200, { 'Content-Type': 'text/plain' });
+ res.end('Hello World!\n');
+ });
+
+ // starts a simple http server locally on port 3000
+ server.listen(3000, '127.0.0.1', () => {
+ console.log('Listening on 127.0.0.1:3000');
+ });
+
+ // run with `node server.mjs`
+ ```
+
+ ```js displayName="Write Tests"
+ // tests.mjs
+ import assert from 'node:assert';
+ import test from 'node:test';
+
+ test('that 1 is equal 1', () => {
+ assert.strictEqual(1, 1);
+ });
+
+ test('that throws as 1 is not equal 2', () => {
+ // throws an exception because 1 != 2
+ assert.strictEqual(1, 2);
+ });
+
+ // run with `node tests.mjs`
+ ```
+
+ ```js displayName="Read and Hash a File"
+ // crypto.mjs
+ import { createHash } from 'node:crypto';
+ import { readFile } from 'node:fs/promises';
+
+ const hasher = createHash('sha1');
+
+ hasher.setEncoding('hex');
+ // ensure you have a `package.json` file for this test!
+ hasher.write(await readFile('package.json'));
+ hasher.end();
+
+ const fileHash = hasher.read();
+
+ // run with `node crypto.mjs`
+ ```
+
+ ```js displayName="Streams Pipeline"
+ // streams.mjs
+ import { pipeline } from 'node:stream/promises';
+ import { createReadStream, createWriteStream } from 'node:fs';
+ import { createGzip } from 'node:zlib';
+
+ // ensure you have a `package.json` file for this test!
+ await pipeline
+ (
+ createReadStream('package.json'),
+ createGzip(),
+ createWriteStream('package.json.gz')
+ );
+
+ // run with `node streams.mjs`
+ ```
+
+ ```js displayName="Work with Threads"
+ // threads.mjs
+ import { Worker, isMainThread,
+ workerData, parentPort } from 'node:worker_threads';
+
+ if (isMainThread) {
+ const data = 'some data';
+ const worker = new Worker(import.meta.filename, { workerData: data });
+ worker.on('message', msg => console.log('Reply from Thread:', msg));
+ } else {
+ const source = workerData;
+ parentPort.postMessage(btoa(source.toUpperCase()));
+ }
+
+ // run with `node threads.mjs`
+ ```
Apprenez-en plus sur ce que Node.js est capable d'offrir avec notre [Matériel d'apprentissage](/learn).
-
From 60d6b76490b5e14821ae55a921ab86299187ac82 Mon Sep 17 00:00:00 2001
From: "Node.js Crowdin Bot"
<148437438+nodejs-crowdin@users.noreply.github.com>
Date: Fri, 13 Sep 2024 15:48:41 +0200
Subject: [PATCH 085/108] chore: synced translations from crowdin [skip ci]
---
apps/site/pages/ja/index.mdx | 169 +++++++++++++++++------------------
1 file changed, 81 insertions(+), 88 deletions(-)
diff --git a/apps/site/pages/ja/index.mdx b/apps/site/pages/ja/index.mdx
index ba34b86b0c6c..b332eb3fc605 100644
--- a/apps/site/pages/ja/index.mdx
+++ b/apps/site/pages/ja/index.mdx
@@ -9,8 +9,7 @@ layout: home
Run JavaScript Everywhere
-Node.js®は自由かつオープンソースでクロスプラットフォームに対応したJavaScript実行環境です。開発者にサーバー、ウェブアプリ、コマンドラインツール、スクリプトの開発環境を提供します。
-
+ Node.js®は自由かつオープンソースでクロスプラットフォームに対応したJavaScript実行環境です。開発者にサーバー、ウェブアプリ、コマンドラインツール、スクリプトの開発環境を提供します。
@@ -45,93 +44,87 @@ Node.js®は自由かつオープンソースでクロスプラットフォー
// server.mjs
import { createServer } from 'node:http';
-const server = createServer((req, res) => {
-res.writeHead(200, { 'Content-Type': 'text/plain' });
-res.end('Hello World!\n');
-});
-
-// starts a simple http server locally on port 3000
-server.listen(3000, '127.0.0.1', () => {
-console.log('Listening on 127.0.0.1:3000');
-});
-
-// run with `node server.mjs`
-
-````
-
-```js displayName="Write Tests"
-// tests.mjs
-import assert from 'node:assert';
-import test from 'node:test';
-
-test('that 1 is equal 1', () => {
- assert.strictEqual(1, 1);
-});
-
-test('that throws as 1 is not equal 2', () => {
- // throws an exception because 1 != 2
- assert.strictEqual(1, 2);
-});
-
-// run with `node tests.mjs`
-````
-
-```js displayName="Read and Hash a File"
-// crypto.mjs
-import { createHash } from 'node:crypto';
-import { readFile } from 'node:fs/promises';
-
-const hasher = createHash('sha1');
-
-hasher.setEncoding('hex');
-// ensure you have a `package.json` file for this test!
-hasher.write(await readFile('package.json'));
-hasher.end();
-
-const fileHash = hasher.read();
-
-// run with `node crypto.mjs`
-```
-
-```js displayName="Streams Pipeline"
-// streams.mjs
-import { pipeline } from 'node:stream/promises';
-import { createReadStream, createWriteStream } from 'node:fs';
-import { createGzip } from 'node:zlib';
-
-// ensure you have a `package.json` file for this test!
-await pipeline(
- createReadStream('package.json'),
- createGzip(),
- createWriteStream('package.json.gz')
-);
-
-// run with `node streams.mjs`
-```
-
-```js displayName="Work with Threads"
-// threads.mjs
-import {
- Worker,
- isMainThread,
- workerData,
- parentPort,
-} from 'node:worker_threads';
-
-if (isMainThread) {
- const data = 'some data';
- const worker = new Worker(import.meta.filename, { workerData: data });
- worker.on('message', msg => console.log('Reply from Thread:', msg));
-} else {
- const source = workerData;
- parentPort.postMessage(btoa(source.toUpperCase()));
-}
-
-// run with `node threads.mjs`
-```
-
+ const server = createServer((req, res) => {
+ res.writeHead(200, { 'Content-Type': 'text/plain' });
+ res.end('Hello World!\n');
+ });
+
+ // starts a simple http server locally on port 3000
+ server.listen(3000, '127.0.0.1', () => {
+ console.log('Listening on 127.0.0.1:3000');
+ });
+
+ // run with `node server.mjs`
+ ```
+
+ ```js displayName="Write Tests"
+ // tests.mjs
+ import assert from 'node:assert';
+ import test from 'node:test';
+
+ test('that 1 is equal 1', () => {
+ assert.strictEqual(1, 1);
+ });
+
+ test('that throws as 1 is not equal 2', () => {
+ // throws an exception because 1 != 2
+ assert.strictEqual(1, 2);
+ });
+
+ // run with `node tests.mjs`
+ ```
+
+ ```js displayName="Read and Hash a File"
+ // crypto.mjs
+ import { createHash } from 'node:crypto';
+ import { readFile } from 'node:fs/promises';
+
+ const hasher = createHash('sha1');
+
+ hasher.setEncoding('hex');
+ // ensure you have a `package.json` file for this test!
+ hasher.write(await readFile('package.json'));
+ hasher.end();
+
+ const fileHash = hasher.read();
+
+ // run with `node crypto.mjs`
+ ```
+
+ ```js displayName="Streams Pipeline"
+ // streams.mjs
+ import { pipeline } from 'node:stream/promises';
+ import { createReadStream, createWriteStream } from 'node:fs';
+ import { createGzip } from 'node:zlib';
+
+ // ensure you have a `package.json` file for this test!
+ await pipeline
+ (
+ createReadStream('package.json'),
+ createGzip(),
+ createWriteStream('package.json.gz')
+ );
+
+ // run with `node streams.mjs`
+ ```
+
+ ```js displayName="Work with Threads"
+ // threads.mjs
+ import { Worker, isMainThread,
+ workerData, parentPort } from 'node:worker_threads';
+
+ if (isMainThread) {
+ const data = 'some data';
+ const worker = new Worker(import.meta.filename, { workerData: data });
+ worker.on('message', msg => console.log('Reply from Thread:', msg));
+ } else {
+ const source = workerData;
+ parentPort.postMessage(btoa(source.toUpperCase()));
+ }
+
+ // run with `node threads.mjs`
+ ```
私たちの[学習教材](/learn)でNode.jsでできることをさらに学んでみましょう。
-
From e36412f265cf5c67517827b9c8c3bbe0922dea9f Mon Sep 17 00:00:00 2001
From: "Node.js Crowdin Bot"
<148437438+nodejs-crowdin@users.noreply.github.com>
Date: Fri, 13 Sep 2024 15:48:42 +0200
Subject: [PATCH 086/108] chore: synced translations from crowdin [skip ci]
---
apps/site/pages/ko/index.mdx | 169 +++++++++++++++++------------------
1 file changed, 81 insertions(+), 88 deletions(-)
diff --git a/apps/site/pages/ko/index.mdx b/apps/site/pages/ko/index.mdx
index 7fb3d0a27bbe..e98a3225a94e 100644
--- a/apps/site/pages/ko/index.mdx
+++ b/apps/site/pages/ko/index.mdx
@@ -9,8 +9,7 @@ layout: home
어디서든 JavaScript를 실행하세요!!
-Node.js®는 무료, 오픈소스, 크로스플랫폼 JavaSript 런타임 환경으로 개발자 여러분이 서버, 웹 앱, 커맨드 작성 도구와 스크립트를 만들도록 해줍니다.
-
+ Node.js®는 무료, 오픈소스, 크로스플랫폼 JavaSript 런타임 환경으로 개발자 여러분이 서버, 웹 앱, 커맨드 작성 도구와 스크립트를 만들도록 해줍니다.
@@ -45,93 +44,87 @@ Node.js®는 무료, 오픈소스, 크로스플랫폼 JavaSript 런타임 환경
// server.mjs
import { createServer } from 'node:http';
-const server = createServer((req, res) => {
-res.writeHead(200, { 'Content-Type': 'text/plain' });
-res.end('Hello World!\n');
-});
-
-// starts a simple http server locally on port 3000
-server.listen(3000, '127.0.0.1', () => {
-console.log('Listening on 127.0.0.1:3000');
-});
-
-// run with `node server.mjs`
-
-````
-
-```js displayName="Write Tests"
-// tests.mjs
-import assert from 'node:assert';
-import test from 'node:test';
-
-test('that 1 is equal 1', () => {
- assert.strictEqual(1, 1);
-});
-
-test('that throws as 1 is not equal 2', () => {
- // throws an exception because 1 != 2
- assert.strictEqual(1, 2);
-});
-
-// run with `node tests.mjs`
-````
-
-```js displayName="Read and Hash a File"
-// crypto.mjs
-import { createHash } from 'node:crypto';
-import { readFile } from 'node:fs/promises';
-
-const hasher = createHash('sha1');
-
-hasher.setEncoding('hex');
-// ensure you have a `package.json` file for this test!
-hasher.write(await readFile('package.json'));
-hasher.end();
-
-const fileHash = hasher.read();
-
-// run with `node crypto.mjs`
-```
-
-```js displayName="Streams Pipeline"
-// streams.mjs
-import { pipeline } from 'node:stream/promises';
-import { createReadStream, createWriteStream } from 'node:fs';
-import { createGzip } from 'node:zlib';
-
-// ensure you have a `package.json` file for this test!
-await pipeline(
- createReadStream('package.json'),
- createGzip(),
- createWriteStream('package.json.gz')
-);
-
-// run with `node streams.mjs`
-```
-
-```js displayName="Work with Threads"
-// threads.mjs
-import {
- Worker,
- isMainThread,
- workerData,
- parentPort,
-} from 'node:worker_threads';
-
-if (isMainThread) {
- const data = 'some data';
- const worker = new Worker(import.meta.filename, { workerData: data });
- worker.on('message', msg => console.log('Reply from Thread:', msg));
-} else {
- const source = workerData;
- parentPort.postMessage(btoa(source.toUpperCase()));
-}
-
-// run with `node threads.mjs`
-```
-
+ const server = createServer((req, res) => {
+ res.writeHead(200, { 'Content-Type': 'text/plain' });
+ res.end('Hello World!\n');
+ });
+
+ // starts a simple http server locally on port 3000
+ server.listen(3000, '127.0.0.1', () => {
+ console.log('Listening on 127.0.0.1:3000');
+ });
+
+ // run with `node server.mjs`
+ ```
+
+ ```js displayName="Write Tests"
+ // tests.mjs
+ import assert from 'node:assert';
+ import test from 'node:test';
+
+ test('that 1 is equal 1', () => {
+ assert.strictEqual(1, 1);
+ });
+
+ test('that throws as 1 is not equal 2', () => {
+ // throws an exception because 1 != 2
+ assert.strictEqual(1, 2);
+ });
+
+ // run with `node tests.mjs`
+ ```
+
+ ```js displayName="Read and Hash a File"
+ // crypto.mjs
+ import { createHash } from 'node:crypto';
+ import { readFile } from 'node:fs/promises';
+
+ const hasher = createHash('sha1');
+
+ hasher.setEncoding('hex');
+ // ensure you have a `package.json` file for this test!
+ hasher.write(await readFile('package.json'));
+ hasher.end();
+
+ const fileHash = hasher.read();
+
+ // run with `node crypto.mjs`
+ ```
+
+ ```js displayName="Streams Pipeline"
+ // streams.mjs
+ import { pipeline } from 'node:stream/promises';
+ import { createReadStream, createWriteStream } from 'node:fs';
+ import { createGzip } from 'node:zlib';
+
+ // ensure you have a `package.json` file for this test!
+ await pipeline
+ (
+ createReadStream('package.json'),
+ createGzip(),
+ createWriteStream('package.json.gz')
+ );
+
+ // run with `node streams.mjs`
+ ```
+
+ ```js displayName="Work with Threads"
+ // threads.mjs
+ import { Worker, isMainThread,
+ workerData, parentPort } from 'node:worker_threads';
+
+ if (isMainThread) {
+ const data = 'some data';
+ const worker = new Worker(import.meta.filename, { workerData: data });
+ worker.on('message', msg => console.log('Reply from Thread:', msg));
+ } else {
+ const source = workerData;
+ parentPort.postMessage(btoa(source.toUpperCase()));
+ }
+
+ // run with `node threads.mjs`
+ ```
Node.js에 대해 더 알고 싶다면 학습 자료를 확인하세요[Learning materials](/learn).
-
From 9e847b73f67d40c39c4ec84cf251ad1f1831d9b5 Mon Sep 17 00:00:00 2001
From: "Node.js Crowdin Bot"
<148437438+nodejs-crowdin@users.noreply.github.com>
Date: Fri, 13 Sep 2024 15:48:44 +0200
Subject: [PATCH 087/108] chore: synced translations from crowdin [skip ci]
---
apps/site/pages/pt/index.mdx | 169 +++++++++++++++++------------------
1 file changed, 81 insertions(+), 88 deletions(-)
diff --git a/apps/site/pages/pt/index.mdx b/apps/site/pages/pt/index.mdx
index 3b0d913dfe3c..8310b9ce783b 100644
--- a/apps/site/pages/pt/index.mdx
+++ b/apps/site/pages/pt/index.mdx
@@ -9,8 +9,7 @@ layout: home
Executar a JavaScript em Toda Parte
-Node.js® é uma ambiente de execução de JavaScript disponível para várias plataformas, de código aberto e gratuita, que permite os programadores criar servidores, aplicações da Web, ferramentas de linha de comando e programas de automação de tarefas.
-
+ Node.js® é uma ambiente de execução de JavaScript disponível para várias plataformas, de código aberto e gratuita, que permite os programadores criar servidores, aplicações da Web, ferramentas de linha de comando e programas de automação de tarefas.
@@ -45,93 +44,87 @@ Node.js® é uma ambiente de execução de JavaScript disponível para várias p
// server.mjs
import { createServer } from 'node:http';
-const server = createServer((req, res) => {
-res.writeHead(200, { 'Content-Type': 'text/plain' });
-res.end('Hello World!\n');
-});
-
-// starts a simple http server locally on port 3000
-server.listen(3000, '127.0.0.1', () => {
-console.log('Listening on 127.0.0.1:3000');
-});
-
-// run with `node server.mjs`
-
-````
-
-```js displayName="Write Tests"
-// tests.mjs
-import assert from 'node:assert';
-import test from 'node:test';
-
-test('that 1 is equal 1', () => {
- assert.strictEqual(1, 1);
-});
-
-test('that throws as 1 is not equal 2', () => {
- // throws an exception because 1 != 2
- assert.strictEqual(1, 2);
-});
-
-// run with `node tests.mjs`
-````
-
-```js displayName="Read and Hash a File"
-// crypto.mjs
-import { createHash } from 'node:crypto';
-import { readFile } from 'node:fs/promises';
-
-const hasher = createHash('sha1');
-
-hasher.setEncoding('hex');
-// ensure you have a `package.json` file for this test!
-hasher.write(await readFile('package.json'));
-hasher.end();
-
-const fileHash = hasher.read();
-
-// run with `node crypto.mjs`
-```
-
-```js displayName="Streams Pipeline"
-// streams.mjs
-import { pipeline } from 'node:stream/promises';
-import { createReadStream, createWriteStream } from 'node:fs';
-import { createGzip } from 'node:zlib';
-
-// ensure you have a `package.json` file for this test!
-await pipeline(
- createReadStream('package.json'),
- createGzip(),
- createWriteStream('package.json.gz')
-);
-
-// run with `node streams.mjs`
-```
-
-```js displayName="Work with Threads"
-// threads.mjs
-import {
- Worker,
- isMainThread,
- workerData,
- parentPort,
-} from 'node:worker_threads';
-
-if (isMainThread) {
- const data = 'some data';
- const worker = new Worker(import.meta.filename, { workerData: data });
- worker.on('message', msg => console.log('Reply from Thread:', msg));
-} else {
- const source = workerData;
- parentPort.postMessage(btoa(source.toUpperCase()));
-}
-
-// run with `node threads.mjs`
-```
-
+ const server = createServer((req, res) => {
+ res.writeHead(200, { 'Content-Type': 'text/plain' });
+ res.end('Hello World!\n');
+ });
+
+ // starts a simple http server locally on port 3000
+ server.listen(3000, '127.0.0.1', () => {
+ console.log('Listening on 127.0.0.1:3000');
+ });
+
+ // run with `node server.mjs`
+ ```
+
+ ```js displayName="Write Tests"
+ // tests.mjs
+ import assert from 'node:assert';
+ import test from 'node:test';
+
+ test('that 1 is equal 1', () => {
+ assert.strictEqual(1, 1);
+ });
+
+ test('that throws as 1 is not equal 2', () => {
+ // throws an exception because 1 != 2
+ assert.strictEqual(1, 2);
+ });
+
+ // run with `node tests.mjs`
+ ```
+
+ ```js displayName="Read and Hash a File"
+ // crypto.mjs
+ import { createHash } from 'node:crypto';
+ import { readFile } from 'node:fs/promises';
+
+ const hasher = createHash('sha1');
+
+ hasher.setEncoding('hex');
+ // ensure you have a `package.json` file for this test!
+ hasher.write(await readFile('package.json'));
+ hasher.end();
+
+ const fileHash = hasher.read();
+
+ // run with `node crypto.mjs`
+ ```
+
+ ```js displayName="Streams Pipeline"
+ // streams.mjs
+ import { pipeline } from 'node:stream/promises';
+ import { createReadStream, createWriteStream } from 'node:fs';
+ import { createGzip } from 'node:zlib';
+
+ // ensure you have a `package.json` file for this test!
+ await pipeline
+ (
+ createReadStream('package.json'),
+ createGzip(),
+ createWriteStream('package.json.gz')
+ );
+
+ // run with `node streams.mjs`
+ ```
+
+ ```js displayName="Work with Threads"
+ // threads.mjs
+ import { Worker, isMainThread,
+ workerData, parentPort } from 'node:worker_threads';
+
+ if (isMainThread) {
+ const data = 'some data';
+ const worker = new Worker(import.meta.filename, { workerData: data });
+ worker.on('message', msg => console.log('Reply from Thread:', msg));
+ } else {
+ const source = workerData;
+ parentPort.postMessage(btoa(source.toUpperCase()));
+ }
+
+ // run with `node threads.mjs`
+ ```
Podemos saber mais do que a Node.js é capaz de oferecer com os nossos [materiais de aprendizado](/learn).
-
From 451f58a54fc7cb9e10b155f96f78c7a78e25f464 Mon Sep 17 00:00:00 2001
From: "Node.js Crowdin Bot"
<148437438+nodejs-crowdin@users.noreply.github.com>
Date: Fri, 13 Sep 2024 15:48:45 +0200
Subject: [PATCH 088/108] chore: synced translations from crowdin [skip ci]
---
apps/site/pages/uk/index.mdx | 169 +++++++++++++++++------------------
1 file changed, 81 insertions(+), 88 deletions(-)
diff --git a/apps/site/pages/uk/index.mdx b/apps/site/pages/uk/index.mdx
index 4e4bf73d5184..e72f35a210c3 100644
--- a/apps/site/pages/uk/index.mdx
+++ b/apps/site/pages/uk/index.mdx
@@ -9,8 +9,7 @@ layout: home
Запускайте JavaScript будь-де
-Node.js® — це безплатне, кросплатформне середовище виконання JavaScript із відкритим кодом, яке дозволяє розробникам створювати сервери, вебзастосунки, інструменти командного рядка та скрипти.
-
+ Node.js® — це безплатне, кросплатформне середовище виконання JavaScript із відкритим кодом, яке дозволяє розробникам створювати сервери, вебзастосунки, інструменти командного рядка та скрипти.
@@ -45,93 +44,87 @@ Node.js® — це безплатне, кросплатформне середо
// server.mjs
import { createServer } from 'node:http';
-const server = createServer((req, res) => {
-res.writeHead(200, { 'Content-Type': 'text/plain' });
-res.end('Hello World!\n');
-});
-
-// starts a simple http server locally on port 3000
-server.listen(3000, '127.0.0.1', () => {
-console.log('Listening on 127.0.0.1:3000');
-});
-
-// run with `node server.mjs`
-
-````
-
-```js displayName="Write Tests"
-// tests.mjs
-import assert from 'node:assert';
-import test from 'node:test';
-
-test('that 1 is equal 1', () => {
- assert.strictEqual(1, 1);
-});
-
-test('that throws as 1 is not equal 2', () => {
- // throws an exception because 1 != 2
- assert.strictEqual(1, 2);
-});
-
-// run with `node tests.mjs`
-````
-
-```js displayName="Read and Hash a File"
-// crypto.mjs
-import { createHash } from 'node:crypto';
-import { readFile } from 'node:fs/promises';
-
-const hasher = createHash('sha1');
-
-hasher.setEncoding('hex');
-// ensure you have a `package.json` file for this test!
-hasher.write(await readFile('package.json'));
-hasher.end();
-
-const fileHash = hasher.read();
-
-// run with `node crypto.mjs`
-```
-
-```js displayName="Streams Pipeline"
-// streams.mjs
-import { pipeline } from 'node:stream/promises';
-import { createReadStream, createWriteStream } from 'node:fs';
-import { createGzip } from 'node:zlib';
-
-// ensure you have a `package.json` file for this test!
-await pipeline(
- createReadStream('package.json'),
- createGzip(),
- createWriteStream('package.json.gz')
-);
-
-// run with `node streams.mjs`
-```
-
-```js displayName="Work with Threads"
-// threads.mjs
-import {
- Worker,
- isMainThread,
- workerData,
- parentPort,
-} from 'node:worker_threads';
-
-if (isMainThread) {
- const data = 'some data';
- const worker = new Worker(import.meta.filename, { workerData: data });
- worker.on('message', msg => console.log('Reply from Thread:', msg));
-} else {
- const source = workerData;
- parentPort.postMessage(btoa(source.toUpperCase()));
-}
-
-// run with `node threads.mjs`
-```
-
+ const server = createServer((req, res) => {
+ res.writeHead(200, { 'Content-Type': 'text/plain' });
+ res.end('Hello World!\n');
+ });
+
+ // starts a simple http server locally on port 3000
+ server.listen(3000, '127.0.0.1', () => {
+ console.log('Listening on 127.0.0.1:3000');
+ });
+
+ // run with `node server.mjs`
+ ```
+
+ ```js displayName="Write Tests"
+ // tests.mjs
+ import assert from 'node:assert';
+ import test from 'node:test';
+
+ test('that 1 is equal 1', () => {
+ assert.strictEqual(1, 1);
+ });
+
+ test('that throws as 1 is not equal 2', () => {
+ // throws an exception because 1 != 2
+ assert.strictEqual(1, 2);
+ });
+
+ // run with `node tests.mjs`
+ ```
+
+ ```js displayName="Read and Hash a File"
+ // crypto.mjs
+ import { createHash } from 'node:crypto';
+ import { readFile } from 'node:fs/promises';
+
+ const hasher = createHash('sha1');
+
+ hasher.setEncoding('hex');
+ // ensure you have a `package.json` file for this test!
+ hasher.write(await readFile('package.json'));
+ hasher.end();
+
+ const fileHash = hasher.read();
+
+ // run with `node crypto.mjs`
+ ```
+
+ ```js displayName="Streams Pipeline"
+ // streams.mjs
+ import { pipeline } from 'node:stream/promises';
+ import { createReadStream, createWriteStream } from 'node:fs';
+ import { createGzip } from 'node:zlib';
+
+ // ensure you have a `package.json` file for this test!
+ await pipeline
+ (
+ createReadStream('package.json'),
+ createGzip(),
+ createWriteStream('package.json.gz')
+ );
+
+ // run with `node streams.mjs`
+ ```
+
+ ```js displayName="Work with Threads"
+ // threads.mjs
+ import { Worker, isMainThread,
+ workerData, parentPort } from 'node:worker_threads';
+
+ if (isMainThread) {
+ const data = 'some data';
+ const worker = new Worker(import.meta.filename, { workerData: data });
+ worker.on('message', msg => console.log('Reply from Thread:', msg));
+ } else {
+ const source = workerData;
+ parentPort.postMessage(btoa(source.toUpperCase()));
+ }
+
+ // run with `node threads.mjs`
+ ```
Дізнайтеся більше про можливості Node.js із [нашими навчальними матеріалами](/learn).
-
From 1d5e521bdee6afcac3febfdfeaeb85fd09472b0a Mon Sep 17 00:00:00 2001
From: "Node.js Crowdin Bot"
<148437438+nodejs-crowdin@users.noreply.github.com>
Date: Fri, 13 Sep 2024 15:48:47 +0200
Subject: [PATCH 089/108] chore: synced translations from crowdin [skip ci]
---
apps/site/pages/zh-cn/index.mdx | 169 +++++++++++++++-----------------
1 file changed, 81 insertions(+), 88 deletions(-)
diff --git a/apps/site/pages/zh-cn/index.mdx b/apps/site/pages/zh-cn/index.mdx
index 8b6a9ad0caa3..6805a9ce9f5d 100644
--- a/apps/site/pages/zh-cn/index.mdx
+++ b/apps/site/pages/zh-cn/index.mdx
@@ -9,8 +9,7 @@ layout: home
在任何地方运行 JavaScript
-Node.js® 是一个免费、开源、跨平台的 JavaScript 运行时环境,它让开发人员能够创建服务器、Web 应用、命令行工具和脚本。
-
+ Node.js® 是一个免费、开源、跨平台的 JavaScript 运行时环境,它让开发人员能够创建服务器、Web 应用、命令行工具和脚本。
@@ -45,93 +44,87 @@ Node.js® 是一个免费、开源、跨平台的 JavaScript 运行时环境,
// server.mjs
import { createServer } from 'node:http';
-const server = createServer((req, res) => {
-res.writeHead(200, { 'Content-Type': 'text/plain' });
-res.end('Hello World!\n');
-});
-
-// starts a simple http server locally on port 3000
-server.listen(3000, '127.0.0.1', () => {
-console.log('Listening on 127.0.0.1:3000');
-});
-
-// run with `node server.mjs`
-
-````
-
-```js displayName="Write Tests"
-// tests.mjs
-import assert from 'node:assert';
-import test from 'node:test';
-
-test('that 1 is equal 1', () => {
- assert.strictEqual(1, 1);
-});
-
-test('that throws as 1 is not equal 2', () => {
- // throws an exception because 1 != 2
- assert.strictEqual(1, 2);
-});
-
-// run with `node tests.mjs`
-````
-
-```js displayName="Read and Hash a File"
-// crypto.mjs
-import { createHash } from 'node:crypto';
-import { readFile } from 'node:fs/promises';
-
-const hasher = createHash('sha1');
-
-hasher.setEncoding('hex');
-// ensure you have a `package.json` file for this test!
-hasher.write(await readFile('package.json'));
-hasher.end();
-
-const fileHash = hasher.read();
-
-// run with `node crypto.mjs`
-```
-
-```js displayName="Streams Pipeline"
-// streams.mjs
-import { pipeline } from 'node:stream/promises';
-import { createReadStream, createWriteStream } from 'node:fs';
-import { createGzip } from 'node:zlib';
-
-// ensure you have a `package.json` file for this test!
-await pipeline(
- createReadStream('package.json'),
- createGzip(),
- createWriteStream('package.json.gz')
-);
-
-// run with `node streams.mjs`
-```
-
-```js displayName="Work with Threads"
-// threads.mjs
-import {
- Worker,
- isMainThread,
- workerData,
- parentPort,
-} from 'node:worker_threads';
-
-if (isMainThread) {
- const data = 'some data';
- const worker = new Worker(import.meta.filename, { workerData: data });
- worker.on('message', msg => console.log('Reply from Thread:', msg));
-} else {
- const source = workerData;
- parentPort.postMessage(btoa(source.toUpperCase()));
-}
-
-// run with `node threads.mjs`
-```
-
+ const server = createServer((req, res) => {
+ res.writeHead(200, { 'Content-Type': 'text/plain' });
+ res.end('Hello World!\n');
+ });
+
+ // starts a simple http server locally on port 3000
+ server.listen(3000, '127.0.0.1', () => {
+ console.log('Listening on 127.0.0.1:3000');
+ });
+
+ // run with `node server.mjs`
+ ```
+
+ ```js displayName="Write Tests"
+ // tests.mjs
+ import assert from 'node:assert';
+ import test from 'node:test';
+
+ test('that 1 is equal 1', () => {
+ assert.strictEqual(1, 1);
+ });
+
+ test('that throws as 1 is not equal 2', () => {
+ // throws an exception because 1 != 2
+ assert.strictEqual(1, 2);
+ });
+
+ // run with `node tests.mjs`
+ ```
+
+ ```js displayName="Read and Hash a File"
+ // crypto.mjs
+ import { createHash } from 'node:crypto';
+ import { readFile } from 'node:fs/promises';
+
+ const hasher = createHash('sha1');
+
+ hasher.setEncoding('hex');
+ // ensure you have a `package.json` file for this test!
+ hasher.write(await readFile('package.json'));
+ hasher.end();
+
+ const fileHash = hasher.read();
+
+ // run with `node crypto.mjs`
+ ```
+
+ ```js displayName="Streams Pipeline"
+ // streams.mjs
+ import { pipeline } from 'node:stream/promises';
+ import { createReadStream, createWriteStream } from 'node:fs';
+ import { createGzip } from 'node:zlib';
+
+ // ensure you have a `package.json` file for this test!
+ await pipeline
+ (
+ createReadStream('package.json'),
+ createGzip(),
+ createWriteStream('package.json.gz')
+ );
+
+ // run with `node streams.mjs`
+ ```
+
+ ```js displayName="Work with Threads"
+ // threads.mjs
+ import { Worker, isMainThread,
+ workerData, parentPort } from 'node:worker_threads';
+
+ if (isMainThread) {
+ const data = 'some data';
+ const worker = new Worker(import.meta.filename, { workerData: data });
+ worker.on('message', msg => console.log('Reply from Thread:', msg));
+ } else {
+ const source = workerData;
+ parentPort.postMessage(btoa(source.toUpperCase()));
+ }
+
+ // run with `node threads.mjs`
+ ```
通过我们的[学习资料](/learn)了解 Node.js 。
-
From eff2def183c541a7ddc87f7004d619f66d3f4da0 Mon Sep 17 00:00:00 2001
From: "Node.js Crowdin Bot"
<148437438+nodejs-crowdin@users.noreply.github.com>
Date: Fri, 13 Sep 2024 15:48:48 +0200
Subject: [PATCH 090/108] chore: synced translations from crowdin [skip ci]
---
apps/site/pages/zh-tw/index.mdx | 169 +++++++++++++++-----------------
1 file changed, 81 insertions(+), 88 deletions(-)
diff --git a/apps/site/pages/zh-tw/index.mdx b/apps/site/pages/zh-tw/index.mdx
index 0a9fac05cf65..78a1c0b0c9c8 100644
--- a/apps/site/pages/zh-tw/index.mdx
+++ b/apps/site/pages/zh-tw/index.mdx
@@ -9,8 +9,7 @@ layout: home
隨時隨地執行 JavaScript
-Node.js® 是一款免費的跨平台開源 JavaScript 執行環境,供開發者建立伺服器、網頁應用程式、命令列工具與腳本。
-
+ Node.js® 是一款免費的跨平台開源 JavaScript 執行環境,供開發者建立伺服器、網頁應用程式、命令列工具與腳本。
@@ -45,93 +44,87 @@ Node.js® 是一款免費的跨平台開源 JavaScript 執行環境,供開發
// server.mjs
import { createServer } from 'node:http';
-const server = createServer((req, res) => {
-res.writeHead(200, { 'Content-Type': 'text/plain' });
-res.end('Hello World!\n');
-});
-
-// starts a simple http server locally on port 3000
-server.listen(3000, '127.0.0.1', () => {
-console.log('Listening on 127.0.0.1:3000');
-});
-
-// run with `node server.mjs`
-
-````
-
-```js displayName="Write Tests"
-// tests.mjs
-import assert from 'node:assert';
-import test from 'node:test';
-
-test('that 1 is equal 1', () => {
- assert.strictEqual(1, 1);
-});
-
-test('that throws as 1 is not equal 2', () => {
- // throws an exception because 1 != 2
- assert.strictEqual(1, 2);
-});
-
-// run with `node tests.mjs`
-````
-
-```js displayName="Read and Hash a File"
-// crypto.mjs
-import { createHash } from 'node:crypto';
-import { readFile } from 'node:fs/promises';
-
-const hasher = createHash('sha1');
-
-hasher.setEncoding('hex');
-// ensure you have a `package.json` file for this test!
-hasher.write(await readFile('package.json'));
-hasher.end();
-
-const fileHash = hasher.read();
-
-// run with `node crypto.mjs`
-```
-
-```js displayName="Streams Pipeline"
-// streams.mjs
-import { pipeline } from 'node:stream/promises';
-import { createReadStream, createWriteStream } from 'node:fs';
-import { createGzip } from 'node:zlib';
-
-// ensure you have a `package.json` file for this test!
-await pipeline(
- createReadStream('package.json'),
- createGzip(),
- createWriteStream('package.json.gz')
-);
-
-// run with `node streams.mjs`
-```
-
-```js displayName="Work with Threads"
-// threads.mjs
-import {
- Worker,
- isMainThread,
- workerData,
- parentPort,
-} from 'node:worker_threads';
-
-if (isMainThread) {
- const data = 'some data';
- const worker = new Worker(import.meta.filename, { workerData: data });
- worker.on('message', msg => console.log('Reply from Thread:', msg));
-} else {
- const source = workerData;
- parentPort.postMessage(btoa(source.toUpperCase()));
-}
-
-// run with `node threads.mjs`
-```
-
+ const server = createServer((req, res) => {
+ res.writeHead(200, { 'Content-Type': 'text/plain' });
+ res.end('Hello World!\n');
+ });
+
+ // starts a simple http server locally on port 3000
+ server.listen(3000, '127.0.0.1', () => {
+ console.log('Listening on 127.0.0.1:3000');
+ });
+
+ // run with `node server.mjs`
+ ```
+
+ ```js displayName="Write Tests"
+ // tests.mjs
+ import assert from 'node:assert';
+ import test from 'node:test';
+
+ test('that 1 is equal 1', () => {
+ assert.strictEqual(1, 1);
+ });
+
+ test('that throws as 1 is not equal 2', () => {
+ // throws an exception because 1 != 2
+ assert.strictEqual(1, 2);
+ });
+
+ // run with `node tests.mjs`
+ ```
+
+ ```js displayName="Read and Hash a File"
+ // crypto.mjs
+ import { createHash } from 'node:crypto';
+ import { readFile } from 'node:fs/promises';
+
+ const hasher = createHash('sha1');
+
+ hasher.setEncoding('hex');
+ // ensure you have a `package.json` file for this test!
+ hasher.write(await readFile('package.json'));
+ hasher.end();
+
+ const fileHash = hasher.read();
+
+ // run with `node crypto.mjs`
+ ```
+
+ ```js displayName="Streams Pipeline"
+ // streams.mjs
+ import { pipeline } from 'node:stream/promises';
+ import { createReadStream, createWriteStream } from 'node:fs';
+ import { createGzip } from 'node:zlib';
+
+ // ensure you have a `package.json` file for this test!
+ await pipeline
+ (
+ createReadStream('package.json'),
+ createGzip(),
+ createWriteStream('package.json.gz')
+ );
+
+ // run with `node streams.mjs`
+ ```
+
+ ```js displayName="Work with Threads"
+ // threads.mjs
+ import { Worker, isMainThread,
+ workerData, parentPort } from 'node:worker_threads';
+
+ if (isMainThread) {
+ const data = 'some data';
+ const worker = new Worker(import.meta.filename, { workerData: data });
+ worker.on('message', msg => console.log('Reply from Thread:', msg));
+ } else {
+ const source = workerData;
+ parentPort.postMessage(btoa(source.toUpperCase()));
+ }
+
+ // run with `node threads.mjs`
+ ```
我們提供大量[學習資源](/learn),探索 Node.js 的無限潛能。
-
From 825281cc45e664bda0896fe644876aac69094dcc Mon Sep 17 00:00:00 2001
From: "Node.js Crowdin Bot"
<148437438+nodejs-crowdin@users.noreply.github.com>
Date: Fri, 13 Sep 2024 15:48:49 +0200
Subject: [PATCH 091/108] chore: synced translations from crowdin [skip ci]
---
apps/site/pages/id/index.mdx | 169 +++++++++++++++++------------------
1 file changed, 81 insertions(+), 88 deletions(-)
diff --git a/apps/site/pages/id/index.mdx b/apps/site/pages/id/index.mdx
index b7ca646a0b6a..9da20d625dc3 100644
--- a/apps/site/pages/id/index.mdx
+++ b/apps/site/pages/id/index.mdx
@@ -9,8 +9,7 @@ layout: home
Jalankan JavaScript Di Mana Saja
-Node.js® adalah lingkungan runtime JavaScript gratis dan sumber terbuka yang lintas platform, yang memungkinkan pengembang membuat server, aplikasi web, alat baris perintah, dan skrip.
-
+ Node.js® adalah lingkungan runtime JavaScript gratis dan sumber terbuka yang lintas platform, yang memungkinkan pengembang membuat server, aplikasi web, alat baris perintah, dan skrip.
@@ -45,93 +44,87 @@ Node.js® adalah lingkungan runtime JavaScript gratis dan sumber terbuka yang li
// server.mjs
import { createServer } from 'node:http';
-const server = createServer((req, res) => {
-res.writeHead(200, { 'Content-Type': 'text/plain' });
-res.end('Hello World!\n');
-});
-
-// starts a simple http server locally on port 3000
-server.listen(3000, '127.0.0.1', () => {
-console.log('Listening on 127.0.0.1:3000');
-});
-
-// run with `node server.mjs`
-
-````
-
-```js displayName="Write Tests"
-// tests.mjs
-import assert from 'node:assert';
-import test from 'node:test';
-
-test('that 1 is equal 1', () => {
- assert.strictEqual(1, 1);
-});
-
-test('that throws as 1 is not equal 2', () => {
- // throws an exception because 1 != 2
- assert.strictEqual(1, 2);
-});
-
-// run with `node tests.mjs`
-````
-
-```js displayName="Read and Hash a File"
-// crypto.mjs
-import { createHash } from 'node:crypto';
-import { readFile } from 'node:fs/promises';
-
-const hasher = createHash('sha1');
-
-hasher.setEncoding('hex');
-// ensure you have a `package.json` file for this test!
-hasher.write(await readFile('package.json'));
-hasher.end();
-
-const fileHash = hasher.read();
-
-// run with `node crypto.mjs`
-```
-
-```js displayName="Streams Pipeline"
-// streams.mjs
-import { pipeline } from 'node:stream/promises';
-import { createReadStream, createWriteStream } from 'node:fs';
-import { createGzip } from 'node:zlib';
-
-// ensure you have a `package.json` file for this test!
-await pipeline(
- createReadStream('package.json'),
- createGzip(),
- createWriteStream('package.json.gz')
-);
-
-// run with `node streams.mjs`
-```
-
-```js displayName="Work with Threads"
-// threads.mjs
-import {
- Worker,
- isMainThread,
- workerData,
- parentPort,
-} from 'node:worker_threads';
-
-if (isMainThread) {
- const data = 'some data';
- const worker = new Worker(import.meta.filename, { workerData: data });
- worker.on('message', msg => console.log('Reply from Thread:', msg));
-} else {
- const source = workerData;
- parentPort.postMessage(btoa(source.toUpperCase()));
-}
-
-// run with `node threads.mjs`
-```
-
+ const server = createServer((req, res) => {
+ res.writeHead(200, { 'Content-Type': 'text/plain' });
+ res.end('Hello World!\n');
+ });
+
+ // starts a simple http server locally on port 3000
+ server.listen(3000, '127.0.0.1', () => {
+ console.log('Listening on 127.0.0.1:3000');
+ });
+
+ // run with `node server.mjs`
+ ```
+
+ ```js displayName="Write Tests"
+ // tests.mjs
+ import assert from 'node:assert';
+ import test from 'node:test';
+
+ test('that 1 is equal 1', () => {
+ assert.strictEqual(1, 1);
+ });
+
+ test('that throws as 1 is not equal 2', () => {
+ // throws an exception because 1 != 2
+ assert.strictEqual(1, 2);
+ });
+
+ // run with `node tests.mjs`
+ ```
+
+ ```js displayName="Read and Hash a File"
+ // crypto.mjs
+ import { createHash } from 'node:crypto';
+ import { readFile } from 'node:fs/promises';
+
+ const hasher = createHash('sha1');
+
+ hasher.setEncoding('hex');
+ // ensure you have a `package.json` file for this test!
+ hasher.write(await readFile('package.json'));
+ hasher.end();
+
+ const fileHash = hasher.read();
+
+ // run with `node crypto.mjs`
+ ```
+
+ ```js displayName="Streams Pipeline"
+ // streams.mjs
+ import { pipeline } from 'node:stream/promises';
+ import { createReadStream, createWriteStream } from 'node:fs';
+ import { createGzip } from 'node:zlib';
+
+ // ensure you have a `package.json` file for this test!
+ await pipeline
+ (
+ createReadStream('package.json'),
+ createGzip(),
+ createWriteStream('package.json.gz')
+ );
+
+ // run with `node streams.mjs`
+ ```
+
+ ```js displayName="Work with Threads"
+ // threads.mjs
+ import { Worker, isMainThread,
+ workerData, parentPort } from 'node:worker_threads';
+
+ if (isMainThread) {
+ const data = 'some data';
+ const worker = new Worker(import.meta.filename, { workerData: data });
+ worker.on('message', msg => console.log('Reply from Thread:', msg));
+ } else {
+ const source = workerData;
+ parentPort.postMessage(btoa(source.toUpperCase()));
+ }
+
+ // run with `node threads.mjs`
+ ```
Pelajari lebih lanjut tentang apa yang bisa ditawarkan Node.js melalui [Bahan Pembelajaran](/learn) kami.
-
From a2665907cfedd47252b9bf282f71cd0c0ad62451 Mon Sep 17 00:00:00 2001
From: "Node.js Crowdin Bot"
<148437438+nodejs-crowdin@users.noreply.github.com>
Date: Fri, 13 Sep 2024 15:48:51 +0200
Subject: [PATCH 092/108] chore: synced translations from crowdin [skip ci]
---
apps/site/pages/fa/index.mdx | 173 +++++++++++++++++------------------
1 file changed, 83 insertions(+), 90 deletions(-)
diff --git a/apps/site/pages/fa/index.mdx b/apps/site/pages/fa/index.mdx
index 57634d9833d1..aa2b14dbcaec 100644
--- a/apps/site/pages/fa/index.mdx
+++ b/apps/site/pages/fa/index.mdx
@@ -9,10 +9,9 @@ layout: home
اجرا جاوااسکریپت در همه جا
-Node.js یک محیط اجرای جاوااسکریپت متنباز، رایگان و چندسکویی است
-که به توسعه دهندگان اجازه میدهد تا سرورها، وب اپلیکیشنها
-ابزارهای خط فرمان و اسکریپتها را ایجاد کنند.
-
+ Node.js یک محیط اجرای جاوااسکریپت متنباز، رایگان و چندسکویی است
+ که به توسعه دهندگان اجازه میدهد تا سرورها، وب اپلیکیشنها
+ ابزارهای خط فرمان و اسکریپتها را ایجاد کنند.
@@ -47,93 +46,87 @@ Node.js یک محیط اجرای جاوااسکریپت متنباز، رای
// server.mjs
import { createServer } from 'node:http';
-const server = createServer((req, res) => {
-res.writeHead(200, { 'Content-Type': 'text/plain' });
-res.end('Hello World!\n');
-});
-
-// starts a simple http server locally on port 3000
-server.listen(3000, '127.0.0.1', () => {
-console.log('Listening on 127.0.0.1:3000');
-});
-
-// run with `node server.mjs`
-
-````
-
-```js displayName="Write Tests"
-// tests.mjs
-import assert from 'node:assert';
-import test from 'node:test';
-
-test('that 1 is equal 1', () => {
- assert.strictEqual(1, 1);
-});
-
-test('that throws as 1 is not equal 2', () => {
- // throws an exception because 1 != 2
- assert.strictEqual(1, 2);
-});
-
-// run with `node tests.mjs`
-````
-
-```js displayName="Read and Hash a File"
-// crypto.mjs
-import { createHash } from 'node:crypto';
-import { readFile } from 'node:fs/promises';
-
-const hasher = createHash('sha1');
-
-hasher.setEncoding('hex');
-// ensure you have a `package.json` file for this test!
-hasher.write(await readFile('package.json'));
-hasher.end();
-
-const fileHash = hasher.read();
-
-// run with `node crypto.mjs`
-```
-
-```js displayName="Streams Pipeline"
-// streams.mjs
-import { pipeline } from 'node:stream/promises';
-import { createReadStream, createWriteStream } from 'node:fs';
-import { createGzip } from 'node:zlib';
-
-// ensure you have a `package.json` file for this test!
-await pipeline(
- createReadStream('package.json'),
- createGzip(),
- createWriteStream('package.json.gz')
-);
-
-// run with `node streams.mjs`
-```
-
-```js displayName="Work with Threads"
-// threads.mjs
-import {
- Worker,
- isMainThread,
- workerData,
- parentPort,
-} from 'node:worker_threads';
-
-if (isMainThread) {
- const data = 'some data';
- const worker = new Worker(import.meta.filename, { workerData: data });
- worker.on('message', msg => console.log('Reply from Thread:', msg));
-} else {
- const source = workerData;
- parentPort.postMessage(btoa(source.toUpperCase()));
-}
-
-// run with `node threads.mjs`
-```
-
+ const server = createServer((req, res) => {
+ res.writeHead(200, { 'Content-Type': 'text/plain' });
+ res.end('Hello World!\n');
+ });
+
+ // starts a simple http server locally on port 3000
+ server.listen(3000, '127.0.0.1', () => {
+ console.log('Listening on 127.0.0.1:3000');
+ });
+
+ // run with `node server.mjs`
+ ```
+
+ ```js displayName="Write Tests"
+ // tests.mjs
+ import assert from 'node:assert';
+ import test from 'node:test';
+
+ test('that 1 is equal 1', () => {
+ assert.strictEqual(1, 1);
+ });
+
+ test('that throws as 1 is not equal 2', () => {
+ // throws an exception because 1 != 2
+ assert.strictEqual(1, 2);
+ });
+
+ // run with `node tests.mjs`
+ ```
+
+ ```js displayName="Read and Hash a File"
+ // crypto.mjs
+ import { createHash } from 'node:crypto';
+ import { readFile } from 'node:fs/promises';
+
+ const hasher = createHash('sha1');
+
+ hasher.setEncoding('hex');
+ // ensure you have a `package.json` file for this test!
+ hasher.write(await readFile('package.json'));
+ hasher.end();
+
+ const fileHash = hasher.read();
+
+ // run with `node crypto.mjs`
+ ```
+
+ ```js displayName="Streams Pipeline"
+ // streams.mjs
+ import { pipeline } from 'node:stream/promises';
+ import { createReadStream, createWriteStream } from 'node:fs';
+ import { createGzip } from 'node:zlib';
+
+ // ensure you have a `package.json` file for this test!
+ await pipeline
+ (
+ createReadStream('package.json'),
+ createGzip(),
+ createWriteStream('package.json.gz')
+ );
+
+ // run with `node streams.mjs`
+ ```
+
+ ```js displayName="Work with Threads"
+ // threads.mjs
+ import { Worker, isMainThread,
+ workerData, parentPort } from 'node:worker_threads';
+
+ if (isMainThread) {
+ const data = 'some data';
+ const worker = new Worker(import.meta.filename, { workerData: data });
+ worker.on('message', msg => console.log('Reply from Thread:', msg));
+ } else {
+ const source = workerData;
+ parentPort.postMessage(btoa(source.toUpperCase()));
+ }
+
+ // run with `node threads.mjs`
+ ```
با [مطالب آموزشی](/learn) ما، بیشتر در مورد اینکه Node.js چه امکاناتی را ارائه می دهد بیاموزید.
-
From 8b38729d7550e13685d21b2a2b975c812d610aba Mon Sep 17 00:00:00 2001
From: "Node.js Crowdin Bot"
<148437438+nodejs-crowdin@users.noreply.github.com>
Date: Fri, 13 Sep 2024 15:49:18 +0200
Subject: [PATCH 093/108] chore: synced translations from crowdin [skip ci]
---
apps/site/pages/fr/about/branding.mdx | 8 +-------
1 file changed, 1 insertion(+), 7 deletions(-)
diff --git a/apps/site/pages/fr/about/branding.mdx b/apps/site/pages/fr/about/branding.mdx
index 8f96b99a5e5c..bcf1a10d2397 100644
--- a/apps/site/pages/fr/about/branding.mdx
+++ b/apps/site/pages/fr/about/branding.mdx
@@ -9,13 +9,7 @@ Veuillez consulter la [politique en matière de marques](https://trademark-polic
## Mascotte de Node.js®
-
+
## Logo Node.js®
From 9e9ab7679831ab72d701b604a53ddad0a17fd71b Mon Sep 17 00:00:00 2001
From: "Node.js Crowdin Bot"
<148437438+nodejs-crowdin@users.noreply.github.com>
Date: Fri, 13 Sep 2024 15:49:20 +0200
Subject: [PATCH 094/108] chore: synced translations from crowdin [skip ci]
---
apps/site/pages/ja/about/branding.mdx | 8 +-------
1 file changed, 1 insertion(+), 7 deletions(-)
diff --git a/apps/site/pages/ja/about/branding.mdx b/apps/site/pages/ja/about/branding.mdx
index 70bfbb817e3a..19800ec1a151 100644
--- a/apps/site/pages/ja/about/branding.mdx
+++ b/apps/site/pages/ja/about/branding.mdx
@@ -9,13 +9,7 @@ Node.jsのロゴやシンボルマークの許可されている利用方法に
## Node.js®マスコット
-
+
## Node.js®ロゴ
From 5a0838aba132ca3bb91e7e94eaa0ceff2e43fa80 Mon Sep 17 00:00:00 2001
From: "Node.js Crowdin Bot"
<148437438+nodejs-crowdin@users.noreply.github.com>
Date: Fri, 13 Sep 2024 15:49:22 +0200
Subject: [PATCH 095/108] chore: synced translations from crowdin [skip ci]
---
apps/site/pages/pt/about/branding.mdx | 8 +-------
1 file changed, 1 insertion(+), 7 deletions(-)
diff --git a/apps/site/pages/pt/about/branding.mdx b/apps/site/pages/pt/about/branding.mdx
index 9e20fdf437a4..464ff2946224 100644
--- a/apps/site/pages/pt/about/branding.mdx
+++ b/apps/site/pages/pt/about/branding.mdx
@@ -9,13 +9,7 @@ Consultar a [política de marcas registadas](https://trademark-policy.openjsf.or
## Mascote da Node.js®
-
+
## Logótipo da Node.js®
From f9f6792b8d7fe50bfa2aab50bfb63d9577d1e63f Mon Sep 17 00:00:00 2001
From: "Node.js Crowdin Bot"
<148437438+nodejs-crowdin@users.noreply.github.com>
Date: Fri, 13 Sep 2024 15:49:23 +0200
Subject: [PATCH 096/108] chore: synced translations from crowdin [skip ci]
---
apps/site/pages/uk/about/branding.mdx | 8 +-------
1 file changed, 1 insertion(+), 7 deletions(-)
diff --git a/apps/site/pages/uk/about/branding.mdx b/apps/site/pages/uk/about/branding.mdx
index 28175cd78649..88d36b0f8477 100644
--- a/apps/site/pages/uk/about/branding.mdx
+++ b/apps/site/pages/uk/about/branding.mdx
@@ -9,13 +9,7 @@ layout: about
## Маскот Node.js®
-
+
## Логотип Node.js®
From df43f2b18e0ffad0472a348182b9272a09228a0e Mon Sep 17 00:00:00 2001
From: "Node.js Crowdin Bot"
<148437438+nodejs-crowdin@users.noreply.github.com>
Date: Fri, 13 Sep 2024 15:49:25 +0200
Subject: [PATCH 097/108] chore: synced translations from crowdin [skip ci]
---
apps/site/pages/zh-cn/about/branding.mdx | 8 +-------
1 file changed, 1 insertion(+), 7 deletions(-)
diff --git a/apps/site/pages/zh-cn/about/branding.mdx b/apps/site/pages/zh-cn/about/branding.mdx
index c830dd83acee..fe67d7c17a55 100644
--- a/apps/site/pages/zh-cn/about/branding.mdx
+++ b/apps/site/pages/zh-cn/about/branding.mdx
@@ -9,13 +9,7 @@ Node.js 的品牌化
## Node.js® 吉祥物
-
+
## Node.js® Logo
From ca0258ae26f23b4d56d96869932295378deaf9a5 Mon Sep 17 00:00:00 2001
From: "Node.js Crowdin Bot"
<148437438+nodejs-crowdin@users.noreply.github.com>
Date: Fri, 13 Sep 2024 15:49:30 +0200
Subject: [PATCH 098/108] chore: synced translations from crowdin [skip ci]
---
apps/site/pages/zh-tw/about/branding.mdx | 8 +-------
1 file changed, 1 insertion(+), 7 deletions(-)
diff --git a/apps/site/pages/zh-tw/about/branding.mdx b/apps/site/pages/zh-tw/about/branding.mdx
index 3f8ae48f8962..2f35950adc2d 100644
--- a/apps/site/pages/zh-tw/about/branding.mdx
+++ b/apps/site/pages/zh-tw/about/branding.mdx
@@ -9,13 +9,7 @@ Node.js 的品牌形象
## Node.js 吉祥物
-
+
## Node.js® 標誌
From 094c536f574d6328200597bd0e7d351992568761 Mon Sep 17 00:00:00 2001
From: "Node.js Crowdin Bot"
<148437438+nodejs-crowdin@users.noreply.github.com>
Date: Fri, 13 Sep 2024 15:49:32 +0200
Subject: [PATCH 099/108] chore: synced translations from crowdin [skip ci]
---
apps/site/pages/id/about/branding.mdx | 8 +-------
1 file changed, 1 insertion(+), 7 deletions(-)
diff --git a/apps/site/pages/id/about/branding.mdx b/apps/site/pages/id/about/branding.mdx
index 609e46191e54..0f782936e515 100644
--- a/apps/site/pages/id/about/branding.mdx
+++ b/apps/site/pages/id/about/branding.mdx
@@ -9,13 +9,7 @@ Harap tinjau [kebijakan merek dagang](https://trademark-policy.openjsf.org/) unt
## Maskot Node.js
-
+
## Logo Node.js®
From b31443438f6cbf699cdb2778aa55f47e868c09c5 Mon Sep 17 00:00:00 2001
From: "Node.js Crowdin Bot"
<148437438+nodejs-crowdin@users.noreply.github.com>
Date: Fri, 13 Sep 2024 15:49:34 +0200
Subject: [PATCH 100/108] chore: synced translations from crowdin [skip ci]
---
apps/site/pages/fa/about/branding.mdx | 8 +-------
1 file changed, 1 insertion(+), 7 deletions(-)
diff --git a/apps/site/pages/fa/about/branding.mdx b/apps/site/pages/fa/about/branding.mdx
index f32e9d8e175f..12df45e484a4 100644
--- a/apps/site/pages/fa/about/branding.mdx
+++ b/apps/site/pages/fa/about/branding.mdx
@@ -9,13 +9,7 @@ layout: about
## Node.js® Mascot
-
+
## لوگو Node.js®
From 4113ed05612f4c4b888c1e42ad3d59f8a876030e Mon Sep 17 00:00:00 2001
From: Brian Muenzenmeyer
Date: Fri, 13 Sep 2024 14:47:42 -0500
Subject: [PATCH 101/108] fix(eslint): remove deprecated eslint ignore config
---
.eslintignore | 5 -----
apps/site/eslint.config.js | 2 ++
packages/i18n/eslint.config.js | 2 ++
3 files changed, 4 insertions(+), 5 deletions(-)
delete mode 100644 .eslintignore
diff --git a/.eslintignore b/.eslintignore
deleted file mode 100644
index ab22ce98c29c..000000000000
--- a/.eslintignore
+++ /dev/null
@@ -1,5 +0,0 @@
-# Node.js
-node_modules
-
-# Next.js & Vercel Directories
-.turbo
diff --git a/apps/site/eslint.config.js b/apps/site/eslint.config.js
index 376b7d43135e..5ac5bb2196eb 100644
--- a/apps/site/eslint.config.js
+++ b/apps/site/eslint.config.js
@@ -22,6 +22,7 @@ const compatConfig = compat.config({
export default tseslint.config(
{
ignores: [
+ 'node_modules',
'.next',
'.swc',
'.turbo',
@@ -88,6 +89,7 @@ export default tseslint.config(
rules: {
'no-irregular-whitespace': 'off',
'@next/next/no-img-element': 'off',
+ '@next/next/no-html-link-for-pages': ['error', 'apps/site/pages/'],
// https://github.com/typescript-eslint/typescript-eslint/issues/9860
'@typescript-eslint/consistent-type-imports': 'off',
diff --git a/packages/i18n/eslint.config.js b/packages/i18n/eslint.config.js
index 6e9478a0712f..727c2fbc1a06 100644
--- a/packages/i18n/eslint.config.js
+++ b/packages/i18n/eslint.config.js
@@ -6,6 +6,8 @@ import tseslint from 'typescript-eslint';
export default tseslint.config(
{
ignores: [
+ 'node_modules',
+ '.turbo',
'build',
'coverage',
'global.d.ts',
From 78f2c173edcf903910f4760408aa7a0feb7ba274 Mon Sep 17 00:00:00 2001
From: Brian Muenzenmeyer
Date: Fri, 13 Sep 2024 14:50:17 -0500
Subject: [PATCH 102/108] fix(action): supply config path
---
.github/workflows/translations-pr.yml | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/.github/workflows/translations-pr.yml b/.github/workflows/translations-pr.yml
index f9d3e4d1ff64..fa89f6dbb849 100644
--- a/.github/workflows/translations-pr.yml
+++ b/.github/workflows/translations-pr.yml
@@ -106,7 +106,7 @@ jobs:
- name: Run `npx lint:md --fix`
# This runs a specific version of ESLint with only the Translation Pages Globbing
# This avoid that unrelated changes get linted/modified within this PR
- run: npx eslint "apps/site/pages/**/*.md?(x)" --fix --cache --cache-strategy=metadata --cache-file=apps/site/.eslintmdcache
+ run: npx eslint "apps/site/pages/**/*.md?(x)" --fix --cache --cache-strategy=metadata --cache-file=apps/site/.eslintmdcache --config=apps/site/eslint.config.js
- name: Run `npx prettier --write`
# This runs a specific version of Prettier with only the Translation Pages Globbing
From d9c30197365cb3be8ed257302216dc4aa0a5d9d7 Mon Sep 17 00:00:00 2001
From: Brian Muenzenmeyer
Date: Fri, 13 Sep 2024 14:53:36 -0500
Subject: [PATCH 103/108] chore: fix two lints
---
apps/site/pages/id/about/governance.md | 2 +-
apps/site/pages/id/about/index.mdx | 22 +++++++++++-----------
2 files changed, 12 insertions(+), 12 deletions(-)
diff --git a/apps/site/pages/id/about/governance.md b/apps/site/pages/id/about/governance.md
index 1dc32b53357f..11da67e6cdfe 100644
--- a/apps/site/pages/id/about/governance.md
+++ b/apps/site/pages/id/about/governance.md
@@ -11,7 +11,7 @@ Proyek Node.js mengikuti model pengambilan keputusan \[Pencarian Konsensus] \[].
## Kolaborator
-Repositori inti GitHub [nodejs/node] \[] dikelola oleh Kolaborator
+Repositori inti GitHub [nodejs/node][] dikelola oleh Kolaborator
yang dinominasikan oleh Kolaborator lain yang ada secara berkelanjutan.
Individu yang memberikan kontribusi signifikan dan berharga akan dijadikan Kolaborator dan diberikan akses komitmen terhadap proyek. Individu-individu ini diidentifikasi oleh Kolaborator lain dan nominasi mereka didiskusikan dengan Kolaborator yang ada.
diff --git a/apps/site/pages/id/about/index.mdx b/apps/site/pages/id/about/index.mdx
index 3f15ddf32931..b420da357524 100644
--- a/apps/site/pages/id/about/index.mdx
+++ b/apps/site/pages/id/about/index.mdx
@@ -17,13 +17,13 @@ const hostname = '127.0.0.1';
const port = 3000;
const server = createServer((req, res) => {
-res.statusCode = 200;
-res.setHeader('Content-Type', 'text/plain');
-res.end('Hello World');
+ res.statusCode = 200;
+ res.setHeader('Content-Type', 'text/plain');
+ res.end('Hello World');
});
server.listen(port, hostname, () => {
-console.log(`Server running at http://${hostname}:${port}/`);
+ console.log(`Server running at http://${hostname}:${port}/`);
});
```
@@ -34,13 +34,13 @@ const hostname = '127.0.0.1';
const port = 3000;
const server = createServer((req, res) => {
-res.statusCode = 200;
-res.setHeader('Content-Type', 'text/plain');
-res.end('Hello World');
+ res.statusCode = 200;
+ res.setHeader('Content-Type', 'text/plain');
+ res.end('Hello World');
});
server.listen(port, hostname, () => {
-console.log(`Server running at http://${hostname}:${port}/`);
+ console.log(`Server running at http://${hostname}:${port}/`);
});
```
@@ -56,16 +56,16 @@ Jika ada yang belum familiar dengan bahasa ini, ada artikel lengkap tentang [Blo
---
-Node.js memiliki desain yang mirip dengan, dan dipengaruhi oleh, sistem seperti [Event Machine] [] Ruby dan [Twisted] [] Python. Node.js membawa model acara sedikit lebih jauh. Ini menyajikan loop peristiwa sebagai konstruksi runtime, bukan sebagai perpustakaan. Di sistem lain, selalu ada panggilan pemblokiran untuk memulai perulangan peristiwa. Biasanya, perilaku ditentukan melalui callback di awal skrip, dan di akhir skrip, server dimulai melalui panggilan pemblokiran seperti `EventMachine::run()`. Di Node.js, tidak ada panggilan start-the-event-loop. Node.js cukup memasuki loop acara setelah menjalankan skrip input. Node.js keluar dari loop peristiwa ketika tidak ada lagi callback yang harus dilakukan. Perilaku ini seperti JavaScript browser — loop peristiwa disembunyikan dari pengguna.
+Node.js memiliki desain yang mirip dengan, dan dipengaruhi oleh, sistem seperti [Event Machine][] Ruby dan [Twisted][] Python. Node.js membawa model acara sedikit lebih jauh. Ini menyajikan loop peristiwa sebagai konstruksi runtime, bukan sebagai perpustakaan. Di sistem lain, selalu ada panggilan pemblokiran untuk memulai perulangan peristiwa. Biasanya, perilaku ditentukan melalui callback di awal skrip, dan di akhir skrip, server dimulai melalui panggilan pemblokiran seperti `EventMachine::run()`. Di Node.js, tidak ada panggilan start-the-event-loop. Node.js cukup memasuki loop acara setelah menjalankan skrip input. Node.js keluar dari loop peristiwa ketika tidak ada lagi callback yang harus dilakukan. Perilaku ini seperti JavaScript browser — loop peristiwa disembunyikan dari pengguna.
HTTP adalah warga negara kelas satu di Node.js, dirancang dengan streaming dan rendah
latensi dalam pikiran. Ini membuat Node.js sangat cocok untuk fondasi web
perpustakaan atau kerangka kerja.
-Node.js dirancang tanpa thread bukan berarti Anda tidak dapat memanfaatkan banyak inti di lingkungan Anda. Proses anak dapat dihasilkan dengan menggunakan API child\_process.fork() kami, dan dirancang agar mudah untuk berkomunikasi. Dibangun di atas antarmuka yang sama adalah modul cluster, yang memungkinkan Anda berbagi soket antar proses untuk mengaktifkan penyeimbangan beban pada inti Anda.
+Node.js dirancang tanpa thread bukan berarti Anda tidak dapat memanfaatkan banyak inti di lingkungan Anda. Proses anak dapat dihasilkan dengan menggunakan API child_process.fork() kami, dan dirancang agar mudah untuk berkomunikasi. Dibangun di atas antarmuka yang sama adalah modul cluster, yang memungkinkan Anda berbagi soket antar proses untuk mengaktifkan penyeimbangan beban pada inti Anda.
[blocking vs. non-blocking]: /learn/asynchronous-work/overview-of-blocking-vs-non-blocking
[`child_process.fork()`]: https://nodejs.org/api/child_process.html
[`cluster`]: https://nodejs.org/api/cluster.html
[event machine]: https://github.com/eventmachine/eventmachine
-[berpilin]: https://twisted.org/
+[twisted]: https://twisted.org/
From 174a55e701e76504b9bb320e3ec1897f41f9114a Mon Sep 17 00:00:00 2001
From: "Node.js Crowdin Bot"
<148437438+nodejs-crowdin@users.noreply.github.com>
Date: Mon, 16 Sep 2024 14:09:27 +0200
Subject: [PATCH 104/108] chore: synced translations from crowdin [skip ci]
---
.../site/pages/fr/about/get-involved/index.md | 25 +++++++++++++------
1 file changed, 18 insertions(+), 7 deletions(-)
diff --git a/apps/site/pages/fr/about/get-involved/index.md b/apps/site/pages/fr/about/get-involved/index.md
index eaf1911daa61..5e3693d7de32 100644
--- a/apps/site/pages/fr/about/get-involved/index.md
+++ b/apps/site/pages/fr/about/get-involved/index.md
@@ -5,22 +5,33 @@ layout: about
# Impliquez-vous
+Si vous souhaitez vous impliquer dans la communauté Node.js, il existe de nombreuses façons de le faire. Le projet Node.js est une communauté vaste et diversifiée, et il existe de nombreuses façons de contribuer, au-delà de l'écriture de code.
+
## Discussions de la communauté
-- La [GitHub issues list](https://github.com/nodejs/node/issues) est le lieu de discussion des fonctionnalités de base de Node.js.
-- Pour discuter en temps réel du développement de Node.js, utilisez l'une des plateformes suivantes
- - Pour IRC, allez sur `irc.libera.chat` dans le canal `#node.js` avec un [client IRC](https://en.wikipedia.org/wiki/Comparison_of_Internet_Relay_Chat_clients) ou connectez-vous dans votre navigateur web au canal en utilisant [un client web] (https://kiwiirc.com/nextclient/).
- - Pour Slack, il y a deux options :
- - Le [OpenJSF Slack](https://slack-invite.openjsf.org/) est un Slack géré par la Fondation avec plusieurs canaux Node.js (les canaux préfixés par `#nodejs-` sont liés au projet).
- - [Node Slackers](https://www.nodeslackers.com/) est une communauté Slack axée sur Node.js.
+- La [GitHub issues list](https://github.com/nodejs/node/issues) est le lieu de discussion des fonctionnalités de base de Node.js et si vous avez des questions sur Node.js, vous pouvez utiliser les [github discussions](https://github.com/orgs/nodejs/discussions).
+- Le dépôt [`nodejs/help`](https://github.com/nodjes/help/issues) est l'endroit où poser des questions sur Node.js.
- Le compte Twitter officiel de Node.js est [nodejs](https://twitter.com/nodejs).
- Le [calendrier du projet Node.js](https://nodejs.org/calendar) avec toutes les réunions publiques de l'équipe.
-## Apprentissage
+## Matériel d'apprentissage
+
+Si vous souhaitez en savoir plus sur Node.js, de nombreuses ressources sont à votre disposition.
- [Section officielle d'apprentissage](https://nodejs.org/en/learn/) du site web de Node.js.
- [Official API reference documentation](https://nodejs.org/api/).
- [NodeSchool.io](https://nodeschool.io/) vous enseignera les concepts de Node.js par le biais de jeux interactifs en ligne de commande.
- Le site [Stack Overflow Node.js tag](https://stackoverflow.com/questions/tagged/node.js) recueille de nouvelles informations chaque jour.
- [Le tag Node.js de la communauté DEV](https://dev.to/t/node) est un endroit pour partager des projets, des articles et des tutoriels Node.js, ainsi que pour lancer des discussions et demander des commentaires sur des sujets liés à Node.js. Les développeurs de tous niveaux sont les bienvenus.
+- La [communauté Reddit Node.js](https://www.reddit.com/r/node) est un lieu de partage de projets, d'articles et de tutoriels Node.js, ainsi que de discussions et de demandes de commentaires sur des sujets liés à Node.js. Les développeurs de tous niveaux sont les bienvenus.
+
+## Espaces de discussion non officiels
+
+Si vous cherchez un endroit plus informel pour discuter de Node.js, il existe plusieurs espaces de discussion non officiels.
+Veuillez noter qu'ils ne sont pas officiellement approuvés par le projet Node.js. Respectez également leur code de conduite/règles respectives.
+
+- [Node Slackers](https://www.nodeslackers.com/) est une communauté Slack axée sur Node.js.
+- [OpenJSF Slack](https://slack-invite.openjsf.org/) est un espace de travail Slack pour la Fondation OpenJS. Il y a plusieurs canaux liés à Node.js. (les canaux préfixés par `#nodejs-` sont liés au projet).
- [Nodeiflux](https://discordapp.com/invite/vUsrbjd) est une communauté amicale de développeurs backend Node.js qui s'entraident sur Discord.
+- [ES Community](https://discord.gg/zJsuc6vvhn) est une communauté Discord pour les développeurs JavaScript francophones.
+- `irc.libera.chat` dans le canal `#node.js` avec un [client IRC](https://en.wikipedia.org/wiki/Comparison_of_Internet_Relay_Chat_clients) ou connectez-vous dans votre navigateur web au canal en utilisant [un client web](https://kiwiirc.com/nextclient/).
From 714ce917df01f0454552deae2081d58ddd9dd0b5 Mon Sep 17 00:00:00 2001
From: "Node.js Crowdin Bot"
<148437438+nodejs-crowdin@users.noreply.github.com>
Date: Mon, 16 Sep 2024 14:09:37 +0200
Subject: [PATCH 105/108] chore: synced translations from crowdin [skip ci]
---
apps/site/pages/id/about/governance.md | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/apps/site/pages/id/about/governance.md b/apps/site/pages/id/about/governance.md
index 11da67e6cdfe..1dc32b53357f 100644
--- a/apps/site/pages/id/about/governance.md
+++ b/apps/site/pages/id/about/governance.md
@@ -11,7 +11,7 @@ Proyek Node.js mengikuti model pengambilan keputusan \[Pencarian Konsensus] \[].
## Kolaborator
-Repositori inti GitHub [nodejs/node][] dikelola oleh Kolaborator
+Repositori inti GitHub [nodejs/node] \[] dikelola oleh Kolaborator
yang dinominasikan oleh Kolaborator lain yang ada secara berkelanjutan.
Individu yang memberikan kontribusi signifikan dan berharga akan dijadikan Kolaborator dan diberikan akses komitmen terhadap proyek. Individu-individu ini diidentifikasi oleh Kolaborator lain dan nominasi mereka didiskusikan dengan Kolaborator yang ada.
From 0b4fe9bdf25a345f2b43b47a584571ce712d3698 Mon Sep 17 00:00:00 2001
From: "Node.js Crowdin Bot"
<148437438+nodejs-crowdin@users.noreply.github.com>
Date: Mon, 16 Sep 2024 14:10:07 +0200
Subject: [PATCH 106/108] chore: synced translations from crowdin [skip ci]
---
apps/site/pages/id/about/index.mdx | 22 +++++++++++-----------
1 file changed, 11 insertions(+), 11 deletions(-)
diff --git a/apps/site/pages/id/about/index.mdx b/apps/site/pages/id/about/index.mdx
index b420da357524..3f15ddf32931 100644
--- a/apps/site/pages/id/about/index.mdx
+++ b/apps/site/pages/id/about/index.mdx
@@ -17,13 +17,13 @@ const hostname = '127.0.0.1';
const port = 3000;
const server = createServer((req, res) => {
- res.statusCode = 200;
- res.setHeader('Content-Type', 'text/plain');
- res.end('Hello World');
+res.statusCode = 200;
+res.setHeader('Content-Type', 'text/plain');
+res.end('Hello World');
});
server.listen(port, hostname, () => {
- console.log(`Server running at http://${hostname}:${port}/`);
+console.log(`Server running at http://${hostname}:${port}/`);
});
```
@@ -34,13 +34,13 @@ const hostname = '127.0.0.1';
const port = 3000;
const server = createServer((req, res) => {
- res.statusCode = 200;
- res.setHeader('Content-Type', 'text/plain');
- res.end('Hello World');
+res.statusCode = 200;
+res.setHeader('Content-Type', 'text/plain');
+res.end('Hello World');
});
server.listen(port, hostname, () => {
- console.log(`Server running at http://${hostname}:${port}/`);
+console.log(`Server running at http://${hostname}:${port}/`);
});
```
@@ -56,16 +56,16 @@ Jika ada yang belum familiar dengan bahasa ini, ada artikel lengkap tentang [Blo
---
-Node.js memiliki desain yang mirip dengan, dan dipengaruhi oleh, sistem seperti [Event Machine][] Ruby dan [Twisted][] Python. Node.js membawa model acara sedikit lebih jauh. Ini menyajikan loop peristiwa sebagai konstruksi runtime, bukan sebagai perpustakaan. Di sistem lain, selalu ada panggilan pemblokiran untuk memulai perulangan peristiwa. Biasanya, perilaku ditentukan melalui callback di awal skrip, dan di akhir skrip, server dimulai melalui panggilan pemblokiran seperti `EventMachine::run()`. Di Node.js, tidak ada panggilan start-the-event-loop. Node.js cukup memasuki loop acara setelah menjalankan skrip input. Node.js keluar dari loop peristiwa ketika tidak ada lagi callback yang harus dilakukan. Perilaku ini seperti JavaScript browser — loop peristiwa disembunyikan dari pengguna.
+Node.js memiliki desain yang mirip dengan, dan dipengaruhi oleh, sistem seperti [Event Machine] [] Ruby dan [Twisted] [] Python. Node.js membawa model acara sedikit lebih jauh. Ini menyajikan loop peristiwa sebagai konstruksi runtime, bukan sebagai perpustakaan. Di sistem lain, selalu ada panggilan pemblokiran untuk memulai perulangan peristiwa. Biasanya, perilaku ditentukan melalui callback di awal skrip, dan di akhir skrip, server dimulai melalui panggilan pemblokiran seperti `EventMachine::run()`. Di Node.js, tidak ada panggilan start-the-event-loop. Node.js cukup memasuki loop acara setelah menjalankan skrip input. Node.js keluar dari loop peristiwa ketika tidak ada lagi callback yang harus dilakukan. Perilaku ini seperti JavaScript browser — loop peristiwa disembunyikan dari pengguna.
HTTP adalah warga negara kelas satu di Node.js, dirancang dengan streaming dan rendah
latensi dalam pikiran. Ini membuat Node.js sangat cocok untuk fondasi web
perpustakaan atau kerangka kerja.
-Node.js dirancang tanpa thread bukan berarti Anda tidak dapat memanfaatkan banyak inti di lingkungan Anda. Proses anak dapat dihasilkan dengan menggunakan API child_process.fork() kami, dan dirancang agar mudah untuk berkomunikasi. Dibangun di atas antarmuka yang sama adalah modul cluster, yang memungkinkan Anda berbagi soket antar proses untuk mengaktifkan penyeimbangan beban pada inti Anda.
+Node.js dirancang tanpa thread bukan berarti Anda tidak dapat memanfaatkan banyak inti di lingkungan Anda. Proses anak dapat dihasilkan dengan menggunakan API child\_process.fork() kami, dan dirancang agar mudah untuk berkomunikasi. Dibangun di atas antarmuka yang sama adalah modul cluster, yang memungkinkan Anda berbagi soket antar proses untuk mengaktifkan penyeimbangan beban pada inti Anda.
[blocking vs. non-blocking]: /learn/asynchronous-work/overview-of-blocking-vs-non-blocking
[`child_process.fork()`]: https://nodejs.org/api/child_process.html
[`cluster`]: https://nodejs.org/api/cluster.html
[event machine]: https://github.com/eventmachine/eventmachine
-[twisted]: https://twisted.org/
+[berpilin]: https://twisted.org/
From 1636589b7cac82d23243a970aef7a2286665f242 Mon Sep 17 00:00:00 2001
From: nodejs-crowdin
Date: Mon, 16 Sep 2024 12:14:31 +0000
Subject: [PATCH 107/108] chore: automated format of translated files
Signed-off-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
---
apps/site/pages/fa/about/branding.mdx | 8 +-
apps/site/pages/fa/about/index.mdx | 16 +-
.../pages/fa/about/security-reporting.mdx | 11 +-
.../fa/download/package-manager/current.mdx | 1 +
.../fa/download/package-manager/index.mdx | 1 +
.../download/prebuilt-installer/current.mdx | 1 +
.../fa/download/prebuilt-installer/index.mdx | 1 +
.../pages/fa/download/source-code/current.mdx | 1 +
.../pages/fa/download/source-code/index.mdx | 1 +
apps/site/pages/fa/index.mdx | 173 +++++++++---------
apps/site/pages/fr/about/branding.mdx | 8 +-
apps/site/pages/fr/about/index.mdx | 16 +-
.../pages/fr/about/security-reporting.mdx | 11 +-
.../fr/download/package-manager/current.mdx | 1 +
.../fr/download/package-manager/index.mdx | 1 +
.../fr/download/prebuilt-binaries/current.mdx | 1 +
.../fr/download/prebuilt-binaries/index.mdx | 1 +
.../download/prebuilt-installer/current.mdx | 1 +
.../fr/download/prebuilt-installer/index.mdx | 1 +
.../pages/fr/download/source-code/current.mdx | 1 +
.../pages/fr/download/source-code/index.mdx | 1 +
apps/site/pages/fr/index.mdx | 171 ++++++++---------
apps/site/pages/id/about/branding.mdx | 8 +-
apps/site/pages/id/about/index.mdx | 20 +-
.../pages/id/about/security-reporting.mdx | 6 +-
.../id/download/package-manager/current.mdx | 1 +
.../id/download/package-manager/index.mdx | 1 +
.../id/download/prebuilt-binaries/current.mdx | 1 +
.../id/download/prebuilt-binaries/index.mdx | 1 +
.../download/prebuilt-installer/current.mdx | 1 +
.../id/download/prebuilt-installer/index.mdx | 1 +
.../pages/id/download/source-code/current.mdx | 1 +
.../pages/id/download/source-code/index.mdx | 1 +
apps/site/pages/id/index.mdx | 169 +++++++++--------
apps/site/pages/ja/about/branding.mdx | 8 +-
apps/site/pages/ja/about/index.mdx | 16 +-
.../ja/download/package-manager/current.mdx | 12 +-
.../ja/download/package-manager/index.mdx | 12 +-
.../ja/download/prebuilt-binaries/current.mdx | 11 +-
.../download/prebuilt-installer/current.mdx | 11 +-
.../ja/download/prebuilt-installer/index.mdx | 11 +-
.../pages/ja/download/source-code/current.mdx | 12 +-
.../pages/ja/download/source-code/index.mdx | 12 +-
apps/site/pages/ja/index.mdx | 169 +++++++++--------
.../pages/ko/download/source-code/index.mdx | 7 +-
apps/site/pages/ko/index.mdx | 169 +++++++++--------
apps/site/pages/pt/about/branding.mdx | 8 +-
apps/site/pages/pt/about/index.mdx | 16 +-
.../pages/pt/about/security-reporting.mdx | 11 +-
.../pt/download/package-manager/current.mdx | 1 +
.../pt/download/package-manager/index.mdx | 1 +
.../pt/download/prebuilt-binaries/current.mdx | 1 +
.../download/prebuilt-installer/current.mdx | 1 +
.../pt/download/prebuilt-installer/index.mdx | 1 +
.../pages/pt/download/source-code/current.mdx | 1 +
.../pages/pt/download/source-code/index.mdx | 1 +
apps/site/pages/pt/index.mdx | 169 +++++++++--------
apps/site/pages/uk/about/branding.mdx | 8 +-
apps/site/pages/uk/about/index.mdx | 16 +-
.../pages/uk/about/security-reporting.mdx | 11 +-
.../uk/download/package-manager/current.mdx | 1 +
.../uk/download/package-manager/index.mdx | 1 +
.../uk/download/prebuilt-binaries/current.mdx | 1 +
.../uk/download/prebuilt-binaries/index.mdx | 1 +
.../download/prebuilt-installer/current.mdx | 1 +
.../uk/download/prebuilt-installer/index.mdx | 1 +
.../pages/uk/download/source-code/current.mdx | 1 +
.../pages/uk/download/source-code/index.mdx | 1 +
apps/site/pages/uk/index.mdx | 169 +++++++++--------
apps/site/pages/zh-cn/about/branding.mdx | 8 +-
apps/site/pages/zh-cn/about/index.mdx | 18 +-
.../pages/zh-cn/about/security-reporting.mdx | 11 +-
.../download/package-manager/current.mdx | 1 +
.../zh-cn/download/package-manager/index.mdx | 1 +
.../download/prebuilt-binaries/current.mdx | 1 +
.../download/prebuilt-binaries/index.mdx | 1 +
.../download/prebuilt-installer/current.mdx | 1 +
.../download/prebuilt-installer/index.mdx | 1 +
.../zh-cn/download/source-code/current.mdx | 1 +
.../zh-cn/download/source-code/index.mdx | 1 +
apps/site/pages/zh-cn/index.mdx | 169 +++++++++--------
apps/site/pages/zh-tw/about/branding.mdx | 8 +-
apps/site/pages/zh-tw/about/index.mdx | 16 +-
.../pages/zh-tw/about/security-reporting.mdx | 11 +-
.../download/package-manager/current.mdx | 1 +
.../zh-tw/download/package-manager/index.mdx | 1 +
.../download/prebuilt-binaries/current.mdx | 1 +
.../download/prebuilt-binaries/index.mdx | 1 +
.../download/prebuilt-installer/current.mdx | 1 +
.../download/prebuilt-installer/index.mdx | 1 +
.../zh-tw/download/source-code/current.mdx | 1 +
.../zh-tw/download/source-code/index.mdx | 1 +
apps/site/pages/zh-tw/index.mdx | 169 +++++++++--------
93 files changed, 1095 insertions(+), 843 deletions(-)
diff --git a/apps/site/pages/fa/about/branding.mdx b/apps/site/pages/fa/about/branding.mdx
index 12df45e484a4..f32e9d8e175f 100644
--- a/apps/site/pages/fa/about/branding.mdx
+++ b/apps/site/pages/fa/about/branding.mdx
@@ -9,7 +9,13 @@ layout: about
## Node.js® Mascot
-
+
## لوگو Node.js®
diff --git a/apps/site/pages/fa/about/index.mdx b/apps/site/pages/fa/about/index.mdx
index 2d344a52bed7..1bc8bbe99714 100644
--- a/apps/site/pages/fa/about/index.mdx
+++ b/apps/site/pages/fa/about/index.mdx
@@ -14,13 +14,13 @@ const hostname = '127.0.0.1';
const port = 3000;
const server = createServer((req, res) => {
-res.statusCode = 200;
-res.setHeader('Content-Type', 'text/plain');
-res.end('Hello World');
+ res.statusCode = 200;
+ res.setHeader('Content-Type', 'text/plain');
+ res.end('Hello World');
});
server.listen(port, hostname, () => {
-console.log(`Server running at http://${hostname}:${port}/`);
+ console.log(`Server running at http://${hostname}:${port}/`);
});
```
@@ -31,13 +31,13 @@ const hostname = '127.0.0.1';
const port = 3000;
const server = createServer((req, res) => {
-res.statusCode = 200;
-res.setHeader('Content-Type', 'text/plain');
-res.end('Hello World');
+ res.statusCode = 200;
+ res.setHeader('Content-Type', 'text/plain');
+ res.end('Hello World');
});
server.listen(port, hostname, () => {
-console.log(`Server running at http://${hostname}:${port}/`);
+ console.log(`Server running at http://${hostname}:${port}/`);
});
```
diff --git a/apps/site/pages/fa/about/security-reporting.mdx b/apps/site/pages/fa/about/security-reporting.mdx
index 5060752c1d75..ab8dafdc590e 100644
--- a/apps/site/pages/fa/about/security-reporting.mdx
+++ b/apps/site/pages/fa/about/security-reporting.mdx
@@ -50,8 +50,15 @@ layout: about
## رویههای بهینه OpenSSF
-
-
+
+
[نشان بهترین شیوه ها](https://github.com/coreinfrastructure/best-practices-badge) بنیاد امنیت متن باز (OpenSSF) راهی است برای پروژههای نرمافزار آزاد/رایگان و متن باز (FLOSS) تا نشان دهند که از رویههای بهینه پیروی میکنند. پروژهها میتوانند به صورت داوطلبانه خود تأیید کنند که چگونه از هر رویه بهینه پیروی میکنند. مصرفکنندگان این نشان میتوانند به سرعت ارزیابی کنند که کدام پروژههای FLOSS از رویههای بهینه پیروی میکنند و در نتیجه احتمال بیشتری دارد که نرمافزارهای امن با کیفیت بالاتر تولید کنند.
diff --git a/apps/site/pages/fa/download/package-manager/current.mdx b/apps/site/pages/fa/download/package-manager/current.mdx
index ad7d5aa15364..2fac9d78fe9a 100644
--- a/apps/site/pages/fa/download/package-manager/current.mdx
+++ b/apps/site/pages/fa/download/package-manager/current.mdx
@@ -20,4 +20,5 @@ Node.js شامل است.
یاد بگیرید که چگونه امضاهای SHASUMS را تایید کنید
دیگر پکیج منیجر ها که توسط جامعه پشتیبانی میشوند را ببینید
+
diff --git a/apps/site/pages/fa/download/package-manager/index.mdx b/apps/site/pages/fa/download/package-manager/index.mdx
index 5b3870e5288f..8ad4424230a8 100644
--- a/apps/site/pages/fa/download/package-manager/index.mdx
+++ b/apps/site/pages/fa/download/package-manager/index.mdx
@@ -20,4 +20,5 @@ Node.js شامل است.
یاد بگیرید که چگونه امضاهای SHASUMS را تایید کنید
دیگر پکیج منیجر ها که توسط جامعه پشتیبانی میشوند را ببینید
+
diff --git a/apps/site/pages/fa/download/prebuilt-installer/current.mdx b/apps/site/pages/fa/download/prebuilt-installer/current.mdx
index 23112cde272f..5fb580d31fa6 100644
--- a/apps/site/pages/fa/download/prebuilt-installer/current.mdx
+++ b/apps/site/pages/fa/download/prebuilt-installer/current.mdx
@@ -22,4 +22,5 @@ Node.js شامل است.
تمام آپشنهای دانلود Node.js را ببینید
درباره Node.js مطالعه کنید
+
diff --git a/apps/site/pages/fa/download/prebuilt-installer/index.mdx b/apps/site/pages/fa/download/prebuilt-installer/index.mdx
index e58e8727f6f5..a74e2634d9e8 100644
--- a/apps/site/pages/fa/download/prebuilt-installer/index.mdx
+++ b/apps/site/pages/fa/download/prebuilt-installer/index.mdx
@@ -22,4 +22,5 @@ Node.js شامل است.
تمام آپشنهای دانلود Node.js را ببینید
درباره Node.js مطالعه کنید
+
diff --git a/apps/site/pages/fa/download/source-code/current.mdx b/apps/site/pages/fa/download/source-code/current.mdx
index 3b5cdd32cd74..25599aa1b2b0 100644
--- a/apps/site/pages/fa/download/source-code/current.mdx
+++ b/apps/site/pages/fa/download/source-code/current.mdx
@@ -20,4 +20,5 @@ Node.js شامل است.
یاد بگیرید که چگونه امضاهای SHASUMS را تایید کنید
نحوه ساخت Node.js از سورس کد را ببینید.
+
diff --git a/apps/site/pages/fa/download/source-code/index.mdx b/apps/site/pages/fa/download/source-code/index.mdx
index 3b5cdd32cd74..25599aa1b2b0 100644
--- a/apps/site/pages/fa/download/source-code/index.mdx
+++ b/apps/site/pages/fa/download/source-code/index.mdx
@@ -20,4 +20,5 @@ Node.js شامل است.
یاد بگیرید که چگونه امضاهای SHASUMS را تایید کنید
نحوه ساخت Node.js از سورس کد را ببینید.
+
diff --git a/apps/site/pages/fa/index.mdx b/apps/site/pages/fa/index.mdx
index aa2b14dbcaec..57634d9833d1 100644
--- a/apps/site/pages/fa/index.mdx
+++ b/apps/site/pages/fa/index.mdx
@@ -9,9 +9,10 @@ layout: home
اجرا جاوااسکریپت در همه جا
- Node.js یک محیط اجرای جاوااسکریپت متنباز، رایگان و چندسکویی است
- که به توسعه دهندگان اجازه میدهد تا سرورها، وب اپلیکیشنها
- ابزارهای خط فرمان و اسکریپتها را ایجاد کنند.
+Node.js یک محیط اجرای جاوااسکریپت متنباز، رایگان و چندسکویی است
+که به توسعه دهندگان اجازه میدهد تا سرورها، وب اپلیکیشنها
+ابزارهای خط فرمان و اسکریپتها را ایجاد کنند.
+
@@ -46,87 +47,93 @@ layout: home
// server.mjs
import { createServer } from 'node:http';
- const server = createServer((req, res) => {
- res.writeHead(200, { 'Content-Type': 'text/plain' });
- res.end('Hello World!\n');
- });
-
- // starts a simple http server locally on port 3000
- server.listen(3000, '127.0.0.1', () => {
- console.log('Listening on 127.0.0.1:3000');
- });
-
- // run with `node server.mjs`
- ```
-
- ```js displayName="Write Tests"
- // tests.mjs
- import assert from 'node:assert';
- import test from 'node:test';
-
- test('that 1 is equal 1', () => {
- assert.strictEqual(1, 1);
- });
-
- test('that throws as 1 is not equal 2', () => {
- // throws an exception because 1 != 2
- assert.strictEqual(1, 2);
- });
-
- // run with `node tests.mjs`
- ```
-
- ```js displayName="Read and Hash a File"
- // crypto.mjs
- import { createHash } from 'node:crypto';
- import { readFile } from 'node:fs/promises';
-
- const hasher = createHash('sha1');
-
- hasher.setEncoding('hex');
- // ensure you have a `package.json` file for this test!
- hasher.write(await readFile('package.json'));
- hasher.end();
-
- const fileHash = hasher.read();
-
- // run with `node crypto.mjs`
- ```
-
- ```js displayName="Streams Pipeline"
- // streams.mjs
- import { pipeline } from 'node:stream/promises';
- import { createReadStream, createWriteStream } from 'node:fs';
- import { createGzip } from 'node:zlib';
-
- // ensure you have a `package.json` file for this test!
- await pipeline
- (
- createReadStream('package.json'),
- createGzip(),
- createWriteStream('package.json.gz')
- );
-
- // run with `node streams.mjs`
- ```
-
- ```js displayName="Work with Threads"
- // threads.mjs
- import { Worker, isMainThread,
- workerData, parentPort } from 'node:worker_threads';
-
- if (isMainThread) {
- const data = 'some data';
- const worker = new Worker(import.meta.filename, { workerData: data });
- worker.on('message', msg => console.log('Reply from Thread:', msg));
- } else {
- const source = workerData;
- parentPort.postMessage(btoa(source.toUpperCase()));
- }
-
- // run with `node threads.mjs`
- ```
+const server = createServer((req, res) => {
+res.writeHead(200, { 'Content-Type': 'text/plain' });
+res.end('Hello World!\n');
+});
+
+// starts a simple http server locally on port 3000
+server.listen(3000, '127.0.0.1', () => {
+console.log('Listening on 127.0.0.1:3000');
+});
+
+// run with `node server.mjs`
+
+````
+
+```js displayName="Write Tests"
+// tests.mjs
+import assert from 'node:assert';
+import test from 'node:test';
+
+test('that 1 is equal 1', () => {
+ assert.strictEqual(1, 1);
+});
+
+test('that throws as 1 is not equal 2', () => {
+ // throws an exception because 1 != 2
+ assert.strictEqual(1, 2);
+});
+
+// run with `node tests.mjs`
+````
+
+```js displayName="Read and Hash a File"
+// crypto.mjs
+import { createHash } from 'node:crypto';
+import { readFile } from 'node:fs/promises';
+
+const hasher = createHash('sha1');
+
+hasher.setEncoding('hex');
+// ensure you have a `package.json` file for this test!
+hasher.write(await readFile('package.json'));
+hasher.end();
+
+const fileHash = hasher.read();
+
+// run with `node crypto.mjs`
+```
+
+```js displayName="Streams Pipeline"
+// streams.mjs
+import { pipeline } from 'node:stream/promises';
+import { createReadStream, createWriteStream } from 'node:fs';
+import { createGzip } from 'node:zlib';
+
+// ensure you have a `package.json` file for this test!
+await pipeline(
+ createReadStream('package.json'),
+ createGzip(),
+ createWriteStream('package.json.gz')
+);
+
+// run with `node streams.mjs`
+```
+
+```js displayName="Work with Threads"
+// threads.mjs
+import {
+ Worker,
+ isMainThread,
+ workerData,
+ parentPort,
+} from 'node:worker_threads';
+
+if (isMainThread) {
+ const data = 'some data';
+ const worker = new Worker(import.meta.filename, { workerData: data });
+ worker.on('message', msg => console.log('Reply from Thread:', msg));
+} else {
+ const source = workerData;
+ parentPort.postMessage(btoa(source.toUpperCase()));
+}
+
+// run with `node threads.mjs`
+```
+
با [مطالب آموزشی](/learn) ما، بیشتر در مورد اینکه Node.js چه امکاناتی را ارائه می دهد بیاموزید.
+
diff --git a/apps/site/pages/fr/about/branding.mdx b/apps/site/pages/fr/about/branding.mdx
index bcf1a10d2397..8f96b99a5e5c 100644
--- a/apps/site/pages/fr/about/branding.mdx
+++ b/apps/site/pages/fr/about/branding.mdx
@@ -9,7 +9,13 @@ Veuillez consulter la [politique en matière de marques](https://trademark-polic
## Mascotte de Node.js®
-
+
## Logo Node.js®
diff --git a/apps/site/pages/fr/about/index.mdx b/apps/site/pages/fr/about/index.mdx
index 89ec644e63ba..c08e7bff80aa 100644
--- a/apps/site/pages/fr/about/index.mdx
+++ b/apps/site/pages/fr/about/index.mdx
@@ -17,13 +17,13 @@ const hostname = '127.0.0.1';
const port = 3000;
const server = createServer((req, res) => {
-res.statusCode = 200;
-res.setHeader('Content-Type', 'text/plain');
-res.end('Hello World');
+ res.statusCode = 200;
+ res.setHeader('Content-Type', 'text/plain');
+ res.end('Hello World');
});
server.listen(port, hostname, () => {
-console.log(`Server running at http://${hostname}:${port}/`);
+ console.log(`Server running at http://${hostname}:${port}/`);
});
```
@@ -34,13 +34,13 @@ const hostname = '127.0.0.1';
const port = 3000;
const server = createServer((req, res) => {
-res.statusCode = 200;
-res.setHeader('Content-Type', 'text/plain');
-res.end('Hello World');
+ res.statusCode = 200;
+ res.setHeader('Content-Type', 'text/plain');
+ res.end('Hello World');
});
server.listen(port, hostname, () => {
-console.log(`Server running at http://${hostname}:${port}/`);
+ console.log(`Server running at http://${hostname}:${port}/`);
});
```
diff --git a/apps/site/pages/fr/about/security-reporting.mdx b/apps/site/pages/fr/about/security-reporting.mdx
index ff4c6f333ab9..4209d3c628ec 100644
--- a/apps/site/pages/fr/about/security-reporting.mdx
+++ b/apps/site/pages/fr/about/security-reporting.mdx
@@ -74,8 +74,15 @@ Si vous avez des suggestions sur la façon dont ce processus pourrait être amé
## OpenSSF Best Practices
-
-
+
+
Le [badge des meilleures pratiques] de l'Open Source Security Foundation (OpenSSF) (https://github.com/coreinfrastructure/best-practices-badge) est un moyen pour les projets de logiciels libres et open source (FLOSS) de montrer qu'ils suivent les meilleures pratiques. Les projets peuvent volontairement auto-certifier la manière dont ils suivent chaque meilleure pratique. Les utilisateurs du badge peuvent rapidement déterminer quels sont les projets FLOSS qui suivent les meilleures pratiques et qui sont donc plus susceptibles de produire des logiciels sécurisés de meilleure qualité.
diff --git a/apps/site/pages/fr/download/package-manager/current.mdx b/apps/site/pages/fr/download/package-manager/current.mdx
index 47012d76e402..69f1c75348f9 100644
--- a/apps/site/pages/fr/download/package-manager/current.mdx
+++ b/apps/site/pages/fr/download/package-manager/current.mdx
@@ -20,4 +20,5 @@ Lire l'article de blog pour cette versionvérifier les SHASUMS signés
Consultez d'autres gestionnaires de paquets soutenus par la communauté
+
diff --git a/apps/site/pages/fr/download/package-manager/index.mdx b/apps/site/pages/fr/download/package-manager/index.mdx
index 47012d76e402..69f1c75348f9 100644
--- a/apps/site/pages/fr/download/package-manager/index.mdx
+++ b/apps/site/pages/fr/download/package-manager/index.mdx
@@ -20,4 +20,5 @@ Lire l'article de blog pour cette versionvérifier les SHASUMS signés
Consultez d'autres gestionnaires de paquets soutenus par la communauté
+
diff --git a/apps/site/pages/fr/download/prebuilt-binaries/current.mdx b/apps/site/pages/fr/download/prebuilt-binaries/current.mdx
index 5d387ca24ef7..8bb21316ba7a 100644
--- a/apps/site/pages/fr/download/prebuilt-binaries/current.mdx
+++ b/apps/site/pages/fr/download/prebuilt-binaries/current.mdx
@@ -20,4 +20,5 @@ Lire l'article de blog pour cette versionvérifier les SHASUMS signés
Consultez les binaires préconstruits Nightly ou les Unofficial Builds pour d'autres plateformes.
+
diff --git a/apps/site/pages/fr/download/prebuilt-binaries/index.mdx b/apps/site/pages/fr/download/prebuilt-binaries/index.mdx
index 1f417c815dcd..f6593de1d83b 100644
--- a/apps/site/pages/fr/download/prebuilt-binaries/index.mdx
+++ b/apps/site/pages/fr/download/prebuilt-binaries/index.mdx
@@ -20,4 +20,5 @@ Lire l'article de blog pour cette versionvérifier les SHASUMS signés.
Consultez les binaires préconstruits Nightly, tous les binaires préconstruits Release ou Builds Non Officiels pour les autres plateformes.
+
diff --git a/apps/site/pages/fr/download/prebuilt-installer/current.mdx b/apps/site/pages/fr/download/prebuilt-installer/current.mdx
index a93f56774a6d..451440f6adc9 100644
--- a/apps/site/pages/fr/download/prebuilt-installer/current.mdx
+++ b/apps/site/pages/fr/download/prebuilt-installer/current.mdx
@@ -22,4 +22,5 @@ Apprenez à vérifier les SHASUMSoptions de téléchargement de Node.js.
En savoir plus sur les Versions Node.js
+
diff --git a/apps/site/pages/fr/download/prebuilt-installer/index.mdx b/apps/site/pages/fr/download/prebuilt-installer/index.mdx
index a93f56774a6d..451440f6adc9 100644
--- a/apps/site/pages/fr/download/prebuilt-installer/index.mdx
+++ b/apps/site/pages/fr/download/prebuilt-installer/index.mdx
@@ -22,4 +22,5 @@ Apprenez à vérifier les SHASUMSoptions de téléchargement de Node.js.
En savoir plus sur les Versions Node.js
+
diff --git a/apps/site/pages/fr/download/source-code/current.mdx b/apps/site/pages/fr/download/source-code/current.mdx
index 01098c440050..f7a2f1af7583 100644
--- a/apps/site/pages/fr/download/source-code/current.mdx
+++ b/apps/site/pages/fr/download/source-code/current.mdx
@@ -20,4 +20,5 @@ Lire l'article de blog pour cette versionvérifier les SHASUMS signés
Découvrez comment compiler Node.js à partir des sources.
+
diff --git a/apps/site/pages/fr/download/source-code/index.mdx b/apps/site/pages/fr/download/source-code/index.mdx
index 01098c440050..f7a2f1af7583 100644
--- a/apps/site/pages/fr/download/source-code/index.mdx
+++ b/apps/site/pages/fr/download/source-code/index.mdx
@@ -20,4 +20,5 @@ Lire l'article de blog pour cette versionvérifier les SHASUMS signés
Découvrez comment compiler Node.js à partir des sources.
+
diff --git a/apps/site/pages/fr/index.mdx b/apps/site/pages/fr/index.mdx
index 0d45f38a64b9..54262c84798a 100644
--- a/apps/site/pages/fr/index.mdx
+++ b/apps/site/pages/fr/index.mdx
@@ -9,8 +9,9 @@ layout: home
Exécuter du JavaScript partout
- Node.js® est un environnement d'exécution JavaScript gratuit, open-source et multiplateforme qui permet aux développeurs de créer des serveurs, des applications web et des applications de gestion de contenu.
- qui permet aux développeurs de créer des serveurs, des applications web, des outils en ligne de commande et des scripts.
+Node.js® est un environnement d'exécution JavaScript gratuit, open-source et multiplateforme qui permet aux développeurs de créer des serveurs, des applications web et des applications de gestion de contenu.
+qui permet aux développeurs de créer des serveurs, des applications web, des outils en ligne de commande et des scripts.
+
@@ -45,87 +46,93 @@ layout: home
// server.mjs
import { createServer } from 'node:http';
- const server = createServer((req, res) => {
- res.writeHead(200, { 'Content-Type': 'text/plain' });
- res.end('Hello World!\n');
- });
-
- // starts a simple http server locally on port 3000
- server.listen(3000, '127.0.0.1', () => {
- console.log('Listening on 127.0.0.1:3000');
- });
-
- // run with `node server.mjs`
- ```
-
- ```js displayName="Write Tests"
- // tests.mjs
- import assert from 'node:assert';
- import test from 'node:test';
-
- test('that 1 is equal 1', () => {
- assert.strictEqual(1, 1);
- });
-
- test('that throws as 1 is not equal 2', () => {
- // throws an exception because 1 != 2
- assert.strictEqual(1, 2);
- });
-
- // run with `node tests.mjs`
- ```
-
- ```js displayName="Read and Hash a File"
- // crypto.mjs
- import { createHash } from 'node:crypto';
- import { readFile } from 'node:fs/promises';
-
- const hasher = createHash('sha1');
-
- hasher.setEncoding('hex');
- // ensure you have a `package.json` file for this test!
- hasher.write(await readFile('package.json'));
- hasher.end();
-
- const fileHash = hasher.read();
-
- // run with `node crypto.mjs`
- ```
-
- ```js displayName="Streams Pipeline"
- // streams.mjs
- import { pipeline } from 'node:stream/promises';
- import { createReadStream, createWriteStream } from 'node:fs';
- import { createGzip } from 'node:zlib';
-
- // ensure you have a `package.json` file for this test!
- await pipeline
- (
- createReadStream('package.json'),
- createGzip(),
- createWriteStream('package.json.gz')
- );
-
- // run with `node streams.mjs`
- ```
-
- ```js displayName="Work with Threads"
- // threads.mjs
- import { Worker, isMainThread,
- workerData, parentPort } from 'node:worker_threads';
-
- if (isMainThread) {
- const data = 'some data';
- const worker = new Worker(import.meta.filename, { workerData: data });
- worker.on('message', msg => console.log('Reply from Thread:', msg));
- } else {
- const source = workerData;
- parentPort.postMessage(btoa(source.toUpperCase()));
- }
-
- // run with `node threads.mjs`
- ```
+const server = createServer((req, res) => {
+res.writeHead(200, { 'Content-Type': 'text/plain' });
+res.end('Hello World!\n');
+});
+
+// starts a simple http server locally on port 3000
+server.listen(3000, '127.0.0.1', () => {
+console.log('Listening on 127.0.0.1:3000');
+});
+
+// run with `node server.mjs`
+
+````
+
+```js displayName="Write Tests"
+// tests.mjs
+import assert from 'node:assert';
+import test from 'node:test';
+
+test('that 1 is equal 1', () => {
+ assert.strictEqual(1, 1);
+});
+
+test('that throws as 1 is not equal 2', () => {
+ // throws an exception because 1 != 2
+ assert.strictEqual(1, 2);
+});
+
+// run with `node tests.mjs`
+````
+
+```js displayName="Read and Hash a File"
+// crypto.mjs
+import { createHash } from 'node:crypto';
+import { readFile } from 'node:fs/promises';
+
+const hasher = createHash('sha1');
+
+hasher.setEncoding('hex');
+// ensure you have a `package.json` file for this test!
+hasher.write(await readFile('package.json'));
+hasher.end();
+
+const fileHash = hasher.read();
+
+// run with `node crypto.mjs`
+```
+
+```js displayName="Streams Pipeline"
+// streams.mjs
+import { pipeline } from 'node:stream/promises';
+import { createReadStream, createWriteStream } from 'node:fs';
+import { createGzip } from 'node:zlib';
+
+// ensure you have a `package.json` file for this test!
+await pipeline(
+ createReadStream('package.json'),
+ createGzip(),
+ createWriteStream('package.json.gz')
+);
+
+// run with `node streams.mjs`
+```
+
+```js displayName="Work with Threads"
+// threads.mjs
+import {
+ Worker,
+ isMainThread,
+ workerData,
+ parentPort,
+} from 'node:worker_threads';
+
+if (isMainThread) {
+ const data = 'some data';
+ const worker = new Worker(import.meta.filename, { workerData: data });
+ worker.on('message', msg => console.log('Reply from Thread:', msg));
+} else {
+ const source = workerData;
+ parentPort.postMessage(btoa(source.toUpperCase()));
+}
+
+// run with `node threads.mjs`
+```
+
Apprenez-en plus sur ce que Node.js est capable d'offrir avec notre [Matériel d'apprentissage](/learn).
+
diff --git a/apps/site/pages/id/about/branding.mdx b/apps/site/pages/id/about/branding.mdx
index 0f782936e515..609e46191e54 100644
--- a/apps/site/pages/id/about/branding.mdx
+++ b/apps/site/pages/id/about/branding.mdx
@@ -9,7 +9,13 @@ Harap tinjau [kebijakan merek dagang](https://trademark-policy.openjsf.org/) unt
## Maskot Node.js
-
+
## Logo Node.js®
diff --git a/apps/site/pages/id/about/index.mdx b/apps/site/pages/id/about/index.mdx
index 3f15ddf32931..bb2d0e29b91e 100644
--- a/apps/site/pages/id/about/index.mdx
+++ b/apps/site/pages/id/about/index.mdx
@@ -17,13 +17,13 @@ const hostname = '127.0.0.1';
const port = 3000;
const server = createServer((req, res) => {
-res.statusCode = 200;
-res.setHeader('Content-Type', 'text/plain');
-res.end('Hello World');
+ res.statusCode = 200;
+ res.setHeader('Content-Type', 'text/plain');
+ res.end('Hello World');
});
server.listen(port, hostname, () => {
-console.log(`Server running at http://${hostname}:${port}/`);
+ console.log(`Server running at http://${hostname}:${port}/`);
});
```
@@ -34,13 +34,13 @@ const hostname = '127.0.0.1';
const port = 3000;
const server = createServer((req, res) => {
-res.statusCode = 200;
-res.setHeader('Content-Type', 'text/plain');
-res.end('Hello World');
+ res.statusCode = 200;
+ res.setHeader('Content-Type', 'text/plain');
+ res.end('Hello World');
});
server.listen(port, hostname, () => {
-console.log(`Server running at http://${hostname}:${port}/`);
+ console.log(`Server running at http://${hostname}:${port}/`);
});
```
@@ -56,13 +56,13 @@ Jika ada yang belum familiar dengan bahasa ini, ada artikel lengkap tentang [Blo
---
-Node.js memiliki desain yang mirip dengan, dan dipengaruhi oleh, sistem seperti [Event Machine] [] Ruby dan [Twisted] [] Python. Node.js membawa model acara sedikit lebih jauh. Ini menyajikan loop peristiwa sebagai konstruksi runtime, bukan sebagai perpustakaan. Di sistem lain, selalu ada panggilan pemblokiran untuk memulai perulangan peristiwa. Biasanya, perilaku ditentukan melalui callback di awal skrip, dan di akhir skrip, server dimulai melalui panggilan pemblokiran seperti `EventMachine::run()`. Di Node.js, tidak ada panggilan start-the-event-loop. Node.js cukup memasuki loop acara setelah menjalankan skrip input. Node.js keluar dari loop peristiwa ketika tidak ada lagi callback yang harus dilakukan. Perilaku ini seperti JavaScript browser — loop peristiwa disembunyikan dari pengguna.
+Node.js memiliki desain yang mirip dengan, dan dipengaruhi oleh, sistem seperti [Event Machine] \[] Ruby dan \[Twisted] \[] Python. Node.js membawa model acara sedikit lebih jauh. Ini menyajikan loop peristiwa sebagai konstruksi runtime, bukan sebagai perpustakaan. Di sistem lain, selalu ada panggilan pemblokiran untuk memulai perulangan peristiwa. Biasanya, perilaku ditentukan melalui callback di awal skrip, dan di akhir skrip, server dimulai melalui panggilan pemblokiran seperti `EventMachine::run()`. Di Node.js, tidak ada panggilan start-the-event-loop. Node.js cukup memasuki loop acara setelah menjalankan skrip input. Node.js keluar dari loop peristiwa ketika tidak ada lagi callback yang harus dilakukan. Perilaku ini seperti JavaScript browser — loop peristiwa disembunyikan dari pengguna.
HTTP adalah warga negara kelas satu di Node.js, dirancang dengan streaming dan rendah
latensi dalam pikiran. Ini membuat Node.js sangat cocok untuk fondasi web
perpustakaan atau kerangka kerja.
-Node.js dirancang tanpa thread bukan berarti Anda tidak dapat memanfaatkan banyak inti di lingkungan Anda. Proses anak dapat dihasilkan dengan menggunakan API child\_process.fork() kami, dan dirancang agar mudah untuk berkomunikasi. Dibangun di atas antarmuka yang sama adalah modul cluster, yang memungkinkan Anda berbagi soket antar proses untuk mengaktifkan penyeimbangan beban pada inti Anda.
+Node.js dirancang tanpa thread bukan berarti Anda tidak dapat memanfaatkan banyak inti di lingkungan Anda. Proses anak dapat dihasilkan dengan menggunakan API child_process.fork() kami, dan dirancang agar mudah untuk berkomunikasi. Dibangun di atas antarmuka yang sama adalah modul cluster, yang memungkinkan Anda berbagi soket antar proses untuk mengaktifkan penyeimbangan beban pada inti Anda.
[blocking vs. non-blocking]: /learn/asynchronous-work/overview-of-blocking-vs-non-blocking
[`child_process.fork()`]: https://nodejs.org/api/child_process.html
diff --git a/apps/site/pages/id/about/security-reporting.mdx b/apps/site/pages/id/about/security-reporting.mdx
index eec7c6747e8c..d2808fcb4b6b 100644
--- a/apps/site/pages/id/about/security-reporting.mdx
+++ b/apps/site/pages/id/about/security-reporting.mdx
@@ -51,7 +51,11 @@ Jika Anda memiliki saran tentang bagaimana proses ini dapat ditingkatkan, silaka
## Praktik Terbaik OpenSSF
-
+
[Best Practices badge](https://github.com/coreinfrastructure/best-practices-badge) Open Source Security Foundation (OpenSSF) adalah cara bagi proyek Free/Libre dan Open Source Software (FLOSS) untuk menunjukkan bahwa mereka mengikuti praktik terbaik. Proyek dapat secara sukarela melakukan sertifikasi sendiri bagaimana mereka mengikuti setiap praktik terbaik. Konsumen yang tersertifikasi dapat dengan cepat menilai proyek FLOSS mana yang mengikuti praktik terbaik dan sebagai hasilnya, mereka lebih cenderung menghasilkan perangkat lunak aman berkualitas lebih tinggi.
diff --git a/apps/site/pages/id/download/package-manager/current.mdx b/apps/site/pages/id/download/package-manager/current.mdx
index 7790d81e0105..ee5127dbddfe 100644
--- a/apps/site/pages/id/download/package-manager/current.mdx
+++ b/apps/site/pages/id/download/package-manager/current.mdx
@@ -20,4 +20,5 @@ Baca pos artikel untuk versi ini
Pelajari cara memverifikasi SHASUMS yang ditandatangani
Lihat pengelola paket yang didukung komunitas lainnya
+
diff --git a/apps/site/pages/id/download/package-manager/index.mdx b/apps/site/pages/id/download/package-manager/index.mdx
index 7790d81e0105..ee5127dbddfe 100644
--- a/apps/site/pages/id/download/package-manager/index.mdx
+++ b/apps/site/pages/id/download/package-manager/index.mdx
@@ -20,4 +20,5 @@ Baca pos artikel untuk versi ini
Pelajari cara memverifikasi SHASUMS yang ditandatangani
Lihat pengelola paket yang didukung komunitas lainnya
+
diff --git a/apps/site/pages/id/download/prebuilt-binaries/current.mdx b/apps/site/pages/id/download/prebuilt-binaries/current.mdx
index 9faa45525bfe..108e566022a2 100644
--- a/apps/site/pages/id/download/prebuilt-binaries/current.mdx
+++ b/apps/site/pages/id/download/prebuilt-binaries/current.mdx
@@ -20,4 +20,5 @@ Baca pos artikel untuk versi ini
Pelajari cara memverifikasi SHASUMS yang ditandatangani
Lihat biner pra-dibangun secara Nightly atau Bangunan Tidak Resmi untuk platform lain
+
diff --git a/apps/site/pages/id/download/prebuilt-binaries/index.mdx b/apps/site/pages/id/download/prebuilt-binaries/index.mdx
index 0de7f0c63f52..84edff3032a1 100644
--- a/apps/site/pages/id/download/prebuilt-binaries/index.mdx
+++ b/apps/site/pages/id/download/prebuilt-binaries/index.mdx
@@ -20,4 +20,5 @@ Baca pos artikel untuk versi ini.
Pelajari cara memverifikasi SHASUMS yang ditandatangani.
Lihat biner pra-dibangun secara Nightly, semua biner pra-dibangun Rilis, atau Bangunan Tidak Resmi untuk platform lain.
+
diff --git a/apps/site/pages/id/download/prebuilt-installer/current.mdx b/apps/site/pages/id/download/prebuilt-installer/current.mdx
index 87541e7cfcce..de6d49485cbc 100644
--- a/apps/site/pages/id/download/prebuilt-installer/current.mdx
+++ b/apps/site/pages/id/download/prebuilt-installer/current.mdx
@@ -22,4 +22,5 @@ Pelajari cara memverifikasi SHASUMS yang ditandat
Lihat semua opsi unduh Node.js yang tersedia
Pelajari tentang Rilis Node.js
+
diff --git a/apps/site/pages/id/download/prebuilt-installer/index.mdx b/apps/site/pages/id/download/prebuilt-installer/index.mdx
index 87541e7cfcce..de6d49485cbc 100644
--- a/apps/site/pages/id/download/prebuilt-installer/index.mdx
+++ b/apps/site/pages/id/download/prebuilt-installer/index.mdx
@@ -22,4 +22,5 @@ Pelajari cara memverifikasi SHASUMS yang ditandat
Lihat semua opsi unduh Node.js yang tersedia
Pelajari tentang Rilis Node.js
+
diff --git a/apps/site/pages/id/download/source-code/current.mdx b/apps/site/pages/id/download/source-code/current.mdx
index 9752fa9e466a..0979f0795113 100644
--- a/apps/site/pages/id/download/source-code/current.mdx
+++ b/apps/site/pages/id/download/source-code/current.mdx
@@ -20,4 +20,5 @@ Baca pos artikel untuk versi ini
Pelajari cara memverifikasi SHASUMS yang ditandatangani
Lihat bagaimana cara membangun Node.js dari sumber.
+
diff --git a/apps/site/pages/id/download/source-code/index.mdx b/apps/site/pages/id/download/source-code/index.mdx
index 9752fa9e466a..0979f0795113 100644
--- a/apps/site/pages/id/download/source-code/index.mdx
+++ b/apps/site/pages/id/download/source-code/index.mdx
@@ -20,4 +20,5 @@ Baca pos artikel untuk versi ini
Pelajari cara memverifikasi SHASUMS yang ditandatangani
Lihat bagaimana cara membangun Node.js dari sumber.
+
diff --git a/apps/site/pages/id/index.mdx b/apps/site/pages/id/index.mdx
index 9da20d625dc3..b7ca646a0b6a 100644
--- a/apps/site/pages/id/index.mdx
+++ b/apps/site/pages/id/index.mdx
@@ -9,7 +9,8 @@ layout: home
Jalankan JavaScript Di Mana Saja
- Node.js® adalah lingkungan runtime JavaScript gratis dan sumber terbuka yang lintas platform, yang memungkinkan pengembang membuat server, aplikasi web, alat baris perintah, dan skrip.
+Node.js® adalah lingkungan runtime JavaScript gratis dan sumber terbuka yang lintas platform, yang memungkinkan pengembang membuat server, aplikasi web, alat baris perintah, dan skrip.
+
@@ -44,87 +45,93 @@ layout: home
// server.mjs
import { createServer } from 'node:http';
- const server = createServer((req, res) => {
- res.writeHead(200, { 'Content-Type': 'text/plain' });
- res.end('Hello World!\n');
- });
-
- // starts a simple http server locally on port 3000
- server.listen(3000, '127.0.0.1', () => {
- console.log('Listening on 127.0.0.1:3000');
- });
-
- // run with `node server.mjs`
- ```
-
- ```js displayName="Write Tests"
- // tests.mjs
- import assert from 'node:assert';
- import test from 'node:test';
-
- test('that 1 is equal 1', () => {
- assert.strictEqual(1, 1);
- });
-
- test('that throws as 1 is not equal 2', () => {
- // throws an exception because 1 != 2
- assert.strictEqual(1, 2);
- });
-
- // run with `node tests.mjs`
- ```
-
- ```js displayName="Read and Hash a File"
- // crypto.mjs
- import { createHash } from 'node:crypto';
- import { readFile } from 'node:fs/promises';
-
- const hasher = createHash('sha1');
-
- hasher.setEncoding('hex');
- // ensure you have a `package.json` file for this test!
- hasher.write(await readFile('package.json'));
- hasher.end();
-
- const fileHash = hasher.read();
-
- // run with `node crypto.mjs`
- ```
-
- ```js displayName="Streams Pipeline"
- // streams.mjs
- import { pipeline } from 'node:stream/promises';
- import { createReadStream, createWriteStream } from 'node:fs';
- import { createGzip } from 'node:zlib';
-
- // ensure you have a `package.json` file for this test!
- await pipeline
- (
- createReadStream('package.json'),
- createGzip(),
- createWriteStream('package.json.gz')
- );
-
- // run with `node streams.mjs`
- ```
-
- ```js displayName="Work with Threads"
- // threads.mjs
- import { Worker, isMainThread,
- workerData, parentPort } from 'node:worker_threads';
-
- if (isMainThread) {
- const data = 'some data';
- const worker = new Worker(import.meta.filename, { workerData: data });
- worker.on('message', msg => console.log('Reply from Thread:', msg));
- } else {
- const source = workerData;
- parentPort.postMessage(btoa(source.toUpperCase()));
- }
-
- // run with `node threads.mjs`
- ```
+const server = createServer((req, res) => {
+res.writeHead(200, { 'Content-Type': 'text/plain' });
+res.end('Hello World!\n');
+});
+
+// starts a simple http server locally on port 3000
+server.listen(3000, '127.0.0.1', () => {
+console.log('Listening on 127.0.0.1:3000');
+});
+
+// run with `node server.mjs`
+
+````
+
+```js displayName="Write Tests"
+// tests.mjs
+import assert from 'node:assert';
+import test from 'node:test';
+
+test('that 1 is equal 1', () => {
+ assert.strictEqual(1, 1);
+});
+
+test('that throws as 1 is not equal 2', () => {
+ // throws an exception because 1 != 2
+ assert.strictEqual(1, 2);
+});
+
+// run with `node tests.mjs`
+````
+
+```js displayName="Read and Hash a File"
+// crypto.mjs
+import { createHash } from 'node:crypto';
+import { readFile } from 'node:fs/promises';
+
+const hasher = createHash('sha1');
+
+hasher.setEncoding('hex');
+// ensure you have a `package.json` file for this test!
+hasher.write(await readFile('package.json'));
+hasher.end();
+
+const fileHash = hasher.read();
+
+// run with `node crypto.mjs`
+```
+
+```js displayName="Streams Pipeline"
+// streams.mjs
+import { pipeline } from 'node:stream/promises';
+import { createReadStream, createWriteStream } from 'node:fs';
+import { createGzip } from 'node:zlib';
+
+// ensure you have a `package.json` file for this test!
+await pipeline(
+ createReadStream('package.json'),
+ createGzip(),
+ createWriteStream('package.json.gz')
+);
+
+// run with `node streams.mjs`
+```
+
+```js displayName="Work with Threads"
+// threads.mjs
+import {
+ Worker,
+ isMainThread,
+ workerData,
+ parentPort,
+} from 'node:worker_threads';
+
+if (isMainThread) {
+ const data = 'some data';
+ const worker = new Worker(import.meta.filename, { workerData: data });
+ worker.on('message', msg => console.log('Reply from Thread:', msg));
+} else {
+ const source = workerData;
+ parentPort.postMessage(btoa(source.toUpperCase()));
+}
+
+// run with `node threads.mjs`
+```
+
Pelajari lebih lanjut tentang apa yang bisa ditawarkan Node.js melalui [Bahan Pembelajaran](/learn) kami.
+
diff --git a/apps/site/pages/ja/about/branding.mdx b/apps/site/pages/ja/about/branding.mdx
index 19800ec1a151..70bfbb817e3a 100644
--- a/apps/site/pages/ja/about/branding.mdx
+++ b/apps/site/pages/ja/about/branding.mdx
@@ -9,7 +9,13 @@ Node.jsのロゴやシンボルマークの許可されている利用方法に
## Node.js®マスコット
-
+
## Node.js®ロゴ
diff --git a/apps/site/pages/ja/about/index.mdx b/apps/site/pages/ja/about/index.mdx
index 7f5bc663529e..00c987a077ad 100644
--- a/apps/site/pages/ja/about/index.mdx
+++ b/apps/site/pages/ja/about/index.mdx
@@ -14,13 +14,13 @@ const hostname = '127.0.0.1';
const port = 3000;
const server = createServer((req, res) => {
-res.statusCode = 200;
-res.setHeader('Content-Type', 'text/plain');
-res.end('Hello World');
+ res.statusCode = 200;
+ res.setHeader('Content-Type', 'text/plain');
+ res.end('Hello World');
});
server.listen(port, hostname, () => {
-console.log(`Server running at http://${hostname}:${port}/`);
+ console.log(`Server running at http://${hostname}:${port}/`);
});
```
@@ -31,13 +31,13 @@ const hostname = '127.0.0.1';
const port = 3000;
const server = createServer((req, res) => {
-res.statusCode = 200;
-res.setHeader('Content-Type', 'text/plain');
-res.end('Hello World');
+ res.statusCode = 200;
+ res.setHeader('Content-Type', 'text/plain');
+ res.end('Hello World');
});
server.listen(port, hostname, () => {
-console.log(`Server running at http://${hostname}:${port}/`);
+ console.log(`Server running at http://${hostname}:${port}/`);
});
```
diff --git a/apps/site/pages/ja/download/package-manager/current.mdx b/apps/site/pages/ja/download/package-manager/current.mdx
index 557eedab76bc..81bc85396d4f 100644
--- a/apps/site/pages/ja/download/package-manager/current.mdx
+++ b/apps/site/pages/ja/download/package-manager/current.mdx
@@ -13,11 +13,17 @@ subtitle: 好きな方法でNode.jsをダウンロードできます。
Node.jsはを同梱しています。
-このバージョンに関する変更点を確認する。
+このバージョン
+に関する変更点を確認する。
-このバージョンに関するブログ記事を確認する。
+このバージョン
+に関するブログ記事を確認する。
-署名済みSHASUMSの検証方法を確認する。
+
+ 署名済みSHASUMSの検証方法
+
+を確認する。
コミュニティーによってサポートされているその他のパッケージマネージャーを確認する。
+
diff --git a/apps/site/pages/ja/download/package-manager/index.mdx b/apps/site/pages/ja/download/package-manager/index.mdx
index e25fe7b54013..9235e0c26895 100644
--- a/apps/site/pages/ja/download/package-manager/index.mdx
+++ b/apps/site/pages/ja/download/package-manager/index.mdx
@@ -13,11 +13,17 @@ subtitle: 好きな方法でNode.jsをダウンロードできます。
Node.jsはを同梱しています。
-このバージョンに関する変更点を確認する。
+このバージョン
+に関する変更点を確認する。
-このバージョンに関するブログ記事を確認する。
+このバージョン
+に関するブログ記事を確認する。
-署名済みSHASUMSの検証方法を確認する。
+
+ 署名済みSHASUMSの検証方法
+
+を確認する。
コミュニティーによってサポートされているその他のパッケージマネージャーを確認する。
+
diff --git a/apps/site/pages/ja/download/prebuilt-binaries/current.mdx b/apps/site/pages/ja/download/prebuilt-binaries/current.mdx
index 197b5bcfcbbd..5219eba62824 100644
--- a/apps/site/pages/ja/download/prebuilt-binaries/current.mdx
+++ b/apps/site/pages/ja/download/prebuilt-binaries/current.mdx
@@ -13,11 +13,16 @@ subtitle: 好きな方法でNode.jsをダウンロードできます。
Node.jsはを同梱しています。
-このバージョンの変更点を確認する。
+このバージョン
+の変更点を確認する。
-このバージョンに関するブログ記事を確認する。
+このバージョン
+に関するブログ記事を確認する。
-署名済みSHASUMSの検証方法を確認する。
+
+ 署名済みSHASUMSの検証方法
+
+を確認する。
ナイトリービルドや他のプラットフォーム用の非公式のビルドがあります。
diff --git a/apps/site/pages/ja/download/prebuilt-installer/current.mdx b/apps/site/pages/ja/download/prebuilt-installer/current.mdx
index 0ce06feb9781..800de822c8fb 100644
--- a/apps/site/pages/ja/download/prebuilt-installer/current.mdx
+++ b/apps/site/pages/ja/download/prebuilt-installer/current.mdx
@@ -13,11 +13,16 @@ subtitle: 好きな方法でNode.jsをダウンロードできます。
Node.jsはを同梱しています。
-このバージョンの変更点を確認する。
+このバージョン
+の変更点を確認する。
-このバージョンに関するブログ記事を確認する。
+このバージョン
+に関するブログ記事を確認する。
-署名済みSHASUMSの検証方法を確認する。
+
+ 署名済みSHASUMSの検証方法
+
+を確認する。
すべてのダウンロードオプションを確認する。
diff --git a/apps/site/pages/ja/download/prebuilt-installer/index.mdx b/apps/site/pages/ja/download/prebuilt-installer/index.mdx
index 0ce06feb9781..800de822c8fb 100644
--- a/apps/site/pages/ja/download/prebuilt-installer/index.mdx
+++ b/apps/site/pages/ja/download/prebuilt-installer/index.mdx
@@ -13,11 +13,16 @@ subtitle: 好きな方法でNode.jsをダウンロードできます。
Node.jsはを同梱しています。
-このバージョンの変更点を確認する。
+このバージョン
+の変更点を確認する。
-このバージョンに関するブログ記事を確認する。
+このバージョン
+に関するブログ記事を確認する。
-署名済みSHASUMSの検証方法を確認する。
+
+ 署名済みSHASUMSの検証方法
+
+を確認する。
すべてのダウンロードオプションを確認する。
diff --git a/apps/site/pages/ja/download/source-code/current.mdx b/apps/site/pages/ja/download/source-code/current.mdx
index 2b6bac346de3..2d5e3c07bd22 100644
--- a/apps/site/pages/ja/download/source-code/current.mdx
+++ b/apps/site/pages/ja/download/source-code/current.mdx
@@ -13,11 +13,17 @@ Node.js のソースコードをダウンロードす
Node.jsはを同梱しています。
-このバージョンの変更点を確認する。
+このバージョン
+の変更点を確認する。
-このバージョンに関するブログ記事を確認する。
+このバージョン
+に関するブログ記事を確認する。
-署名済みSHASUMSの検証方法を確認する。
+
+ 署名済みSHASUMSの検証方法
+
+を確認する。
ソースコードからNode.jsをビルドする方法を確認する。
+
diff --git a/apps/site/pages/ja/download/source-code/index.mdx b/apps/site/pages/ja/download/source-code/index.mdx
index 2b6bac346de3..2d5e3c07bd22 100644
--- a/apps/site/pages/ja/download/source-code/index.mdx
+++ b/apps/site/pages/ja/download/source-code/index.mdx
@@ -13,11 +13,17 @@ Node.js のソースコードをダウンロードす
Node.jsはを同梱しています。
-このバージョンの変更点を確認する。
+このバージョン
+の変更点を確認する。
-このバージョンに関するブログ記事を確認する。
+このバージョン
+に関するブログ記事を確認する。
-署名済みSHASUMSの検証方法を確認する。
+
+ 署名済みSHASUMSの検証方法
+
+を確認する。
ソースコードからNode.jsをビルドする方法を確認する。
+
diff --git a/apps/site/pages/ja/index.mdx b/apps/site/pages/ja/index.mdx
index b332eb3fc605..ba34b86b0c6c 100644
--- a/apps/site/pages/ja/index.mdx
+++ b/apps/site/pages/ja/index.mdx
@@ -9,7 +9,8 @@ layout: home
Run JavaScript Everywhere
- Node.js®は自由かつオープンソースでクロスプラットフォームに対応したJavaScript実行環境です。開発者にサーバー、ウェブアプリ、コマンドラインツール、スクリプトの開発環境を提供します。
+Node.js®は自由かつオープンソースでクロスプラットフォームに対応したJavaScript実行環境です。開発者にサーバー、ウェブアプリ、コマンドラインツール、スクリプトの開発環境を提供します。
+
@@ -44,87 +45,93 @@ layout: home
// server.mjs
import { createServer } from 'node:http';
- const server = createServer((req, res) => {
- res.writeHead(200, { 'Content-Type': 'text/plain' });
- res.end('Hello World!\n');
- });
-
- // starts a simple http server locally on port 3000
- server.listen(3000, '127.0.0.1', () => {
- console.log('Listening on 127.0.0.1:3000');
- });
-
- // run with `node server.mjs`
- ```
-
- ```js displayName="Write Tests"
- // tests.mjs
- import assert from 'node:assert';
- import test from 'node:test';
-
- test('that 1 is equal 1', () => {
- assert.strictEqual(1, 1);
- });
-
- test('that throws as 1 is not equal 2', () => {
- // throws an exception because 1 != 2
- assert.strictEqual(1, 2);
- });
-
- // run with `node tests.mjs`
- ```
-
- ```js displayName="Read and Hash a File"
- // crypto.mjs
- import { createHash } from 'node:crypto';
- import { readFile } from 'node:fs/promises';
-
- const hasher = createHash('sha1');
-
- hasher.setEncoding('hex');
- // ensure you have a `package.json` file for this test!
- hasher.write(await readFile('package.json'));
- hasher.end();
-
- const fileHash = hasher.read();
-
- // run with `node crypto.mjs`
- ```
-
- ```js displayName="Streams Pipeline"
- // streams.mjs
- import { pipeline } from 'node:stream/promises';
- import { createReadStream, createWriteStream } from 'node:fs';
- import { createGzip } from 'node:zlib';
-
- // ensure you have a `package.json` file for this test!
- await pipeline
- (
- createReadStream('package.json'),
- createGzip(),
- createWriteStream('package.json.gz')
- );
-
- // run with `node streams.mjs`
- ```
-
- ```js displayName="Work with Threads"
- // threads.mjs
- import { Worker, isMainThread,
- workerData, parentPort } from 'node:worker_threads';
-
- if (isMainThread) {
- const data = 'some data';
- const worker = new Worker(import.meta.filename, { workerData: data });
- worker.on('message', msg => console.log('Reply from Thread:', msg));
- } else {
- const source = workerData;
- parentPort.postMessage(btoa(source.toUpperCase()));
- }
-
- // run with `node threads.mjs`
- ```
+const server = createServer((req, res) => {
+res.writeHead(200, { 'Content-Type': 'text/plain' });
+res.end('Hello World!\n');
+});
+
+// starts a simple http server locally on port 3000
+server.listen(3000, '127.0.0.1', () => {
+console.log('Listening on 127.0.0.1:3000');
+});
+
+// run with `node server.mjs`
+
+````
+
+```js displayName="Write Tests"
+// tests.mjs
+import assert from 'node:assert';
+import test from 'node:test';
+
+test('that 1 is equal 1', () => {
+ assert.strictEqual(1, 1);
+});
+
+test('that throws as 1 is not equal 2', () => {
+ // throws an exception because 1 != 2
+ assert.strictEqual(1, 2);
+});
+
+// run with `node tests.mjs`
+````
+
+```js displayName="Read and Hash a File"
+// crypto.mjs
+import { createHash } from 'node:crypto';
+import { readFile } from 'node:fs/promises';
+
+const hasher = createHash('sha1');
+
+hasher.setEncoding('hex');
+// ensure you have a `package.json` file for this test!
+hasher.write(await readFile('package.json'));
+hasher.end();
+
+const fileHash = hasher.read();
+
+// run with `node crypto.mjs`
+```
+
+```js displayName="Streams Pipeline"
+// streams.mjs
+import { pipeline } from 'node:stream/promises';
+import { createReadStream, createWriteStream } from 'node:fs';
+import { createGzip } from 'node:zlib';
+
+// ensure you have a `package.json` file for this test!
+await pipeline(
+ createReadStream('package.json'),
+ createGzip(),
+ createWriteStream('package.json.gz')
+);
+
+// run with `node streams.mjs`
+```
+
+```js displayName="Work with Threads"
+// threads.mjs
+import {
+ Worker,
+ isMainThread,
+ workerData,
+ parentPort,
+} from 'node:worker_threads';
+
+if (isMainThread) {
+ const data = 'some data';
+ const worker = new Worker(import.meta.filename, { workerData: data });
+ worker.on('message', msg => console.log('Reply from Thread:', msg));
+} else {
+ const source = workerData;
+ parentPort.postMessage(btoa(source.toUpperCase()));
+}
+
+// run with `node threads.mjs`
+```
+
私たちの[学習教材](/learn)でNode.jsでできることをさらに学んでみましょう。
+
diff --git a/apps/site/pages/ko/download/source-code/index.mdx b/apps/site/pages/ko/download/source-code/index.mdx
index 9a427adba9db..b43f6026650b 100644
--- a/apps/site/pages/ko/download/source-code/index.mdx
+++ b/apps/site/pages/ko/download/source-code/index.mdx
@@ -15,9 +15,12 @@ Node.js에는 이 포함되어 있습니다.
변경된 사항은 다음을 참고하세요. 이 버전
-이 버전에 대한 블로그 포스트를 확인합니다.
+이 버전에 대한 블로그 포스트를
+확인합니다.
-SHA 서명 확인라는 방법을 배워보세요.
+SHA 서명 확인라는
+방법을 배워보세요.
코드에서 Node.js를 빌드하는 법을 확인해보세요.
+
diff --git a/apps/site/pages/ko/index.mdx b/apps/site/pages/ko/index.mdx
index e98a3225a94e..7fb3d0a27bbe 100644
--- a/apps/site/pages/ko/index.mdx
+++ b/apps/site/pages/ko/index.mdx
@@ -9,7 +9,8 @@ layout: home
어디서든 JavaScript를 실행하세요!!
- Node.js®는 무료, 오픈소스, 크로스플랫폼 JavaSript 런타임 환경으로 개발자 여러분이 서버, 웹 앱, 커맨드 작성 도구와 스크립트를 만들도록 해줍니다.
+Node.js®는 무료, 오픈소스, 크로스플랫폼 JavaSript 런타임 환경으로 개발자 여러분이 서버, 웹 앱, 커맨드 작성 도구와 스크립트를 만들도록 해줍니다.
+
@@ -44,87 +45,93 @@ layout: home
// server.mjs
import { createServer } from 'node:http';
- const server = createServer((req, res) => {
- res.writeHead(200, { 'Content-Type': 'text/plain' });
- res.end('Hello World!\n');
- });
-
- // starts a simple http server locally on port 3000
- server.listen(3000, '127.0.0.1', () => {
- console.log('Listening on 127.0.0.1:3000');
- });
-
- // run with `node server.mjs`
- ```
-
- ```js displayName="Write Tests"
- // tests.mjs
- import assert from 'node:assert';
- import test from 'node:test';
-
- test('that 1 is equal 1', () => {
- assert.strictEqual(1, 1);
- });
-
- test('that throws as 1 is not equal 2', () => {
- // throws an exception because 1 != 2
- assert.strictEqual(1, 2);
- });
-
- // run with `node tests.mjs`
- ```
-
- ```js displayName="Read and Hash a File"
- // crypto.mjs
- import { createHash } from 'node:crypto';
- import { readFile } from 'node:fs/promises';
-
- const hasher = createHash('sha1');
-
- hasher.setEncoding('hex');
- // ensure you have a `package.json` file for this test!
- hasher.write(await readFile('package.json'));
- hasher.end();
-
- const fileHash = hasher.read();
-
- // run with `node crypto.mjs`
- ```
-
- ```js displayName="Streams Pipeline"
- // streams.mjs
- import { pipeline } from 'node:stream/promises';
- import { createReadStream, createWriteStream } from 'node:fs';
- import { createGzip } from 'node:zlib';
-
- // ensure you have a `package.json` file for this test!
- await pipeline
- (
- createReadStream('package.json'),
- createGzip(),
- createWriteStream('package.json.gz')
- );
-
- // run with `node streams.mjs`
- ```
-
- ```js displayName="Work with Threads"
- // threads.mjs
- import { Worker, isMainThread,
- workerData, parentPort } from 'node:worker_threads';
-
- if (isMainThread) {
- const data = 'some data';
- const worker = new Worker(import.meta.filename, { workerData: data });
- worker.on('message', msg => console.log('Reply from Thread:', msg));
- } else {
- const source = workerData;
- parentPort.postMessage(btoa(source.toUpperCase()));
- }
-
- // run with `node threads.mjs`
- ```
+const server = createServer((req, res) => {
+res.writeHead(200, { 'Content-Type': 'text/plain' });
+res.end('Hello World!\n');
+});
+
+// starts a simple http server locally on port 3000
+server.listen(3000, '127.0.0.1', () => {
+console.log('Listening on 127.0.0.1:3000');
+});
+
+// run with `node server.mjs`
+
+````
+
+```js displayName="Write Tests"
+// tests.mjs
+import assert from 'node:assert';
+import test from 'node:test';
+
+test('that 1 is equal 1', () => {
+ assert.strictEqual(1, 1);
+});
+
+test('that throws as 1 is not equal 2', () => {
+ // throws an exception because 1 != 2
+ assert.strictEqual(1, 2);
+});
+
+// run with `node tests.mjs`
+````
+
+```js displayName="Read and Hash a File"
+// crypto.mjs
+import { createHash } from 'node:crypto';
+import { readFile } from 'node:fs/promises';
+
+const hasher = createHash('sha1');
+
+hasher.setEncoding('hex');
+// ensure you have a `package.json` file for this test!
+hasher.write(await readFile('package.json'));
+hasher.end();
+
+const fileHash = hasher.read();
+
+// run with `node crypto.mjs`
+```
+
+```js displayName="Streams Pipeline"
+// streams.mjs
+import { pipeline } from 'node:stream/promises';
+import { createReadStream, createWriteStream } from 'node:fs';
+import { createGzip } from 'node:zlib';
+
+// ensure you have a `package.json` file for this test!
+await pipeline(
+ createReadStream('package.json'),
+ createGzip(),
+ createWriteStream('package.json.gz')
+);
+
+// run with `node streams.mjs`
+```
+
+```js displayName="Work with Threads"
+// threads.mjs
+import {
+ Worker,
+ isMainThread,
+ workerData,
+ parentPort,
+} from 'node:worker_threads';
+
+if (isMainThread) {
+ const data = 'some data';
+ const worker = new Worker(import.meta.filename, { workerData: data });
+ worker.on('message', msg => console.log('Reply from Thread:', msg));
+} else {
+ const source = workerData;
+ parentPort.postMessage(btoa(source.toUpperCase()));
+}
+
+// run with `node threads.mjs`
+```
+
Node.js에 대해 더 알고 싶다면 학습 자료를 확인하세요[Learning materials](/learn).
+
diff --git a/apps/site/pages/pt/about/branding.mdx b/apps/site/pages/pt/about/branding.mdx
index 464ff2946224..9e20fdf437a4 100644
--- a/apps/site/pages/pt/about/branding.mdx
+++ b/apps/site/pages/pt/about/branding.mdx
@@ -9,7 +9,13 @@ Consultar a [política de marcas registadas](https://trademark-policy.openjsf.or
## Mascote da Node.js®
-
+
## Logótipo da Node.js®
diff --git a/apps/site/pages/pt/about/index.mdx b/apps/site/pages/pt/about/index.mdx
index daaab4881380..5a9795a95a8a 100644
--- a/apps/site/pages/pt/about/index.mdx
+++ b/apps/site/pages/pt/about/index.mdx
@@ -14,13 +14,13 @@ const hostname = '127.0.0.1';
const port = 3000;
const server = createServer((req, res) => {
-res.statusCode = 200;
-res.setHeader('Content-Type', 'text/plain');
-res.end('Hello World');
+ res.statusCode = 200;
+ res.setHeader('Content-Type', 'text/plain');
+ res.end('Hello World');
});
server.listen(port, hostname, () => {
-console.log(`Server running at http://${hostname}:${port}/`);
+ console.log(`Server running at http://${hostname}:${port}/`);
});
```
@@ -31,13 +31,13 @@ const hostname = '127.0.0.1';
const port = 3000;
const server = createServer((req, res) => {
-res.statusCode = 200;
-res.setHeader('Content-Type', 'text/plain');
-res.end('Hello World');
+ res.statusCode = 200;
+ res.setHeader('Content-Type', 'text/plain');
+ res.end('Hello World');
});
server.listen(port, hostname, () => {
-console.log(`Server running at http://${hostname}:${port}/`);
+ console.log(`Server running at http://${hostname}:${port}/`);
});
```
diff --git a/apps/site/pages/pt/about/security-reporting.mdx b/apps/site/pages/pt/about/security-reporting.mdx
index 70272eaf6154..184f4b990d64 100644
--- a/apps/site/pages/pt/about/security-reporting.mdx
+++ b/apps/site/pages/pt/about/security-reporting.mdx
@@ -50,8 +50,15 @@ Se tivermos sugestões sobre como este processo poderia ser melhorado, podemos s
## Boas Práticas da OpenSSF
-
-
+
+
distintivo de boas práticas da “Open Source Security Foundation (OpenSSF)” é uma maneira de os projetos de Software Livre e de Código Aberto (FLOSS) mostrarem que seguem as boas práticas. Os projetos podem certificar-se voluntariamente como seguem cada uma das boas práticas. Os consumidores do distintivo podem avaliar rapidamente quais os projetos FLOSS que seguem as boas práticas e, consequentemente, têm maior probabilidade de produzir software seguro de superior qualidade.
diff --git a/apps/site/pages/pt/download/package-manager/current.mdx b/apps/site/pages/pt/download/package-manager/current.mdx
index 6a2b31fc5ee3..5da09b77522c 100644
--- a/apps/site/pages/pt/download/package-manager/current.mdx
+++ b/apps/site/pages/pt/download/package-manager/current.mdx
@@ -20,4 +20,5 @@ Ler a publicação do blogue desta versãoverificar o SHASUMS assinado
Consultar outros gestores de pacote suportados da comunidade
+
diff --git a/apps/site/pages/pt/download/package-manager/index.mdx b/apps/site/pages/pt/download/package-manager/index.mdx
index 04f0e12e2b75..6772ace86659 100644
--- a/apps/site/pages/pt/download/package-manager/index.mdx
+++ b/apps/site/pages/pt/download/package-manager/index.mdx
@@ -20,4 +20,5 @@ Ler a publicação do blogue desta versãoverificar o SHASUMS assinado
Consultar outros gestores de pacote suportados da comunidade
+
diff --git a/apps/site/pages/pt/download/prebuilt-binaries/current.mdx b/apps/site/pages/pt/download/prebuilt-binaries/current.mdx
index d78f687a2a57..7d8805c02a7c 100644
--- a/apps/site/pages/pt/download/prebuilt-binaries/current.mdx
+++ b/apps/site/pages/pt/download/prebuilt-binaries/current.mdx
@@ -20,4 +20,5 @@ Ler a publicação do blogue desta versãoverificar o SHASUMS assinado
Consultar os binários pré-compilados Noturnos ou Compilações Não Oficiais para outras plataformas
+
diff --git a/apps/site/pages/pt/download/prebuilt-installer/current.mdx b/apps/site/pages/pt/download/prebuilt-installer/current.mdx
index 46e3189fb9a0..4f5ddee39b50 100644
--- a/apps/site/pages/pt/download/prebuilt-installer/current.mdx
+++ b/apps/site/pages/pt/download/prebuilt-installer/current.mdx
@@ -22,4 +22,5 @@ Saber como verificar o SHASUMS assinado opções de descarga disponíveis da Node.js
Saber mais sobre os Lançamentos da Node.js
+
diff --git a/apps/site/pages/pt/download/prebuilt-installer/index.mdx b/apps/site/pages/pt/download/prebuilt-installer/index.mdx
index 722c3eb7d230..22ef2c0d72f2 100644
--- a/apps/site/pages/pt/download/prebuilt-installer/index.mdx
+++ b/apps/site/pages/pt/download/prebuilt-installer/index.mdx
@@ -22,4 +22,5 @@ Saber como verificar o SHASUMS assinado opções de descarga disponíveis da Node.js
Saber mais sobre os Lançamentos da Node.js
+
diff --git a/apps/site/pages/pt/download/source-code/current.mdx b/apps/site/pages/pt/download/source-code/current.mdx
index 435dce066cf0..c65b0284f74c 100644
--- a/apps/site/pages/pt/download/source-code/current.mdx
+++ b/apps/site/pages/pt/download/source-code/current.mdx
@@ -20,4 +20,5 @@ Ler a publicação do blogue desta versãoverificar o SHASUMS assinado
Consultar como compilar a Node.js a partir do código-fonte.
+
diff --git a/apps/site/pages/pt/download/source-code/index.mdx b/apps/site/pages/pt/download/source-code/index.mdx
index 435dce066cf0..c65b0284f74c 100644
--- a/apps/site/pages/pt/download/source-code/index.mdx
+++ b/apps/site/pages/pt/download/source-code/index.mdx
@@ -20,4 +20,5 @@ Ler a publicação do blogue desta versãoverificar o SHASUMS assinado
Consultar como compilar a Node.js a partir do código-fonte.
+
diff --git a/apps/site/pages/pt/index.mdx b/apps/site/pages/pt/index.mdx
index 8310b9ce783b..3b0d913dfe3c 100644
--- a/apps/site/pages/pt/index.mdx
+++ b/apps/site/pages/pt/index.mdx
@@ -9,7 +9,8 @@ layout: home
Executar a JavaScript em Toda Parte
- Node.js® é uma ambiente de execução de JavaScript disponível para várias plataformas, de código aberto e gratuita, que permite os programadores criar servidores, aplicações da Web, ferramentas de linha de comando e programas de automação de tarefas.
+Node.js® é uma ambiente de execução de JavaScript disponível para várias plataformas, de código aberto e gratuita, que permite os programadores criar servidores, aplicações da Web, ferramentas de linha de comando e programas de automação de tarefas.
+
@@ -44,87 +45,93 @@ layout: home
// server.mjs
import { createServer } from 'node:http';
- const server = createServer((req, res) => {
- res.writeHead(200, { 'Content-Type': 'text/plain' });
- res.end('Hello World!\n');
- });
-
- // starts a simple http server locally on port 3000
- server.listen(3000, '127.0.0.1', () => {
- console.log('Listening on 127.0.0.1:3000');
- });
-
- // run with `node server.mjs`
- ```
-
- ```js displayName="Write Tests"
- // tests.mjs
- import assert from 'node:assert';
- import test from 'node:test';
-
- test('that 1 is equal 1', () => {
- assert.strictEqual(1, 1);
- });
-
- test('that throws as 1 is not equal 2', () => {
- // throws an exception because 1 != 2
- assert.strictEqual(1, 2);
- });
-
- // run with `node tests.mjs`
- ```
-
- ```js displayName="Read and Hash a File"
- // crypto.mjs
- import { createHash } from 'node:crypto';
- import { readFile } from 'node:fs/promises';
-
- const hasher = createHash('sha1');
-
- hasher.setEncoding('hex');
- // ensure you have a `package.json` file for this test!
- hasher.write(await readFile('package.json'));
- hasher.end();
-
- const fileHash = hasher.read();
-
- // run with `node crypto.mjs`
- ```
-
- ```js displayName="Streams Pipeline"
- // streams.mjs
- import { pipeline } from 'node:stream/promises';
- import { createReadStream, createWriteStream } from 'node:fs';
- import { createGzip } from 'node:zlib';
-
- // ensure you have a `package.json` file for this test!
- await pipeline
- (
- createReadStream('package.json'),
- createGzip(),
- createWriteStream('package.json.gz')
- );
-
- // run with `node streams.mjs`
- ```
-
- ```js displayName="Work with Threads"
- // threads.mjs
- import { Worker, isMainThread,
- workerData, parentPort } from 'node:worker_threads';
-
- if (isMainThread) {
- const data = 'some data';
- const worker = new Worker(import.meta.filename, { workerData: data });
- worker.on('message', msg => console.log('Reply from Thread:', msg));
- } else {
- const source = workerData;
- parentPort.postMessage(btoa(source.toUpperCase()));
- }
-
- // run with `node threads.mjs`
- ```
+const server = createServer((req, res) => {
+res.writeHead(200, { 'Content-Type': 'text/plain' });
+res.end('Hello World!\n');
+});
+
+// starts a simple http server locally on port 3000
+server.listen(3000, '127.0.0.1', () => {
+console.log('Listening on 127.0.0.1:3000');
+});
+
+// run with `node server.mjs`
+
+````
+
+```js displayName="Write Tests"
+// tests.mjs
+import assert from 'node:assert';
+import test from 'node:test';
+
+test('that 1 is equal 1', () => {
+ assert.strictEqual(1, 1);
+});
+
+test('that throws as 1 is not equal 2', () => {
+ // throws an exception because 1 != 2
+ assert.strictEqual(1, 2);
+});
+
+// run with `node tests.mjs`
+````
+
+```js displayName="Read and Hash a File"
+// crypto.mjs
+import { createHash } from 'node:crypto';
+import { readFile } from 'node:fs/promises';
+
+const hasher = createHash('sha1');
+
+hasher.setEncoding('hex');
+// ensure you have a `package.json` file for this test!
+hasher.write(await readFile('package.json'));
+hasher.end();
+
+const fileHash = hasher.read();
+
+// run with `node crypto.mjs`
+```
+
+```js displayName="Streams Pipeline"
+// streams.mjs
+import { pipeline } from 'node:stream/promises';
+import { createReadStream, createWriteStream } from 'node:fs';
+import { createGzip } from 'node:zlib';
+
+// ensure you have a `package.json` file for this test!
+await pipeline(
+ createReadStream('package.json'),
+ createGzip(),
+ createWriteStream('package.json.gz')
+);
+
+// run with `node streams.mjs`
+```
+
+```js displayName="Work with Threads"
+// threads.mjs
+import {
+ Worker,
+ isMainThread,
+ workerData,
+ parentPort,
+} from 'node:worker_threads';
+
+if (isMainThread) {
+ const data = 'some data';
+ const worker = new Worker(import.meta.filename, { workerData: data });
+ worker.on('message', msg => console.log('Reply from Thread:', msg));
+} else {
+ const source = workerData;
+ parentPort.postMessage(btoa(source.toUpperCase()));
+}
+
+// run with `node threads.mjs`
+```
+
Podemos saber mais do que a Node.js é capaz de oferecer com os nossos [materiais de aprendizado](/learn).
+
diff --git a/apps/site/pages/uk/about/branding.mdx b/apps/site/pages/uk/about/branding.mdx
index 88d36b0f8477..28175cd78649 100644
--- a/apps/site/pages/uk/about/branding.mdx
+++ b/apps/site/pages/uk/about/branding.mdx
@@ -9,7 +9,13 @@ layout: about
## Маскот Node.js®
-
+
## Логотип Node.js®
diff --git a/apps/site/pages/uk/about/index.mdx b/apps/site/pages/uk/about/index.mdx
index fb37ec83a9ea..733472c03fbd 100644
--- a/apps/site/pages/uk/about/index.mdx
+++ b/apps/site/pages/uk/about/index.mdx
@@ -14,13 +14,13 @@ const hostname = '127.0.0.1';
const port = 3000;
const server = createServer((req, res) => {
-res.statusCode = 200;
-res.setHeader('Content-Type', 'text/plain');
-res.end('Hello World');
+ res.statusCode = 200;
+ res.setHeader('Content-Type', 'text/plain');
+ res.end('Hello World');
});
server.listen(port, hostname, () => {
-console.log(`Server running at http://${hostname}:${port}/`);
+ console.log(`Server running at http://${hostname}:${port}/`);
});
```
@@ -31,13 +31,13 @@ const hostname = '127.0.0.1';
const port = 3000;
const server = createServer((req, res) => {
-res.statusCode = 200;
-res.setHeader('Content-Type', 'text/plain');
-res.end('Hello World');
+ res.statusCode = 200;
+ res.setHeader('Content-Type', 'text/plain');
+ res.end('Hello World');
});
server.listen(port, hostname, () => {
-console.log(`Server running at http://${hostname}:${port}/`);
+ console.log(`Server running at http://${hostname}:${port}/`);
});
```
diff --git a/apps/site/pages/uk/about/security-reporting.mdx b/apps/site/pages/uk/about/security-reporting.mdx
index 94e72ebd933f..c710284b2385 100644
--- a/apps/site/pages/uk/about/security-reporting.mdx
+++ b/apps/site/pages/uk/about/security-reporting.mdx
@@ -51,8 +51,15 @@ layout: about
## Найкращі практики OpenSSF
-
-
+
+
[Значок за найкращі практики](https://github.com/coreinfrastructure/best-practices-badge) від Open Source Security Foundation (OpenSSF) — це спосіб для проєктів із відкритим кодом (Free/Libre and Open Source Software, FLOSS) показати, що вони дотримуються найкращих практик. Проєкти можуть самостійно описати, як вони дотримуються кожної практики. Користувачі можуть швидко оцінити, які проєкти FLOSS дотримуються найкращих практик і, як результат, створювати безпечне ПЗ кращої якості.
diff --git a/apps/site/pages/uk/download/package-manager/current.mdx b/apps/site/pages/uk/download/package-manager/current.mdx
index e06eefd5275e..b51fd9e8490c 100644
--- a/apps/site/pages/uk/download/package-manager/current.mdx
+++ b/apps/site/pages/uk/download/package-manager/current.mdx
@@ -20,4 +20,5 @@ Node.js містить .
Дізнайтеся, як перевірити підписані SHASUMS
Перегляньте інші менеджери пакетів, які підтримуються спільнотою
+
diff --git a/apps/site/pages/uk/download/package-manager/index.mdx b/apps/site/pages/uk/download/package-manager/index.mdx
index e06eefd5275e..b51fd9e8490c 100644
--- a/apps/site/pages/uk/download/package-manager/index.mdx
+++ b/apps/site/pages/uk/download/package-manager/index.mdx
@@ -20,4 +20,5 @@ Node.js містить .
Дізнайтеся, як перевірити підписані SHASUMS
Перегляньте інші менеджери пакетів, які підтримуються спільнотою
+
diff --git a/apps/site/pages/uk/download/prebuilt-binaries/current.mdx b/apps/site/pages/uk/download/prebuilt-binaries/current.mdx
index 33842da48963..4f4a4e904552 100644
--- a/apps/site/pages/uk/download/prebuilt-binaries/current.mdx
+++ b/apps/site/pages/uk/download/prebuilt-binaries/current.mdx
@@ -20,4 +20,5 @@ Node.js містить .
Дізнайтеся, як перевірити підписані SHASUMS
Перегляньте бінарні файли нічних збірок або неофіційні збірки для інших платформ
+
diff --git a/apps/site/pages/uk/download/prebuilt-binaries/index.mdx b/apps/site/pages/uk/download/prebuilt-binaries/index.mdx
index d6d853812541..ea3e7f7417f7 100644
--- a/apps/site/pages/uk/download/prebuilt-binaries/index.mdx
+++ b/apps/site/pages/uk/download/prebuilt-binaries/index.mdx
@@ -20,4 +20,5 @@ Node.js містить .
Дізнайтеся, як перевірити підписані SHASUMS.
Перегляньте бінарні файли нічних збірок, усі бінарні файли релізу або неофіційні збірки для інших платформ.
+
diff --git a/apps/site/pages/uk/download/prebuilt-installer/current.mdx b/apps/site/pages/uk/download/prebuilt-installer/current.mdx
index 9d05ac839472..50abaaf235f4 100644
--- a/apps/site/pages/uk/download/prebuilt-installer/current.mdx
+++ b/apps/site/pages/uk/download/prebuilt-installer/current.mdx
@@ -22,4 +22,5 @@ Node.js містить .
Перегляньте всі доступні опції завантаження Node.js
Дізнайтеся більше про релізи Node.js
+
diff --git a/apps/site/pages/uk/download/prebuilt-installer/index.mdx b/apps/site/pages/uk/download/prebuilt-installer/index.mdx
index e629c6d55999..ee370f641fe1 100644
--- a/apps/site/pages/uk/download/prebuilt-installer/index.mdx
+++ b/apps/site/pages/uk/download/prebuilt-installer/index.mdx
@@ -22,4 +22,5 @@ Node.js містить .
Перегляньте всі доступні опції завантаження Node.js
Дізнайтеся більше про релізи Node.js
+
diff --git a/apps/site/pages/uk/download/source-code/current.mdx b/apps/site/pages/uk/download/source-code/current.mdx
index 34019ec4b1d1..298aa7b150d1 100644
--- a/apps/site/pages/uk/download/source-code/current.mdx
+++ b/apps/site/pages/uk/download/source-code/current.mdx
@@ -20,4 +20,5 @@ Node.js містить .
Дізнайтеся, як перевірити підписані SHASUMS
Дізнайтеся, як зібрати Node.js із вихідного коду.
+
diff --git a/apps/site/pages/uk/download/source-code/index.mdx b/apps/site/pages/uk/download/source-code/index.mdx
index e314d2418b0d..1493d3c29b2c 100644
--- a/apps/site/pages/uk/download/source-code/index.mdx
+++ b/apps/site/pages/uk/download/source-code/index.mdx
@@ -20,4 +20,5 @@ Node.js містить .
Дізнайтеся, як перевірити підписані SHASUMS
Дізнайтеся, як зібрати Node.js із вихідного коду.
+
diff --git a/apps/site/pages/uk/index.mdx b/apps/site/pages/uk/index.mdx
index e72f35a210c3..4e4bf73d5184 100644
--- a/apps/site/pages/uk/index.mdx
+++ b/apps/site/pages/uk/index.mdx
@@ -9,7 +9,8 @@ layout: home
Запускайте JavaScript будь-де
- Node.js® — це безплатне, кросплатформне середовище виконання JavaScript із відкритим кодом, яке дозволяє розробникам створювати сервери, вебзастосунки, інструменти командного рядка та скрипти.
+Node.js® — це безплатне, кросплатформне середовище виконання JavaScript із відкритим кодом, яке дозволяє розробникам створювати сервери, вебзастосунки, інструменти командного рядка та скрипти.
+
@@ -44,87 +45,93 @@ layout: home
// server.mjs
import { createServer } from 'node:http';
- const server = createServer((req, res) => {
- res.writeHead(200, { 'Content-Type': 'text/plain' });
- res.end('Hello World!\n');
- });
-
- // starts a simple http server locally on port 3000
- server.listen(3000, '127.0.0.1', () => {
- console.log('Listening on 127.0.0.1:3000');
- });
-
- // run with `node server.mjs`
- ```
-
- ```js displayName="Write Tests"
- // tests.mjs
- import assert from 'node:assert';
- import test from 'node:test';
-
- test('that 1 is equal 1', () => {
- assert.strictEqual(1, 1);
- });
-
- test('that throws as 1 is not equal 2', () => {
- // throws an exception because 1 != 2
- assert.strictEqual(1, 2);
- });
-
- // run with `node tests.mjs`
- ```
-
- ```js displayName="Read and Hash a File"
- // crypto.mjs
- import { createHash } from 'node:crypto';
- import { readFile } from 'node:fs/promises';
-
- const hasher = createHash('sha1');
-
- hasher.setEncoding('hex');
- // ensure you have a `package.json` file for this test!
- hasher.write(await readFile('package.json'));
- hasher.end();
-
- const fileHash = hasher.read();
-
- // run with `node crypto.mjs`
- ```
-
- ```js displayName="Streams Pipeline"
- // streams.mjs
- import { pipeline } from 'node:stream/promises';
- import { createReadStream, createWriteStream } from 'node:fs';
- import { createGzip } from 'node:zlib';
-
- // ensure you have a `package.json` file for this test!
- await pipeline
- (
- createReadStream('package.json'),
- createGzip(),
- createWriteStream('package.json.gz')
- );
-
- // run with `node streams.mjs`
- ```
-
- ```js displayName="Work with Threads"
- // threads.mjs
- import { Worker, isMainThread,
- workerData, parentPort } from 'node:worker_threads';
-
- if (isMainThread) {
- const data = 'some data';
- const worker = new Worker(import.meta.filename, { workerData: data });
- worker.on('message', msg => console.log('Reply from Thread:', msg));
- } else {
- const source = workerData;
- parentPort.postMessage(btoa(source.toUpperCase()));
- }
-
- // run with `node threads.mjs`
- ```
+const server = createServer((req, res) => {
+res.writeHead(200, { 'Content-Type': 'text/plain' });
+res.end('Hello World!\n');
+});
+
+// starts a simple http server locally on port 3000
+server.listen(3000, '127.0.0.1', () => {
+console.log('Listening on 127.0.0.1:3000');
+});
+
+// run with `node server.mjs`
+
+````
+
+```js displayName="Write Tests"
+// tests.mjs
+import assert from 'node:assert';
+import test from 'node:test';
+
+test('that 1 is equal 1', () => {
+ assert.strictEqual(1, 1);
+});
+
+test('that throws as 1 is not equal 2', () => {
+ // throws an exception because 1 != 2
+ assert.strictEqual(1, 2);
+});
+
+// run with `node tests.mjs`
+````
+
+```js displayName="Read and Hash a File"
+// crypto.mjs
+import { createHash } from 'node:crypto';
+import { readFile } from 'node:fs/promises';
+
+const hasher = createHash('sha1');
+
+hasher.setEncoding('hex');
+// ensure you have a `package.json` file for this test!
+hasher.write(await readFile('package.json'));
+hasher.end();
+
+const fileHash = hasher.read();
+
+// run with `node crypto.mjs`
+```
+
+```js displayName="Streams Pipeline"
+// streams.mjs
+import { pipeline } from 'node:stream/promises';
+import { createReadStream, createWriteStream } from 'node:fs';
+import { createGzip } from 'node:zlib';
+
+// ensure you have a `package.json` file for this test!
+await pipeline(
+ createReadStream('package.json'),
+ createGzip(),
+ createWriteStream('package.json.gz')
+);
+
+// run with `node streams.mjs`
+```
+
+```js displayName="Work with Threads"
+// threads.mjs
+import {
+ Worker,
+ isMainThread,
+ workerData,
+ parentPort,
+} from 'node:worker_threads';
+
+if (isMainThread) {
+ const data = 'some data';
+ const worker = new Worker(import.meta.filename, { workerData: data });
+ worker.on('message', msg => console.log('Reply from Thread:', msg));
+} else {
+ const source = workerData;
+ parentPort.postMessage(btoa(source.toUpperCase()));
+}
+
+// run with `node threads.mjs`
+```
+
Дізнайтеся більше про можливості Node.js із [нашими навчальними матеріалами](/learn).
+
diff --git a/apps/site/pages/zh-cn/about/branding.mdx b/apps/site/pages/zh-cn/about/branding.mdx
index fe67d7c17a55..c830dd83acee 100644
--- a/apps/site/pages/zh-cn/about/branding.mdx
+++ b/apps/site/pages/zh-cn/about/branding.mdx
@@ -9,7 +9,13 @@ Node.js 的品牌化
## Node.js® 吉祥物
-
+
## Node.js® Logo
diff --git a/apps/site/pages/zh-cn/about/index.mdx b/apps/site/pages/zh-cn/about/index.mdx
index cd3daeb14bba..47b787ffa40d 100644
--- a/apps/site/pages/zh-cn/about/index.mdx
+++ b/apps/site/pages/zh-cn/about/index.mdx
@@ -14,13 +14,13 @@ const hostname = '127.0.0.1';
const port = 3000;
const server = createServer((req, res) => {
-res.statusCode = 200;
-res.setHeader('Content-Type', 'text/plain');
-res.end('Hello World');
+ res.statusCode = 200;
+ res.setHeader('Content-Type', 'text/plain');
+ res.end('Hello World');
});
server.listen(port, hostname, () => {
-console.log(`Server running at http://${hostname}:${port}/`);
+ console.log(`Server running at http://${hostname}:${port}/`);
});
```
@@ -31,13 +31,13 @@ const hostname = '127.0.0.1';
const port = 3000;
const server = createServer((req, res) => {
-res.statusCode = 200;
-res.setHeader('Content-Type', 'text/plain');
-res.end('Hello World');
+ res.statusCode = 200;
+ res.setHeader('Content-Type', 'text/plain');
+ res.end('Hello World');
});
server.listen(port, hostname, () => {
-console.log(`Server running at http://${hostname}:${port}/`);
+ console.log(`Server running at http://${hostname}:${port}/`);
});
```
@@ -51,7 +51,7 @@ Node.js 在设计上受到了诸如 Ruby 的 [Event Machine][] 和 Python 的 [T
HTTP 在 Node.js 中是第一类公民,设计时考虑了流式传输和低延迟。这使得 Node.js 非常适合作为 Web 库或框架的基础。
-Node.js 的设计没有线程并不意味着您不能利用环境中的多个核心。可以使用我们的 [child\_process.fork()](https://nodejs.org/docs/latest/api/child_process.html#child_processforkmodulepath-args-options) API 来生成子进程,并且设计得易于通信。建立在同一接口之上的是 [cluster](https://nodejs.org/docs/latest/api/cluster.html) 模块,它允许您在进程之间共享套接字,从而实现对核心的负载均衡。
+Node.js 的设计没有线程并不意味着您不能利用环境中的多个核心。可以使用我们的 [child_process.fork()](https://nodejs.org/docs/latest/api/child_process.html#child_processforkmodulepath-args-options) API 来生成子进程,并且设计得易于通信。建立在同一接口之上的是 [cluster](https://nodejs.org/docs/latest/api/cluster.html) 模块,它允许您在进程之间共享套接字,从而实现对核心的负载均衡。
[blocking vs. non-blocking]: /learn/asynchronous-work/overview-of-blocking-vs-non-blocking
[`child_process.fork()`]: https://nodejs.org/api/child_process.html
diff --git a/apps/site/pages/zh-cn/about/security-reporting.mdx b/apps/site/pages/zh-cn/about/security-reporting.mdx
index e0ec739c92aa..fafe4d90c5ce 100644
--- a/apps/site/pages/zh-cn/about/security-reporting.mdx
+++ b/apps/site/pages/zh-cn/about/security-reporting.mdx
@@ -50,8 +50,15 @@ Node.js 项目为安全研究人员和负责任的公开披露提供官方漏洞
## OpenSSF 最佳实践
-
-
+
+
开源安全基金会(OpenSSF)[最佳实践徽章](https://github.com/coreinfrastructure/best-practices-badge) 是自由/自由和开源软件(FLOSS)项目展示他们遵循最佳实践的一种方式。 项目可以自愿地自我认证他们如何遵循每个最佳实践。 徽章的使用者可以快速评估哪些 FLOSS 项目正在遵循最佳实践,因此更有可能产生更高质量的安全软件。
diff --git a/apps/site/pages/zh-cn/download/package-manager/current.mdx b/apps/site/pages/zh-cn/download/package-manager/current.mdx
index 9341d37d0813..c59483b9d967 100644
--- a/apps/site/pages/zh-cn/download/package-manager/current.mdx
+++ b/apps/site/pages/zh-cn/download/package-manager/current.mdx
@@ -20,4 +20,5 @@ Node.js 已包含 。
学习如何 验证签名的 SHASUMS。
查看其他社区支持的 软件包管理器。
+
diff --git a/apps/site/pages/zh-cn/download/package-manager/index.mdx b/apps/site/pages/zh-cn/download/package-manager/index.mdx
index 2635be29b19c..99400408c129 100644
--- a/apps/site/pages/zh-cn/download/package-manager/index.mdx
+++ b/apps/site/pages/zh-cn/download/package-manager/index.mdx
@@ -20,4 +20,5 @@ Node.js 包含
学习如何 验证签名的 SHASUMS。
查看其他社区支持的 软件包管理器。
+
diff --git a/apps/site/pages/zh-cn/download/prebuilt-binaries/current.mdx b/apps/site/pages/zh-cn/download/prebuilt-binaries/current.mdx
index 0cbf779cfbf3..19df1eff32f9 100644
--- a/apps/site/pages/zh-cn/download/prebuilt-binaries/current.mdx
+++ b/apps/site/pages/zh-cn/download/prebuilt-binaries/current.mdx
@@ -20,4 +20,5 @@ Node.js 已包含 。
学习如何 验证签名的 SHASUMS。
查看 Nightly 的预编译二进制文件或者适用于其他平台的 非官方构建 版本
+
diff --git a/apps/site/pages/zh-cn/download/prebuilt-binaries/index.mdx b/apps/site/pages/zh-cn/download/prebuilt-binaries/index.mdx
index a83f8ed533a1..8ffabcc6b334 100644
--- a/apps/site/pages/zh-cn/download/prebuilt-binaries/index.mdx
+++ b/apps/site/pages/zh-cn/download/prebuilt-binaries/index.mdx
@@ -20,4 +20,5 @@ Node.js 已包含 。
学习如何 验证签名的 SHASUMS。
查看 Nightly 的预编译二进制文件,所有 Release 预编译二进制文件,或者适用于其他平台的 非官方构建 版本.
+
diff --git a/apps/site/pages/zh-cn/download/prebuilt-installer/current.mdx b/apps/site/pages/zh-cn/download/prebuilt-installer/current.mdx
index fe549f888796..1dc0c7a4887d 100644
--- a/apps/site/pages/zh-cn/download/prebuilt-installer/current.mdx
+++ b/apps/site/pages/zh-cn/download/prebuilt-installer/current.mdx
@@ -22,4 +22,5 @@ Node.js 已包含 。
查看所有可用的 Node.js 下载选项。
了解 Node.js 版本
+
diff --git a/apps/site/pages/zh-cn/download/prebuilt-installer/index.mdx b/apps/site/pages/zh-cn/download/prebuilt-installer/index.mdx
index fe549f888796..1dc0c7a4887d 100644
--- a/apps/site/pages/zh-cn/download/prebuilt-installer/index.mdx
+++ b/apps/site/pages/zh-cn/download/prebuilt-installer/index.mdx
@@ -22,4 +22,5 @@ Node.js 已包含 。
查看所有可用的 Node.js 下载选项。
了解 Node.js 版本
+
diff --git a/apps/site/pages/zh-cn/download/source-code/current.mdx b/apps/site/pages/zh-cn/download/source-code/current.mdx
index 902404188aaf..4c8c17a39128 100644
--- a/apps/site/pages/zh-cn/download/source-code/current.mdx
+++ b/apps/site/pages/zh-cn/download/source-code/current.mdx
@@ -20,4 +20,5 @@ Node.js 已包含 。
学习如何 验证签名的 SHASUMS。
查看如何从源代码构建 Node.js。
+
diff --git a/apps/site/pages/zh-cn/download/source-code/index.mdx b/apps/site/pages/zh-cn/download/source-code/index.mdx
index a25a1e1b1161..79c96f973038 100644
--- a/apps/site/pages/zh-cn/download/source-code/index.mdx
+++ b/apps/site/pages/zh-cn/download/source-code/index.mdx
@@ -20,4 +20,5 @@ Node.js 已包含 。
学习如何 验证签名的 SHASUMS。
查看如何从源代码构建 Node.js。
+
diff --git a/apps/site/pages/zh-cn/index.mdx b/apps/site/pages/zh-cn/index.mdx
index 6805a9ce9f5d..8b6a9ad0caa3 100644
--- a/apps/site/pages/zh-cn/index.mdx
+++ b/apps/site/pages/zh-cn/index.mdx
@@ -9,7 +9,8 @@ layout: home
在任何地方运行 JavaScript
- Node.js® 是一个免费、开源、跨平台的 JavaScript 运行时环境,它让开发人员能够创建服务器、Web 应用、命令行工具和脚本。
+Node.js® 是一个免费、开源、跨平台的 JavaScript 运行时环境,它让开发人员能够创建服务器、Web 应用、命令行工具和脚本。
+
@@ -44,87 +45,93 @@ layout: home
// server.mjs
import { createServer } from 'node:http';
- const server = createServer((req, res) => {
- res.writeHead(200, { 'Content-Type': 'text/plain' });
- res.end('Hello World!\n');
- });
-
- // starts a simple http server locally on port 3000
- server.listen(3000, '127.0.0.1', () => {
- console.log('Listening on 127.0.0.1:3000');
- });
-
- // run with `node server.mjs`
- ```
-
- ```js displayName="Write Tests"
- // tests.mjs
- import assert from 'node:assert';
- import test from 'node:test';
-
- test('that 1 is equal 1', () => {
- assert.strictEqual(1, 1);
- });
-
- test('that throws as 1 is not equal 2', () => {
- // throws an exception because 1 != 2
- assert.strictEqual(1, 2);
- });
-
- // run with `node tests.mjs`
- ```
-
- ```js displayName="Read and Hash a File"
- // crypto.mjs
- import { createHash } from 'node:crypto';
- import { readFile } from 'node:fs/promises';
-
- const hasher = createHash('sha1');
-
- hasher.setEncoding('hex');
- // ensure you have a `package.json` file for this test!
- hasher.write(await readFile('package.json'));
- hasher.end();
-
- const fileHash = hasher.read();
-
- // run with `node crypto.mjs`
- ```
-
- ```js displayName="Streams Pipeline"
- // streams.mjs
- import { pipeline } from 'node:stream/promises';
- import { createReadStream, createWriteStream } from 'node:fs';
- import { createGzip } from 'node:zlib';
-
- // ensure you have a `package.json` file for this test!
- await pipeline
- (
- createReadStream('package.json'),
- createGzip(),
- createWriteStream('package.json.gz')
- );
-
- // run with `node streams.mjs`
- ```
-
- ```js displayName="Work with Threads"
- // threads.mjs
- import { Worker, isMainThread,
- workerData, parentPort } from 'node:worker_threads';
-
- if (isMainThread) {
- const data = 'some data';
- const worker = new Worker(import.meta.filename, { workerData: data });
- worker.on('message', msg => console.log('Reply from Thread:', msg));
- } else {
- const source = workerData;
- parentPort.postMessage(btoa(source.toUpperCase()));
- }
-
- // run with `node threads.mjs`
- ```
+const server = createServer((req, res) => {
+res.writeHead(200, { 'Content-Type': 'text/plain' });
+res.end('Hello World!\n');
+});
+
+// starts a simple http server locally on port 3000
+server.listen(3000, '127.0.0.1', () => {
+console.log('Listening on 127.0.0.1:3000');
+});
+
+// run with `node server.mjs`
+
+````
+
+```js displayName="Write Tests"
+// tests.mjs
+import assert from 'node:assert';
+import test from 'node:test';
+
+test('that 1 is equal 1', () => {
+ assert.strictEqual(1, 1);
+});
+
+test('that throws as 1 is not equal 2', () => {
+ // throws an exception because 1 != 2
+ assert.strictEqual(1, 2);
+});
+
+// run with `node tests.mjs`
+````
+
+```js displayName="Read and Hash a File"
+// crypto.mjs
+import { createHash } from 'node:crypto';
+import { readFile } from 'node:fs/promises';
+
+const hasher = createHash('sha1');
+
+hasher.setEncoding('hex');
+// ensure you have a `package.json` file for this test!
+hasher.write(await readFile('package.json'));
+hasher.end();
+
+const fileHash = hasher.read();
+
+// run with `node crypto.mjs`
+```
+
+```js displayName="Streams Pipeline"
+// streams.mjs
+import { pipeline } from 'node:stream/promises';
+import { createReadStream, createWriteStream } from 'node:fs';
+import { createGzip } from 'node:zlib';
+
+// ensure you have a `package.json` file for this test!
+await pipeline(
+ createReadStream('package.json'),
+ createGzip(),
+ createWriteStream('package.json.gz')
+);
+
+// run with `node streams.mjs`
+```
+
+```js displayName="Work with Threads"
+// threads.mjs
+import {
+ Worker,
+ isMainThread,
+ workerData,
+ parentPort,
+} from 'node:worker_threads';
+
+if (isMainThread) {
+ const data = 'some data';
+ const worker = new Worker(import.meta.filename, { workerData: data });
+ worker.on('message', msg => console.log('Reply from Thread:', msg));
+} else {
+ const source = workerData;
+ parentPort.postMessage(btoa(source.toUpperCase()));
+}
+
+// run with `node threads.mjs`
+```
+
通过我们的[学习资料](/learn)了解 Node.js 。
+
diff --git a/apps/site/pages/zh-tw/about/branding.mdx b/apps/site/pages/zh-tw/about/branding.mdx
index 2f35950adc2d..3f8ae48f8962 100644
--- a/apps/site/pages/zh-tw/about/branding.mdx
+++ b/apps/site/pages/zh-tw/about/branding.mdx
@@ -9,7 +9,13 @@ Node.js 的品牌形象
## Node.js 吉祥物
-
+
## Node.js® 標誌
diff --git a/apps/site/pages/zh-tw/about/index.mdx b/apps/site/pages/zh-tw/about/index.mdx
index b297aa2df0fb..81b70befaa62 100644
--- a/apps/site/pages/zh-tw/about/index.mdx
+++ b/apps/site/pages/zh-tw/about/index.mdx
@@ -14,13 +14,13 @@ const hostname = '127.0.0.1';
const port = 3000;
const server = createServer((req, res) => {
-res.statusCode = 200;
-res.setHeader('Content-Type', 'text/plain');
-res.end('Hello World');
+ res.statusCode = 200;
+ res.setHeader('Content-Type', 'text/plain');
+ res.end('Hello World');
});
server.listen(port, hostname, () => {
-console.log(`Server running at http://${hostname}:${port}/`);
+ console.log(`Server running at http://${hostname}:${port}/`);
});
```
@@ -31,13 +31,13 @@ const hostname = '127.0.0.1';
const port = 3000;
const server = createServer((req, res) => {
-res.statusCode = 200;
-res.setHeader('Content-Type', 'text/plain');
-res.end('Hello World');
+ res.statusCode = 200;
+ res.setHeader('Content-Type', 'text/plain');
+ res.end('Hello World');
});
server.listen(port, hostname, () => {
-console.log(`Server running at http://${hostname}:${port}/`);
+ console.log(`Server running at http://${hostname}:${port}/`);
});
```
diff --git a/apps/site/pages/zh-tw/about/security-reporting.mdx b/apps/site/pages/zh-tw/about/security-reporting.mdx
index 634022e514d6..7f41b4ba9fce 100644
--- a/apps/site/pages/zh-tw/about/security-reporting.mdx
+++ b/apps/site/pages/zh-tw/about/security-reporting.mdx
@@ -51,8 +51,15 @@ Node.js 專案為安全研究人員和盡責公開揭露設立了官方漏洞獎
## OpenSSF 最佳實踐
-
-
+
+
開源安全基金會 (OpenSSF) [最佳實踐徽章](https://github.com/coreinfrastructure/best-practices-badge)的意義是為奉行最佳實踐的自由/開源軟體 (FLOSS) 專案提供背書。專案可以自發認證每項最佳實踐的遵循情況,徽章的使用者則可以快速評估哪些 FLOSS 專案確實遵循最佳實踐,因此更有可能產出安全又高品質的軟體。
diff --git a/apps/site/pages/zh-tw/download/package-manager/current.mdx b/apps/site/pages/zh-tw/download/package-manager/current.mdx
index f569fb0c6c0f..4ff53d5b588e 100644
--- a/apps/site/pages/zh-tw/download/package-manager/current.mdx
+++ b/apps/site/pages/zh-tw/download/package-manager/current.mdx
@@ -20,4 +20,5 @@ Node.js 內含 。
瞭解如何驗證已簽署的 SHASUMS
查看其他社群支援的套件管理器
+
diff --git a/apps/site/pages/zh-tw/download/package-manager/index.mdx b/apps/site/pages/zh-tw/download/package-manager/index.mdx
index f569fb0c6c0f..4ff53d5b588e 100644
--- a/apps/site/pages/zh-tw/download/package-manager/index.mdx
+++ b/apps/site/pages/zh-tw/download/package-manager/index.mdx
@@ -20,4 +20,5 @@ Node.js 內含 。
瞭解如何驗證已簽署的 SHASUMS
查看其他社群支援的套件管理器
+
diff --git a/apps/site/pages/zh-tw/download/prebuilt-binaries/current.mdx b/apps/site/pages/zh-tw/download/prebuilt-binaries/current.mdx
index 6da04279f08f..1889a774bc4f 100644
--- a/apps/site/pages/zh-tw/download/prebuilt-binaries/current.mdx
+++ b/apps/site/pages/zh-tw/download/prebuilt-binaries/current.mdx
@@ -20,4 +20,5 @@ Node.js 內含 。
瞭解如何驗證已簽署的 SHASUMS
查看其他平台的每日預建構二進制文件或非官方建構版本
+
diff --git a/apps/site/pages/zh-tw/download/prebuilt-binaries/index.mdx b/apps/site/pages/zh-tw/download/prebuilt-binaries/index.mdx
index 8afaeff1cb56..2a208b48376e 100644
--- a/apps/site/pages/zh-tw/download/prebuilt-binaries/index.mdx
+++ b/apps/site/pages/zh-tw/download/prebuilt-binaries/index.mdx
@@ -20,4 +20,5 @@ Node.js 內含 。
瞭解如何驗證已簽署的 SHASUMS。
查看其他平台的每日預建構二進制檔案、所有版本建建構二進制檔案或非官方建構檔案。
+
diff --git a/apps/site/pages/zh-tw/download/prebuilt-installer/current.mdx b/apps/site/pages/zh-tw/download/prebuilt-installer/current.mdx
index 73e2df802441..3093a495af0a 100644
--- a/apps/site/pages/zh-tw/download/prebuilt-installer/current.mdx
+++ b/apps/site/pages/zh-tw/download/prebuilt-installer/current.mdx
@@ -22,4 +22,5 @@ Node.js 內含 。
查看所有 Node.js 的下載選項
檢視 Node.js 版本清單
+
diff --git a/apps/site/pages/zh-tw/download/prebuilt-installer/index.mdx b/apps/site/pages/zh-tw/download/prebuilt-installer/index.mdx
index 73e2df802441..3093a495af0a 100644
--- a/apps/site/pages/zh-tw/download/prebuilt-installer/index.mdx
+++ b/apps/site/pages/zh-tw/download/prebuilt-installer/index.mdx
@@ -22,4 +22,5 @@ Node.js 內含 。
查看所有 Node.js 的下載選項
檢視 Node.js 版本清單
+
diff --git a/apps/site/pages/zh-tw/download/source-code/current.mdx b/apps/site/pages/zh-tw/download/source-code/current.mdx
index 6262b4fc2aaf..66421f326582 100644
--- a/apps/site/pages/zh-tw/download/source-code/current.mdx
+++ b/apps/site/pages/zh-tw/download/source-code/current.mdx
@@ -20,4 +20,5 @@ Node.js 內含 。
瞭解如何驗證已簽署的 SHASUMS
探索如何從原始碼建構 Node.js
+
diff --git a/apps/site/pages/zh-tw/download/source-code/index.mdx b/apps/site/pages/zh-tw/download/source-code/index.mdx
index 6262b4fc2aaf..66421f326582 100644
--- a/apps/site/pages/zh-tw/download/source-code/index.mdx
+++ b/apps/site/pages/zh-tw/download/source-code/index.mdx
@@ -20,4 +20,5 @@ Node.js 內含 。
瞭解如何驗證已簽署的 SHASUMS
探索如何從原始碼建構 Node.js
+
diff --git a/apps/site/pages/zh-tw/index.mdx b/apps/site/pages/zh-tw/index.mdx
index 78a1c0b0c9c8..0a9fac05cf65 100644
--- a/apps/site/pages/zh-tw/index.mdx
+++ b/apps/site/pages/zh-tw/index.mdx
@@ -9,7 +9,8 @@ layout: home
隨時隨地執行 JavaScript
- Node.js® 是一款免費的跨平台開源 JavaScript 執行環境,供開發者建立伺服器、網頁應用程式、命令列工具與腳本。
+Node.js® 是一款免費的跨平台開源 JavaScript 執行環境,供開發者建立伺服器、網頁應用程式、命令列工具與腳本。
+
@@ -44,87 +45,93 @@ layout: home
// server.mjs
import { createServer } from 'node:http';
- const server = createServer((req, res) => {
- res.writeHead(200, { 'Content-Type': 'text/plain' });
- res.end('Hello World!\n');
- });
-
- // starts a simple http server locally on port 3000
- server.listen(3000, '127.0.0.1', () => {
- console.log('Listening on 127.0.0.1:3000');
- });
-
- // run with `node server.mjs`
- ```
-
- ```js displayName="Write Tests"
- // tests.mjs
- import assert from 'node:assert';
- import test from 'node:test';
-
- test('that 1 is equal 1', () => {
- assert.strictEqual(1, 1);
- });
-
- test('that throws as 1 is not equal 2', () => {
- // throws an exception because 1 != 2
- assert.strictEqual(1, 2);
- });
-
- // run with `node tests.mjs`
- ```
-
- ```js displayName="Read and Hash a File"
- // crypto.mjs
- import { createHash } from 'node:crypto';
- import { readFile } from 'node:fs/promises';
-
- const hasher = createHash('sha1');
-
- hasher.setEncoding('hex');
- // ensure you have a `package.json` file for this test!
- hasher.write(await readFile('package.json'));
- hasher.end();
-
- const fileHash = hasher.read();
-
- // run with `node crypto.mjs`
- ```
-
- ```js displayName="Streams Pipeline"
- // streams.mjs
- import { pipeline } from 'node:stream/promises';
- import { createReadStream, createWriteStream } from 'node:fs';
- import { createGzip } from 'node:zlib';
-
- // ensure you have a `package.json` file for this test!
- await pipeline
- (
- createReadStream('package.json'),
- createGzip(),
- createWriteStream('package.json.gz')
- );
-
- // run with `node streams.mjs`
- ```
-
- ```js displayName="Work with Threads"
- // threads.mjs
- import { Worker, isMainThread,
- workerData, parentPort } from 'node:worker_threads';
-
- if (isMainThread) {
- const data = 'some data';
- const worker = new Worker(import.meta.filename, { workerData: data });
- worker.on('message', msg => console.log('Reply from Thread:', msg));
- } else {
- const source = workerData;
- parentPort.postMessage(btoa(source.toUpperCase()));
- }
-
- // run with `node threads.mjs`
- ```
+const server = createServer((req, res) => {
+res.writeHead(200, { 'Content-Type': 'text/plain' });
+res.end('Hello World!\n');
+});
+
+// starts a simple http server locally on port 3000
+server.listen(3000, '127.0.0.1', () => {
+console.log('Listening on 127.0.0.1:3000');
+});
+
+// run with `node server.mjs`
+
+````
+
+```js displayName="Write Tests"
+// tests.mjs
+import assert from 'node:assert';
+import test from 'node:test';
+
+test('that 1 is equal 1', () => {
+ assert.strictEqual(1, 1);
+});
+
+test('that throws as 1 is not equal 2', () => {
+ // throws an exception because 1 != 2
+ assert.strictEqual(1, 2);
+});
+
+// run with `node tests.mjs`
+````
+
+```js displayName="Read and Hash a File"
+// crypto.mjs
+import { createHash } from 'node:crypto';
+import { readFile } from 'node:fs/promises';
+
+const hasher = createHash('sha1');
+
+hasher.setEncoding('hex');
+// ensure you have a `package.json` file for this test!
+hasher.write(await readFile('package.json'));
+hasher.end();
+
+const fileHash = hasher.read();
+
+// run with `node crypto.mjs`
+```
+
+```js displayName="Streams Pipeline"
+// streams.mjs
+import { pipeline } from 'node:stream/promises';
+import { createReadStream, createWriteStream } from 'node:fs';
+import { createGzip } from 'node:zlib';
+
+// ensure you have a `package.json` file for this test!
+await pipeline(
+ createReadStream('package.json'),
+ createGzip(),
+ createWriteStream('package.json.gz')
+);
+
+// run with `node streams.mjs`
+```
+
+```js displayName="Work with Threads"
+// threads.mjs
+import {
+ Worker,
+ isMainThread,
+ workerData,
+ parentPort,
+} from 'node:worker_threads';
+
+if (isMainThread) {
+ const data = 'some data';
+ const worker = new Worker(import.meta.filename, { workerData: data });
+ worker.on('message', msg => console.log('Reply from Thread:', msg));
+} else {
+ const source = workerData;
+ parentPort.postMessage(btoa(source.toUpperCase()));
+}
+
+// run with `node threads.mjs`
+```
+
我們提供大量[學習資源](/learn),探索 Node.js 的無限潛能。
+
From f0606d60b58de76e34fe39ffda1f23b88a508543 Mon Sep 17 00:00:00 2001
From: Brian Muenzenmeyer
Date: Mon, 16 Sep 2024 09:19:04 -0500
Subject: [PATCH 108/108] fix: normalize some mis-translations
---
apps/site/pages/fr/about/governance.md | 2 +-
apps/site/pages/id/about/governance.md | 2 +-
2 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/apps/site/pages/fr/about/governance.md b/apps/site/pages/fr/about/governance.md
index 9cf0b1c05066..73741b6ad0e1 100644
--- a/apps/site/pages/fr/about/governance.md
+++ b/apps/site/pages/fr/about/governance.md
@@ -24,7 +24,7 @@ Un guide pour les collaborateurs est disponible à l'adresse suivante : [collabo
## Comité de pilotage technique
-Le projet est régi par le \[Comité de pilotage technique (TSC)]\[]
+Le projet est régi par le [Comité de pilotage technique (TSC)][Technical Steering Committee (TSC)]
qui est responsable de l'orientation de haut niveau du projet. Le TSC est un
un sous-ensemble de collaborateurs actifs qui sont nommés par d'autres membres existants du TSC.
diff --git a/apps/site/pages/id/about/governance.md b/apps/site/pages/id/about/governance.md
index 1dc32b53357f..fccc0765aeab 100644
--- a/apps/site/pages/id/about/governance.md
+++ b/apps/site/pages/id/about/governance.md
@@ -22,7 +22,7 @@ Panduan untuk Kolaborator disimpan di [collaborator-guide.md][].
## Komite Pengarah Teknis
-Proyek ini diatur oleh \[Komite Pengarah Teknis]\[] dalam bahasa inggris Technical Steering Committee (TSC) yang bertanggung jawab atas panduan tingkat tinggi proyek. TSC adalah bagian dari Kolaborator aktif yang dinominasikan oleh anggota TSC lain yang sudah ada.
+Proyek ini diatur oleh [Komite Pengarah Teknis][Technical Steering Committee (TSC)] dalam bahasa inggris Technical Steering Committee (TSC) yang bertanggung jawab atas panduan tingkat tinggi proyek. TSC adalah bagian dari Kolaborator aktif yang dinominasikan oleh anggota TSC lain yang sudah ada.
[consensus seeking]: https://id.wikipedia.org/wiki/Musyawarah
[readme.md]: https://github.com/nodejs/node/blob/main/README.md#current-project-team-members