Skip to content
Merged
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
1 change: 0 additions & 1 deletion .github/CODEOWNERS
Original file line number Diff line number Diff line change
Expand Up @@ -33,7 +33,6 @@ apps/site/redirects.json @nodejs/web-infra

# Critical Documents
LICENSE @nodejs/tsc
GOVERNANCE.md @nodejs/tsc
CONTRIBUTING.md @nodejs/nodejs-website @nodejs/web-infra
docs @nodejs/nodejs-website @nodejs/web-infra
SECURITY.md @nodejs/security-wg
Expand Down
90 changes: 0 additions & 90 deletions GOVERNANCE.md

This file was deleted.

3 changes: 3 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -94,6 +94,8 @@ These are maintained in different repositories and we urge users to open **issue

[Collaborator Guide][]

[Governance Document][]

[Figma Design][]

[Content vs Code][]
Expand Down Expand Up @@ -121,5 +123,6 @@ These are maintained in different repositories and we urge users to open **issue
[content vs code]: https://github.com/nodejs/nodejs.org/blob/main/docs/content-vs-code.md
[dependency pinning]: https://github.com/nodejs/nodejs.org/blob/main/docs/dependency-pinning.md
[collaborator guide]: https://github.com/nodejs/nodejs.org/blob/main/docs/collaborator-guide.md
[governance document]: https://github.com/nodejs/web-team/blob/main/GOVERNANCE.md
[figma design]: https://www.figma.com/file/a10cjjw3MzvRQMPT9FP3xz
[translation guidelines]: https://github.com/nodejs/nodejs.org/blob/main/docs/translation.md
4 changes: 2 additions & 2 deletions apps/site/components/Blog/BlogPostCard/index.module.css
Original file line number Diff line number Diff line change
Expand Up @@ -6,8 +6,8 @@
}

.subtitle {
@apply mb-2
mt-6
@apply mt-6
mb-2
inline-block
text-xs
font-semibold
Expand Down
8 changes: 4 additions & 4 deletions apps/site/components/Common/Turtle/index.module.css
Original file line number Diff line number Diff line change
Expand Up @@ -8,20 +8,20 @@
translate-x-0
translate-y-0
after:absolute
after:-left-full
after:top-[20%]
after:-left-full
after:-z-10
after:block
after:h-36
after:w-36
after:-rotate-90
after:select-none
after:bg-[url('/static/images/smoke.gif')]
after:opacity-[0.15]
after:content-['']
after:select-none
motion-reduce:animate-none
after:md:-left-1/2
after:md:top-1/2;
after:md:top-1/2
after:md:-left-1/2;
}

