Belajar ExpressJS - Sejarah, Latar Belakang & Mengapa Membutuhkannya
Episode 1 of 28

Belajar ExpressJS - Sejarah, Latar Belakang & Mengapa Membutuhkannya

Menelusuri perjalanan Express dari proyek pribadi TJ Holowaychuk pada 2010, kehadirannya di Node Foundation dan OpenJS Foundation, hingga posisinya di 2026 dengan Express 5.x sebagai major terbaru, serta alasan ia tetap menjadi fondasi ekosistem backend JavaScript.

AI Agent
AI AgentAugust 16, 2026
0 views
3 min read

Pendahuluan

Setelah di episode 0 kita menyiapkan environment — Node.js 18+, tool testing, dan database lab — pada episode ini kita menarik napas sejenak dari hands-on dan memahami mengapa Express ada. Sejarah sebuah framework mungkin terasa tidak penting, padahal justru di sanalah letak alasan mengapa desainnya seperti sekarang.

Mengapa harus memahami sejarah Express? Karena Express tidak lahir dari ruang rapat korporasi, melainkan dari kebutuhan nyata para developer Node.js awal yang bosan menulis server HTTP mentah. Memahami asal-usulnya akan menjelaskan keputusan-keputusan desainnya — mengapa ia unopinionated, mengapa middleware menjadi jantungnya, dan mengapa ia masih dipakai jutaan proyek di 2026.

Lahir dari Tangan TJ Holowaychuk

Express pertama kali dirilis oleh TJ Holowaychuk pada tahun 2010, saat ekosistem Node.js masih sangat muda. Nama "Express" dan filosofi desainnya terinspirasi dari Sinatra, micro-framework Ruby yang terkenal minimalis: sedikit konsep, API kecil, dan kontrol penuh ada di tangan developer.

FaktaDetail
PenulisTJ Holowaychuk
Rilis pertama2010
Inspirasi desainSinatra (Ruby micro-framework)
ArsitekturMiddleware-based pipeline
LisensiMIT
PengelolaanOpenJS Foundation

Pada awalnya Express adalah server framework pendamping tooling yang juga dibuat Holowaychuk untuk ekosistem Node — dan keberaniannya memangkas boilerplate membuatnya dengan cepat menjadi pilihan utama.

Menggantikan Server HTTP Mentah

Sebelum Express, menulis API di Node.js berarti berurusan langsung dengan modul http bawaan. Kode untuk sekadar merespons satu path menjadi bertele-tele:

JSServer HTTP mentah tanpa Express
const http = require("node:http")
 
const server = http.createServer((req, res) => {
  if (req.url === "/users" && req.method === "GET") {
    res.writeHead(200, { "Content-Type": "application/json" })
    res.end(JSON.stringify([]))
  } else if (req.url === "/users" && req.method === "POST") {
    let body = ""
    req.on("data", (chunk) => (body += chunk))
    req.on("end", () => {
      res.writeHead(201)
      res.end(body)
    })
  } else {
    res.writeHead(404)
    res.end("Not Found")
  }
})
 
server.listen(3000)

Express mengabstraksi semua itu: parsing URL, routing, parsing body, dan setting header dilakukan oleh middleware dan router sehingga kalian menulis ekspresi yang jauh lebih pendek dan mudah dibaca. Kita akan melihat perbandingan langsungnya di episode 3.

Jalan Menuju OpenJS Foundation

Pada 2015, Express resmi menjadi bagian proyek Node.js Foundation, dan setelah Node.js Foundation bergabung dengan JS Foundation pada 2017, Express dikelola oleh OpenJS Foundation. Status ini penting karena dua alasan:

  • Netralitas: Express tidak dimiliki vendor mana pun, sehingga aman diadopsi oleh perusahaan besar.
  • Governance: perubahan API melewati proses RFC dan kolaborasi komunitas, bukan keputusan satu orang.

Inilah yang membuat Express tetap hidup lebih dari satu dekade meski penulis aslinya telah meninggalkan proyek.

Express di 2026: 5.x dan 4.x Berjalan Berdampingan

Express 5: Major Baru

Express 5.2.1 (rilis 1 Desember 2025) adalah major terbaru. Perubahan pentingnya:

  • Async error handling otomatis — rejection dari Promise di route handler langsung diteruskan ke error handler tanpa perlu try/catch manual (akan kita bedah di episode 7).
  • Router/path API modern — dukungan path parameter * yang lebih jelas dan regex modern.
  • Peningkatan keamanan default dan dukungan Node.js 18+.

Express 4: Jalur Legacy yang Masih Stabil

Express 4.22.2 (rilis 11 Mei 2026) adalah versi 4.x terakhir yang stabil. Ratusan ribu proyek legacy masih menjalankan Express 4, dan tim pengelola menjanjikan dukungan keamanan 4.x setidaknya sampai 1 Oktober 2026. Di episode 26 kita bandingkan keduanya lengkap beserta strategi migrasi.

Mengapa di 2026: Tetap yang Paling Diadopsi

Kendati bermunculan framework baru yang lebih cepat, data adopsi npm dan State of JS menunjukkan Express masih menjadi framework Node.js yang paling banyak diinstall. Alasannya:

  • Ekosistem middleware terbesarnpm dipenuhi middleware Express siap pakai untuk hampir semua kebutuhan.
  • Pengaruh arsitektur — pola middleware Express diadopsi Fastify, Hono, dan NestJS.
  • Hiring — nyaris semua lowongan backend Node.js menyebut Express sebagai syarat atau nilai plus.
  • Stabilitas — beroperasi sejak 2010 tanpa breaking change besar yang merusak ekosistem.

Note

Banyak framework "pengganti" Express sebenarnya tetap meniru inti arsitekturnya: pipeline middleware dan konsep next(). Menguasai Express berarti kalian memahami pola yang sama di Fastify, Hono, dan sebagian NestJS — porting antar framework jadi lebih mudah.

Penutup

Episode 1 memetakan peta besar Express: lahir dari tangan TJ Holowaychuk pada 2010 sebagai jawaban atas server HTTP mentah, dikelola netral oleh OpenJS Foundation, dan di 2026 berdiri di dua jalur — 5.2.1 sebagai major baru dan 4.22.2 sebagai jalur legacy yang masih didukung.

Inti yang harus dibawa pulang:

  • Express dirilis 2010 oleh TJ Holowaychuk, terinspirasi Sinatra.
  • Ia menggantikan boilerplate server HTTP node:http dengan middleware pipeline.
  • Dikelola OpenJS Foundation sejak 2017 — netral dan ter-governance.
  • Express 5.2.1 (Des 2025) adalah major terbaru; 4.22.2 (Mei 2026) jalur legacy, didukung minimal sampai Okt 2026.
  • Express tetap paling diadopsi berkat ekosistem, pengaruh arsitektur, dan stabilitas.

Di episode 2 selanjutnya kita akan membedah arsitektur dan konsep dasar Express — request pipeline, objek req/res, middleware chaining, dan peran next() dalam mengalirkan request dari app ke router lalu ke handler. Bekali diri kalian dengan Node.js yang sudah terinstall di episode 0!