Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
128 changes: 128 additions & 0 deletions apps/site/pages/ar/about/branding.mdx
Original file line number Diff line number Diff line change
@@ -0,0 +1,128 @@
---
title: العلامة التجارية لـ Node.js
layout: about
---

# العلامة التجارية لـ Node.js

يرجى الاطلاع على [سياسة العلامات التجارية](https://trademark-policy.openjsf.org/) لمعرفة تفاصيل الاستخدام المسموح به لشعارات وعلامات Node.js®.

## تميمة Node.js®

يعود الفضل لـ [Angela Angelini](https://www.linkedin.com/in/angeliningl/) في تصميم والمساهمة بشخصية Rocket Turtle.

<img
alt="تميمة Node.js"
src="/static/images/node-mascot.svg"
className="w-[100px]"
width="100"
height="114"
/>

## شعار Node.js®

### شعار Node.js® السداسي

<img
alt="شعار Node.js السداسي"
src="/static/logos/nodejsHex.svg"
className="w-[100px]"
width="100"
height="100"
/>

### شعار Node.js® الأفقي

<table>
<tbody>
<tr>
<td>
<img
alt="شعار Node.js الأفقي الداكن"
src="/static/logos/nodejsDark.svg"
className="h-[80px] w-[267px]"
width="267"
height="80"
/>
</td>
<td>
<img
alt="شعار Node.js الأفقي الفاتح"
src="/static/logos/nodejsLight.svg"
className="h-[80px] w-[267px] bg-neutral-950 p-2 dark:bg-transparent"
width="267"
height="80"
/>
</td>
</tr>
</tbody>
</table>

### شعار Node.js® العمودي

<table>
<tbody>
<tr>
<td>
<img
alt="شعار Node.js العمودي الداكن"
src="/static/logos/nodejsStackedDark.svg"
className="h-[164px] w-[267px]"
width="267"
height="164"
/>
</td>
<td>
<img
alt="شعار Node.js العمودي الفاتح"
src="/static/logos/nodejsStackedLight.svg"
className="h-[164px] w-[267px] rounded-xs bg-neutral-950 p-2 dark:bg-transparent"
width="267"
height="164"
/>
</td>
</tr>
<tr>
<td>
<img
alt="شعار Node.js العمودي الأسود"
src="/static/logos/nodejsStackedBlack.svg"
/>
</td>
<td>
<img
alt="شعار Node.js العمودي الأبيض"
src="/static/logos/nodejsStackedWhite.svg"
className="rounded-xs bg-neutral-950 p-2 dark:bg-transparent"
/>
</td>
</tr>
</tbody>
</table>

### JS Icons

<table>
<tbody>
<tr>
<td>
<img
alt="JS Icons Green"
src="/static/logos/jsIconGreen.svg"
className="height-[80px] mx-auto w-[71px]"
width="71"
height="80"
/>
</td>
<td>
<img
alt="White JS Icons"
src="/static/logos/jsIconWhite.svg"
className="height-[80px] mx-auto w-[71px] rounded-xs bg-neutral-950 p-2 dark:bg-transparent"
width="71"
height="80"
/>
</td>
</tr>
</tbody>
</table>
48 changes: 48 additions & 0 deletions apps/site/pages/ar/about/eol.mdx
Original file line number Diff line number Diff line change
@@ -0,0 +1,48 @@
---
title: نهاية الدعم
layout: about
description: تعرّف على معنى نهاية دعم إصدارات Node.js، وتأثيرها على الأمان والأدوات والامتثال، بالإضافة إلى تفاصيل إصدار EOL وخيارات الدعم التجاري.
---

# نهاية الدعم (EOL)

## لماذا وكيف تصل إصدارات Node.js إلى نهاية الدعم

تُطرح الإصدارات الرئيسية من Node.js وتُحدّث ثم تصل إلى نهاية الدعم وفق جدول معروف. وبما أنه لا يمكن الاستمرار في صيانة كل مسارات الإصدارات إلى الأبد، يتوقف المشروع عن صيانة أي إصدار رئيسي من Node.js بعد انتهاء فترة الصيانة المحددة له.

<div className="flex flex-col items-start gap-4 xl:flex-row xl:items-center">
<Button kind="primary" href="/download" className="flex-1">
<span>حدّث إلى أحدث إصدار LTS من Node.js®</span>
</Button>
<span>أو</span>
<Button as="a" kind="warning" href="#commercial-support" className="flex-1">
<span>احصل على دعم أمني للإصدارات المنتهية</span>
</Button>
</div>

[اطّلع على جدول إصدارات Node.js](/about/releases/).

## ماذا يحدث عند وصول إصدار إلى نهاية الدعم

عندما يصل إصدار إلى نهاية الدعم، فهذا يعني أنه لن يتلقى أي تحديثات جديدة، بما في ذلك التحديثات الأمنية. وقد يجعل ذلك التطبيقات التي تعمل على هذه الإصدارات عرضة لثغرات ومشكلات لن يتم إصلاحها.

- **توقف إصلاح الثغرات**: عند صدور تحديثات أمنية تكشف عن مشكلات وإصلاحات في الإصدارات الرئيسية الأحدث، فلن تصدر تحديثات للإصدارات المنتهية حتى لو كانت الثغرة نفسها تؤثر عليها. لذلك تصبح التطبيقات التي ما زالت تستخدم هذه الإصدارات ومسارات الكود المتأثرة معرضة مباشرة للهجمات التي تستغل الثغرات المعلنة.
- **تعطّل سلسلة الأدوات**: قد لا تتمكن الإصدارات المنتهية من الارتباط ديناميكيًا بالإصدارات الأحدث من المكتبات المشتركة التي تعتمد عليها، مما قد يمنع تحديثات النظام أو يسبب تعطلها.
- **الابتعاد عن منظومة الأدوات**: مع الوقت، تتوقف كثير من الحزم الشائعة عن دعم إصدارات Node.js المنتهية. وعندما يبقى التطبيق معتمدًا على حزم قديمة، فقد يتعرض لمزيد من الثغرات والمشكلات غير المعالجة ويبتعد أكثر عن المعايير الشائعة في المنظومة.
- **مشكلات في الامتثال**: كثير من عمليات التدقيق في القطاعات المختلفة لا تسمح باستخدام بيئات تشغيل غير مدعومة.

## الإصدارات المنتهية

<EOLReleaseTable />

## الدعم التجاري

رغم السلبيات الواضحة لاستخدام إصدارات EOL منتهية الدعم، تواجه المؤسسات عملياً قيوداً تمنعها من الترقية الفورية، مثل الأكواد القديمة Legacy، أو متطلبات الامتثال، أو سلاسل الاعتمادية المعقدة. ومن خلال [برنامج استدامة منظومة OpenJS Foundation](https://openjsf.org/blog/ecosystem-sustainability-program)، يحصل Node.js على دعم من HeroDevs و NodeSource و TuxCare لتقديم خدمات تجارية للإصلاحات الأمنية.

رغم سلبيات استخدام الإصدارات المنتهية، تواجه المؤسسات أحيانًا قيودًا تمنعها من التحديث فورًا، مثل قواعد الكود القديمة، أو متطلبات الامتثال، أو سلاسل الاعتماد المعقدة. ومن خلال [برنامج استدامة منظومة OpenJS Foundation](https://openjsf.org/blog/ecosystem-sustainability-program)، يحصل Node.js على دعم من HeroDevs وNodeSource لتقديم خدمات تجارية للإصلاحات الأمنية.

تقدم NodeSource تقييمات ترقية بمستوى تجاري ودعماً من الخبراء لتحديث تطبيقات Node.js التي لا تزال تعمل على إصدارات EOL منتهية الدعم بأمان. يوفر [برنامج الترقية](https://nodesource.com/products/nodejs-upgrade) الموجه الخاص بهم تحليلاً عميقاً للمخاطر، ويحدد عوائق النقل، ويقدم خارطة طريق مخصصة لتسهيل رحلة الترقية الخاصة بك.

يوفر برنامج [الدعم اللانهائي لدورة الحياة (ELS)](https://tuxcare.com/endless-lifecycle-support/) من TuxCare ترقيعات أمنية مستمرة لإصدارات Node.js منتهية الدعم. يتم نقل الإصلاحات الأمنية من النسخ الأحدث واستيرادها خلفياً، واختبار سلامتها وعدم تسببها في تراجع الأداء، وتوقيعها، ودعمها باتفاقية مستوى الخدمة SLA، وتسليمها عبر مديري الحزم الحاليين لديك.

تقدّم HeroDevs خدمة [Never-Ending Support (NES)](https://nodejs.org/esp/herodevs) لإصدارات Node.js التي تجاوزت مرحلة الصيانة الرسمية. يشمل ذلك تحديثات أمنية، ومساعدة في الامتثال، ودعمًا فنيًا يساعدك على تجاوز الفترة الانتقالية أثناء التخطيط للتحديث.
51 changes: 51 additions & 0 deletions apps/site/pages/ar/about/partners.mdx
Original file line number Diff line number Diff line change
@@ -0,0 +1,51 @@
---
title: الشركاء والداعمون
layout: about
---

# الشركاء والداعمون

يزدهر مجتمع Node.js بفضل شبكة نشطة من الشركاء الذين يساهمون
بطرق متنوعة. ومن خلال هذه الشراكات، نحافظ على بنية تحتية قوية،
ونعزز الأمان، وندعم الإصدارات الجديدة، وننمي منظومتنا بشكل مستدام.

نقدّر دعم شركائنا الذين يؤدون دورًا مهمًا في نجاح Node.js
واستمرار تطويره.

## البنية التحتية

يقدّم شركاء البنية التحتية دعمًا مهمًا لمشروع Node.js،
من خلال توفير العتاد والأجهزة اللازمة لعمليات التكامل المستمر والاختبار،
وبدون هذا الدعم لا يمكننا اختبار الإصدارات الجديدة من Node.js وإطلاقها.

<PartnersList size="large" category="البنية التحتية" />

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Translated partner category breaks list

Medium Severity

The PartnersList category prop is set to the Arabic heading text instead of the canonical key infrastructure. Filtering uses exact matches against partner data, so the infrastructure section renders with no partners.

Fix in Cursor Fix in Web

Reviewed by Cursor Bugbot for commit a39231c. Configure here.


## الداعمون

الداعمون هم أفراد ومؤسسات يقدّمون دعمًا ماليًا لمشروع Node.js
عبر [OpenCollective](https://opencollective.com/nodejs) و[GitHub Sponsors](https://github.com/sponsors/nodejs).

<WithSupporters />

## برنامج استدامة المنظومة (ESP)

هل تستخدم إصدارًا من Node.js وصل إلى نهاية الدعم (EOL)؟ برنامج استدامة منظومة OpenJS (ESP)
يساعد المؤسسات على صيانة تطبيقات Node.js التي تعمل على إصدارات منتهية الدعم.
يوفر البرنامج الوصول إلى تحديثات أمنية، ومساعدة في الامتثال، ودعمًا فنيًا
يساعد على تجاوز الفترة الانتقالية أثناء التخطيط لاستراتيجية التحديث. لمزيد من المعلومات حول
الإصدارات المنتهية، يرجى زيارة [إصدارات Node.js المنتهية الدعم](/about/eol)

> ينبغي النظر إلى استخدام الإصدارات المنتهية عبر الدعم التجاري كحل مؤقت، فالهدف دائمًا
> هو التحديث إلى إصدارات ما زالت مدعومة رسميًا.

<PartnersList size="large" category="esp" />

## كن شريكًا

كن شريكًا في مشروع Node.js وساعدنا على مواصلة تطوير هذا المشروع وصيانته.
دعمك ضروري لضمان بقاء Node.js منصة موثوقة وآمنة للمطورين والمؤسسات حول العالم.
إذا كنت مهتمًا بأن تصبح شريكًا، فيرجى التواصل معنا عبر OpenJS Foundation.

<div>
<Button href="https://openjsf.org/partners">كن شريكًا في OpenJS</Button>
</div>
52 changes: 52 additions & 0 deletions apps/site/pages/ar/about/previous-releases.mdx
Original file line number Diff line number Diff line change
@@ -0,0 +1,52 @@
---
title: إصدارات Node.js
layout: about
---

# إصدارات Node.js

<EOLAlertBox />

تدخل الإصدارات الرئيسية من Node.js في حالة _Current_ لمدة ستة أشهر، مما يمنح مطوّري المكتبات وقتًا لإضافة دعمها.
تاريخيًا، وحتى Node.js 26، تصبح الإصدارات ذات الأرقام الفردية مثل 9 و11 غير مدعومة بعد ستة أشهر، بينما تنتقل الإصدارات ذات الأرقام الزوجية مثل 10 و12 إلى حالة _Active LTS_ وتصبح مناسبة للاستخدام العام.
ابتداءً من Node.js 27، ستصبح دورة الإصدارات سنوية، وسينتقل كل إصدار رئيسي إلى حالة _LTS_ بعد مرحلة _Current_ التي تستمر ستة أشهر، إضافة إلى ستة أشهر أخرى في مرحلة _Alpha_.
تعني حالة _LTS_ "الدعم طويل الأمد"، وهي تضمن عادةً إصلاح الأخطاء الحرجة لمدة إجمالية قدرها 30 شهرًا.
ينبغي لتطبيقات الإنتاج استخدام إصدارات _Active LTS_ أو _Maintenance LTS_ فقط.

## جدول الإصدارات

![الإصدارات](https://raw.githubusercontent.com/nodejs/Release/main/schedule.svg?sanitize=true)

تتوفر التفاصيل الكاملة حول جدول إصدارات Node.js على [GitHub](https://github.com/nodejs/release#release-schedule).

## هل تبحث عن أحدث إصدار ضمن فرع معين؟

<PreviousReleasesTable />

## طرق التثبيت الرسمية والمجتمعية

يوفر موقع Node.js عدة طرق تثبيت غير تفاعلية، بما في ذلك واجهات سطر الأوامر (CLIs)، ومديري حزم أنظمة التشغيل (OS) مثل `brew`، ومديري إصدارات Node.js مثل `nvm`.

ولتسليط الضوء على مساهمات المجتمع ودعمها، قدّم مشروع Node.js صفحة تنزيلات محدّثة تصنّف طرق التثبيت إلى “رسمية” أو “مجتمعية”. يمنح هذا المستخدمين مرونة وخيارات أكثر. ولتوضيح الفرق، حددنا معايير لكل فئة.

### طرق التثبيت الرسمية

يجب أن تستوفي طرق التثبيت المصنّفة على أنها “رسمية” المتطلبات التالية:

| المتطلبات (طرق التثبيت الرسمية) |
| :------------------------------------------------------------------------------------------------------------ |
| يجب أن تكون إصدارات Node.js الجديدة متاحة في نفس وقت الإصدار الرسمي. |
| يجب أن تكون لدى مشرفي المشروع علاقة وثيقة بمشروع Node.js، بما في ذلك قنوات تواصل مباشرة. |
| يجب أن تقوم طريقة التثبيت بتنزيل الملفات الثنائية الرسمية التي يوفّرها مشروع Node.js. |
| يجب ألا تبني طريقة التثبيت من المصدر عند توفر ملفات ثنائية جاهزة، كما يجب ألا تعدّل الملفات الثنائية الرسمية. |

### طرق التثبيت المجتمعية

يجب أن تلتزم طرق التثبيت المجتمعية المدرجة في صفحة التنزيل الذاتية الموجودة على /download بحد أدنى من المعايير:

- **دعم الإصدارات:** يجب أن تدعم جميع إصدارات Node.js المدعومة حاليًا وغير المنتهية (EOL).
- **التوافق مع أنظمة التشغيل:** يجب أن تعمل على نظام تشغيل (OS) واحد على الأقل من الأنظمة المدعومة رسميًا.
- **دعم واسع لأنظمة التشغيل:** يجب ألا تقتصر على مجموعة محددة من توزيعات أو إصدارات أنظمة التشغيل.
- على سبيل المثال، إذا كانت طريقة التثبيت تدّعي التوافق مع “Windows”، فيجب أن تعمل على “Windows 10” و“Windows 11” وجميع إصداراتهما، بما في ذلك إصدارات الخوادم.
- وبالمثل، إذا كانت طريقة التثبيت تدّعي التوافق مع “Linux”، فيجب أن تكون قابلة للتثبيت على جميع توزيعات Linux الرئيسية، وليس على مجموعة محددة فقط. كما يجب ألا تعتمد على مديري حزم خاصين بتوزيعات معينة مثل `apt` أو `dnf`.
- **مجانية ومفتوحة المصدر:** يجب أن تكون مجانية الاستخدام ومفتوحة المصدر، وألا تُباع كمنتج تجاري أو تُقدّم كخدمة مدفوعة.
59 changes: 59 additions & 0 deletions apps/site/pages/ar/download/archive/index.mdx
Original file line number Diff line number Diff line change
@@ -0,0 +1,59 @@
---
title: تحميل ®Node.js
layout: download-archive
---

<WithDownloadArchive>
{({ binaries, installers, version, release, sources }) => (
<>
<h1>أرشيف تحميلات Node.js®</h1>

<h2 className="flex items-center gap-2">
<img
src="/static/logos/jsIconGreen.svg"
alt="Node.js Logo"
width="24"
height="24"
/>
{version}
{release.codename && ` (${release.codename})`}
</h2>

<WithReleaseAlertBox status={release.status} />

<ReleaseOverview release={release} />

<ul className='flex list-none flex-col gap-2 p-0 text-sm'>
<li>
اقرأ <LinkWithArrow href={`https://github.com/nodejs/node/releases/tag/${version}`}>سجل التغييرات (changelog)</LinkWithArrow> أو <Link href={`/blog/release/${version}`}>المقالة</Link> الخاصة بهذا الإصدار.
</li>
<li>
تعرّف أكثر على <Link href="/about/previous-releases">إصدارات Node.js</Link>، بما في ذلك جدول الإصدارات وحالة دعم LTS.
</li>

<li>
ملفات <LinkWithArrow href={sources.shasum}>SHASUMS الموقعة</LinkWithArrow> للتحقق من ملفات الإصدار. كيفية <LinkWithArrow href="https://github.com/nodejs/node#verifying-binaries">التحقق</LinkWithArrow> من ملفات SHASUMS الموقعة.
</li>

<li>
تحميل ملف <LinkWithArrow href={sources.tarball}>الكود المصدري لـ Node.js {version}</LinkWithArrow> كمستند tarball موقّع.
</li>

</ul>

<h2>إصدارات أخرى</h2>
<WithReleaseSelect placeholder={version} defaultValue={`/download/archive/${version}`} className="w-64"/>

<h2>تحميل Binary</h2>
<DownloadsTable source={binaries} />

<h2>حزم التثبيت (Installers)</h2>
<DownloadsTable source={installers} />

<h2>الإصدارات الفرعية (Minor versions)</h2>
<MinorReleasesTable releases={release.minorVersions} />
</>

)}

</WithDownloadArchive>
Loading
Loading