.image {
Expand Down
2 changes: 1 addition & 1 deletion apps/site/components/Downloads/Release/ReleaseCodeBox.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -128,7 +128,7 @@ const ReleaseCodeBox: FC = () => {
const isLoading = context.os === 'LOADING' || context.installMethod === '';

return (
<div className="mb-6 mt-4 flex flex-col gap-2">
<div className="mt-4 mb-6 flex flex-col gap-2">
{/* NoScript warning */}
<noscript>
<AlertBox
Expand Down
4 changes: 2 additions & 2 deletions apps/site/pages/en/about/branding.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -76,7 +76,7 @@ Credit to [Angela Angelini](https://www.linkedin.com/in/angeliningl/) for design
<img
alt="Node.js Light Stacked Logo"
src="/static/logos/nodejsStackedLight.svg"
className="rounded-xs h-[164px] w-[267px] bg-neutral-950 p-2 dark:bg-transparent"
className="h-[164px] w-[267px] rounded-xs bg-neutral-950 p-2 dark:bg-transparent"
width="267"
height="164"
/>
Expand Down Expand Up @@ -118,7 +118,7 @@ Credit to [Angela Angelini](https://www.linkedin.com/in/angeliningl/) for design
<img
alt="White JS Icons"
src="/static/logos/jsIconWhite.svg"
className="height-[80px] rounded-xs mx-auto w-[71px] bg-neutral-950 p-2 dark:bg-transparent"
className="height-[80px] mx-auto w-[71px] rounded-xs bg-neutral-950 p-2 dark:bg-transparent"
width="71"
height="80"
/>
Expand Down
10 changes: 10 additions & 0 deletions apps/site/pages/id/about/branding.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -21,6 +21,16 @@ Penghargaan kepada [Angela Angelini](https://www.linkedin.com/in/angeliningl/) a

## Logo Node.js®

### Logo Hex Node.js®

<img
alt="Node.js Hex Logo"
src="/static/logos/nodejsHex.svg"
className="w-[100px]"
width="100"
height="100"
/>

### Logo Horizontal Node.js®

<table>
Expand Down
46 changes: 46 additions & 0 deletions apps/site/pages/id/about/eol.mdx
Original file line number Diff line number Diff line change
@@ -0,0 +1,46 @@
---
title: End-Of-Life
layout: about
description: Memahami End-of-Life Node.js, apa dampaknya pada keamanan, toolchain, dan kepatuhan, serta detail versi EOL dan opsi dukungan komersial.
---

# End-Of-Life (EOL)

## Mengapa dan bagaimana rilis Node.js mencapai End-Of-Life

Versi mayor Node.js dirilis, diperbaiki, dan ditetapkan sebagai End-Of-Life mengikuti jadwal yang dapat diprediksi. Karena tidak memungkinkan untuk memelihara semua lini rilis selamanya, setelah periode pemeliharaan yang direncanakan, lini rilis mayor Node.js akan berhenti dipelihara oleh proyek.

<div className="flex flex-col items-start gap-4 xl:flex-row xl:items-center">
<Button kind="primary" href="/download" className="flex-1">
<span>Tingkatkan ke Node.js® LTS terbaru</span>
</Button>

<span>atau</span>

<Button as="a" kind="warning" href="#commercial-support" className="flex-1">
<span>Dapatkan dukungan keamanan untuk versi EOL</span>
</Button>
</div>

[Lihat jadwal rilis Node.js](/about/releases/).

## Apa yang Terjadi Ketika Suatu Lini Rilis Mencapai EOL

Saat suatu versi mencapai End-Of-Life, artinya versi tersebut tidak lagi menerima pembaruan, termasuk tambalan keamanan. Ini dapat membuat aplikasi yang berjalan pada versi tersebut rentan terhadap masalah keamanan dan bug yang tidak akan pernah diperbaiki.

- **Tidak ada lagi perbaikan kerentanan**: Ketika rilis keamanan baru mengungkap masalah dan tambalan pada lini mayor yang lebih baru, meskipun kerentanan yang sama memengaruhi versi EOL, tidak akan ada rilis baru untuk mereka. Pengguna yang tetap bertahan di versi EOL dan menggunakan jalur kode yang terdampak akan langsung rentan terhadap serangan yang memanfaatkan kerentanan tersebut.
- **Kerusakan pada toolchain**: Versi EOL mungkin tidak lagi dapat melakukan dynamic linking dengan versi pustaka bersama yang lebih baru yang menjadi dependensinya, yang dapat menghambat atau merusak pembaruan sistem.
- **Perubahan ekosistem**: Banyak paket user-land populer menghentikan dukungan untuk versi Node.js yang sudah EOL dari waktu ke waktu. Ketika suatu aplikasi tetap menggunakan paket yang sudah kedaluwarsa, aplikasi tersebut dapat mengalami lebih banyak kerentanan dan bug yang tidak diperbaiki, semakin menjauhi standar ekosistem.
- **Masalah kepatuhan**: Banyak audit industri melarang penggunaan runtime yang tidak dipelihara.

## Versi EOL

<EOLReleaseTable />

## Dukungan Komersial

Meskipun penggunaan versi EOL memiliki banyak kelemahan, dalam praktiknya banyak organisasi menghadapi batasan yang mencegah peningkatan versi secara langsung, seperti kode warisan (legacy), kebutuhan kepatuhan, atau rantai dependensi yang kompleks. Melalui [OpenJS Foundation Ecosystem Sustainability Program](https://openjsf.org/blog/ecosystem-sustainability-program), Node.js mendapatkan dukungan dari HeroDevs dan NodeSource untuk menyediakan layanan komersial dalam bentuk perbaikan keamanan.

HeroDevs menyediakan [Never-Ending Support (NES)](https://nodejs.org/esp/herodevs) untuk versi Node.js yang telah melewati fase pemeliharaan resmi. Ini mencakup tambalan keamanan, bantuan kepatuhan, dan dukungan teknis untuk menjembatani kebutuhanmu sambil kamu merencanakan strategi peningkatan.

Menggunakan versi EOL melalui dukungan komersial harus dianggap sebagai solusi sementara — tujuan utama tetap untuk meningkatkan ke versi yang masih didukung secara aktif.
1 change: 1 addition & 0 deletions apps/site/pages/id/about/get-involved/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -31,4 +31,5 @@ Perlu diperhatikan bahwa proyek Node.js tidak secara resmi mendukung forum-forum

- [Node Slackers](https://www.nodeslackers.com/) adalah komunitas Slack yang berfokus pada Node.js.
- [OpenJSF Slack](https://slack-invite.openjsf.org/) adalah ruang kerja Slack untuk OpenJS Foundation. Ada beberapa saluran yang terkait dengan Node.js. _(saluran yang diawali dengan `#nodejs-` terkait dengan proyek)_
- [r/node](https://www.reddit.com/r/node/) adalah subreddit yang berfokus pada Node.js.
- Untuk IRC, buka `irc.libera.chat` di saluran `#node.js` dengan [klien IRC](https://en.wikipedia.org/wiki/Comparison_of_Internet_Relay_Chat_clients) atau sambungkan di browser web Anda ke saluran menggunakan [klien web](https://kiwiirc.com/nextclient/).
50 changes: 50 additions & 0 deletions apps/site/pages/id/about/partners.mdx
Original file line number Diff line number Diff line change
@@ -0,0 +1,50 @@
---
title: Mitra & Pendukung
layout: about
---

# Mitra & Pendukung

Komunitas Node.js diperkaya oleh jaringan mitra yang beragam yang berkontribusi
dalam berbagai cara. Melalui kolaborasi ini, kami menjaga infrastruktur yang tangguh,
memperkuat keamanan, mendorong rilis baru, dan menumbuhkan ekosistem kami secara berkelanjutan.

Kami berterima kasih atas dukungan para mitra, yang memainkan peran penting dalam keberhasilan
dan pengembangan berkelanjutan dari Node.js.

## Infrastruktur

...

<PartnersLogoList categories="infrastruktur" maxLength={null} sort="nama" />

## Pendukung

Pendukung adalah individu dan organisasi yang memberikan dukungan finansial melalui
[OpenCollective](https://opencollective.com/nodejs) untuk proyek Node.js.

<WithSupporters />

## ## Ecosystem Sustainability Program (ESP)

Apakah kamu menjalankan versi Node.js yang sudah End-of-Life (EOL)?
Program **OpenJS Ecosystem Sustainability Program (ESP)** membantu organisasi dalam
memelihara aplikasi Node.js mereka yang berjalan pada versi EOL.
Program ini menyediakan akses ke tambalan keamanan, bantuan kepatuhan, dan dukungan teknis
untuk menjembatani kebutuhan sementara kamu merencanakan strategi peningkatan versi.Untuk informasi lebih lanjut mengenai versi End-of-Life, silakan kunjungi
[End-Of-Life Node.js Releases](/about/eol)

> Menggunakan rilis EOL melalui dukungan komersial harus dianggap sebagai solusi sementara. Tujuan utama tetap harus meningkatkan ke versi yang masih didukung secara aktif.

<PartnersLogoList categories="esp" maxLength={null} sort="name" />

## Menjadi Mitra

Jadilah mitra proyek Node.js dan bantu kami terus mengembangkan dan memelihara proyek ini.
Dukunganmu sangat penting untuk memastikan bahwa Node.js tetap menjadi platform yang andal dan aman
bagi para pengembang dan organisasi di seluruh dunia. Jika kamu tertarik untuk menjadi mitra,
silakan hubungi kami melalui OpenJS Foundation.

<div>
<Button href="https://openjsf.org/partners">Menjadi Mitra OpenJS</Button>
</div>
48 changes: 48 additions & 0 deletions apps/site/pages/id/about/previous-releases.mdx
Original file line number Diff line number Diff line change
@@ -0,0 +1,48 @@
---
title: Rilisan Node.js
layout: about
---

# Rilisan Node.js

<EOLAlertBox />

Versi Node.js utama memasuki status rilis saat ini selama enam bulan, yang memberikan waktu bagi penulis perpustakaan untuk menambahkan dukungan untuk versi tersebut. Setelah enam bulan, rilis bernomor ganjil (9, 11, dst.) menjadi tidak didukung, dan rilis bernomor genap (10, 12, dst.) berpindah ke status LTS Aktif dan siap untuk penggunaan umum. Status rilis LTS adalah "dukungan jangka panjang", yang biasanya menjamin bahwa bug kritis akan diperbaiki selama total 30 bulan. Aplikasi produksi hanya boleh menggunakan rilis LTS Aktif atau LTS Pemeliharaan.

## Release Schedule

![Releases](https://raw.githubusercontent.com/nodejs/Release/main/schedule.svg?sanitize=true)

Detail lengkap mengenai jadwal rilis Node.js tersedia [di GitHub](https://github.com/nodejs/release#release-schedule).

## Mencari rilis terbaru dari cabang versi?

<PreviousReleasesTable />

## Metode Instalasi Resmi vs. Komunitas

Situs web Node.js menyediakan beberapa metode instalasi non-interaktif, termasuk antarmuka baris perintah (CLI), manajer paket sistem operasi (OS) (misalnya, `brew`), dan manajer versi Node.js (misalnya, `nvm`).

Untuk menyoroti dan mempromosikan kontribusi komunitas, proyek Node.js memperkenalkan halaman Unduhan yang telah direvisi yang mengkategorikan metode instalasi sebagai "Resmi" atau "Komunitas." Hal ini memberikan fleksibilitas dan pilihan yang lebih besar kepada pengguna. Untuk memastikan kejelasan, kami telah menetapkan kriteria untuk setiap kategori.

### Metode Instalasi Resmi

Metode instalasi yang ditetapkan sebagai “Resmi” harus memenuhi persyaratan berikut:

| Persyaratan (Metode Instalasi Resmi) |
| :----------------------------------------------------------------------------------------------------------------------------------- |
| Rilis Node.js baru harus tersedia bersamaan dengan rilis resmi. |
| Pengelola proyek harus memiliki hubungan dekat dengan proyek Node.js, termasuk saluran komunikasi langsung. |
| Metode instalasi harus unduhan biner resmi yang dibundel oleh proyek Node.js. |
| Metode instalasi tidak boleh dibuild dari sumber, jika biner yang telah dibuild tersedia, dan tidak boleh pula mengubah biner resmi. |

### Metode Instalasi Komunitas

Metode instalasi komunitas yang disertakan pada halaman unduhan swalayan (/download) juga harus mematuhi serangkaian kriteria minimum:

- **Dukungan Versi:** Harus mendukung semua versi Node.js yang saat ini didukung, bukan versi End-of-Life (EOL).
- **Kompatibilitas OS:** Harus berfungsi pada setidaknya satu Sistem Operasi (OS) yang didukung secara resmi.
- **Dukungan OS yang Luas:** Tidak dapat dibatasi pada sebagian distribusi atau versi OS.
- Misalnya, metode instalasi yang mengklaim kompatibilitas dengan “Windows” harus berfungsi pada “Windows 10”, “Windows 11”, dan semua edisinya (termasuk versi server).
- Demikian pula, metode instalasi yang mengklaim kompatibilitas dengan "Linux" harus dapat diinstal pada semua distribusi Linux utama, bukan hanya sebagian kecil saja. Metode ini tidak dapat bergantung pada pengelola paket khusus distribusi seperti `apt` atau `dnf`.
- **Gratis dan Sumber Terbuka:** Harus gratis digunakan dan bersumber terbuka, tidak boleh dijual sebagai produk komersial, dan tidak boleh menjadi layanan berbayar.
Loading
Loading