diff --git a/apps/site/pages/uk/about/get-involved/index.md b/apps/site/pages/uk/about/get-involved/index.md index 8ab43f85a96a1..e20c536f01ab0 100644 --- a/apps/site/pages/uk/about/get-involved/index.md +++ b/apps/site/pages/uk/about/get-involved/index.md @@ -31,4 +31,5 @@ layout: about - [Node Slackers](https://www.nodeslackers.com/) — це спільнота Slack із фокусом на Node.js. - [OpenJSF Slack](https://slack-invite.openjsf.org/) — це робочий простір Slack для OpenJS Foundation. Там є кілька каналів, які стосуються Node.js. _(канали з префіксом `#nodejs-` стосуються проєкту)_ +- [r/node](https://www.reddit.com/r/node/) — це сабреддіт із фокусом на Node.js. - Для IRC перейдіть на `irc.libera.chat` у каналі `#node.js` через [клієнт IRC](https://en.wikipedia.org/wiki/Comparison_of_Internet_Relay_Chat_clients) або під'єднайтеся до каналу з веббраузера [через вебклієнт](https://kiwiirc.com/nextclient/). diff --git a/apps/site/pages/uk/index.mdx b/apps/site/pages/uk/index.mdx new file mode 100644 index 0000000000000..9c342da0a9754 --- /dev/null +++ b/apps/site/pages/uk/index.mdx @@ -0,0 +1,125 @@ +--- +title: Запускайте JavaScript будь‑де +layout: home +--- + +
+ + +
+

Запускайте JavaScript будь‑де

+ + Node.js® — це безплатне, кросплатформне середовище виконання JavaScript із відкритим кодом, + яке дозволяє розробникам створювати сервери, вебзастосунки, інструменти командного рядка та скрипти. + +
+ +
+
+ + + + + +
+ +
+
+ +
+
+ ```js displayName="Create an HTTP Server" + // 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 { createReadStream, createWriteStream } from 'node:fs'; + import { pipeline } from 'node:stream/promises'; + 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/snippets/uk/download/choco.bash b/apps/site/snippets/uk/download/choco.bash index 98e501a08451b..6fa5ca92e1e82 100644 --- a/apps/site/snippets/uk/download/choco.bash +++ b/apps/site/snippets/uk/download/choco.bash @@ -2,7 +2,7 @@ powershell -c "irm https://community.chocolatey.org/install.ps1|iex" # Завантажує й установлює Node.js: -choco install nodejs-lts --version="${props.release.major}" +choco install nodejs --version="${props.release.version}" # Перевіряє версію Node.js: node -v # Повинно вивести «${props.release.versionWithPrefix}». diff --git a/packages/i18n/src/locales/ro.json b/packages/i18n/src/locales/ro.json index c0d39786229e2..8055de6b9c5e3 100644 --- a/packages/i18n/src/locales/ro.json +++ b/packages/i18n/src/locales/ro.json @@ -4,8 +4,8 @@ "footer": { "links": { "openJSFoundation": "Fundația OpenJS", - "trademarkPolicy": "Politica privind mărcile comerciale", - "privacyPolicy": "Politica de confidențialitate", + "trademarkPolicy": "Politică de mărci comerciale", + "privacyPolicy": "Politică de confidențialitate", "versionSupport": "Suport pentru versiuni", "codeOfConduct": "Cod de conduită", "security": "Politica de securitate" diff --git a/packages/i18n/src/locales/uk.json b/packages/i18n/src/locales/uk.json index a54075b6997d5..0570950dbbe8d 100644 --- a/packages/i18n/src/locales/uk.json +++ b/packages/i18n/src/locales/uk.json @@ -3,11 +3,16 @@ "containers": { "footer": { "links": { + "openJSFoundation": "OpenJS Foundation", "trademarkPolicy": "Політика торгових марок", "privacyPolicy": "Політика конфіденційності", "versionSupport": "Підтримка версії", "codeOfConduct": "Кодекс поведінки", "security": "Політика безпеки" + }, + "releasePills": { + "latestLTS": "Остання LTS", + "latestRelease": "Останній реліз" } }, "navBar": { @@ -94,6 +99,12 @@ "acceptInputFromTheCommandLineInNodejs": "Зчитування вводу з командного рядка з Node.js" } }, + "migrations": { + "links": { + "migrations": "Користувацькі міграції", + "introduction": "Вступ до користувацьких міграцій" + } + }, "modules": { "links": { "modules": "Модулі", @@ -157,12 +168,13 @@ "details": "Деталі" }, "releaseModal": { - "title": "Node.js {version} ({codename})", - "titleWithoutCodename": "Node.js {version}", + "title": "Node.js v{version} ({codename})", + "titleWithoutCodename": "Node.js v{version}", "overview": "Огляд", "minorVersions": "Мінорні версії", "releaseAnnouncement": "Оголошення релізу", - "unsupportedVersionWarning": "Ця версія більше не супроводжується. Будь ласка, використовуйте підтримувану версію." + "unsupportedVersionWarning": "Ця версія більше не супроводжується. Будь ласка, використовуйте підтримувану версію. Про кінець підтримки.", + "ltsVersionFeaturesNotice": "Бажаєте отримати нові функції швидше? Установіть останню версію Node.js та випробуйте останні покращення!" }, "minorReleasesTable": { "version": "Версія", @@ -199,7 +211,7 @@ "next": "Далі" }, "codebox": { - "copy": "Скопіювати", + "copy": "Скопіювати в буфер обміну", "copied": "Скопійовано!" }, "pagination": { @@ -232,9 +244,20 @@ "tableOfContents": "Зміст" }, "search": { - "searchBox": { - "placeholder": "Пошук..." - } + "searchPlaceholder": "Уведіть щось...", + "chatPlaceholder": "Спитайте мене про щось", + "noResultsFoundFor": "Не знайдено результатів для", + "suggestions": "Пропозиції", + "seeAll": "Показати все", + "addMore": "Додати ще", + "clearChat": "Очистити чат", + "errorMessage": "Виникла помилка під час пошуку. Спробуйте знову.", + "disclaimer": "ШІ може робити помилки. Перевіряйте отриману інформацію.", + "startYourSearch": "Почніть пошук", + "initErrorSearch": "Не вдалося ініціалізувати пошуковий сервіс", + "initErrorChat": "Не вдалося ініціалізувати сервіс чату", + "chatButtonLabel": "Отримати результати ШІ", + "searchButtonLabel": "Пошук" }, "blog": { "blogHeader": { @@ -246,7 +269,7 @@ "layouts": { "blogPost": { "author": { - "byLine": "{author, select, null {} other {Від {author}, }}" + "byLine": "{author, select, null {} other {Від {author}, }}" } }, "blogIndex": { @@ -259,11 +282,11 @@ "all": "Усе", "announcements": "Оголошення", "release": "Релізи", - "vulnerability": "Уразливості", + "vulnerability": "Вразливості", "advisory-board": "Консультативний комітет", "community": "Спільнота", "feature": "Функціонал", - "module": "Модуль", + "module": "Модулі", "npm": "npm", "uncategorized": "Без категорії", "video": "Відео", @@ -302,6 +325,7 @@ }, "codeBox": { "unsupportedVersionWarning": "Ця версія більше не супроводжується. Будь ласка, використовуйте підтримувану версію. Про кінець підтримки.", + "ltsVersionFeaturesNotice": "Бажаєте отримати нові функції швидше? Установіть останню версію Node.js та випробуйте останні покращення!", "communityPlatformInfo": "Методи установки, які включають ПЗ спільноти, підтримуються відповідними супроводжувачами.", "externalSupportInfo": "Якщо виявите проблеми, відвідайте вебсайт {platform}", "noScriptDetected": "Ця сторінка вимагає JavaScript. Завантажити Node.js без JavaScript можна, безпосередньо відвідавши сторінку релізів.",