Monday

18-08-2025 Vol 19

Publish Your First NPM Package

Cara Memublikasikan Paket NPM Pertama Anda: Panduan Langkah demi Langkah

Selamat! Anda telah membuat kode yang luar biasa dan siap untuk membagikannya dengan dunia. Memublikasikan paket NPM pertama Anda bisa jadi sedikit menakutkan, tetapi dengan panduan yang tepat, prosesnya cukup mudah. Artikel ini akan memandu Anda melalui setiap langkah, dari menyiapkan akun NPM Anda hingga memverifikasi bahwa paket Anda berfungsi dengan benar.

Mengapa Memublikasikan Paket NPM?

Sebelum kita mulai, mari kita bahas mengapa memublikasikan paket NPM adalah ide yang bagus:

  1. Berbagi Kode: Cara terbaik untuk berbagi kode yang dapat digunakan kembali dengan pengembang lain.
  2. Kontribusi ke Ekosistem: Membantu memperkaya ekosistem JavaScript dan Node.js.
  3. Penggunaan Ulang Kode: Memudahkan penggunaan kode Anda sendiri di beberapa proyek tanpa perlu menyalin dan menempel.
  4. Pengakuan: Mendapatkan pengakuan atas kerja keras Anda dan membangun reputasi sebagai pengembang.
  5. Kolaborasi: Memungkinkan kolaborasi yang lebih mudah dengan pengembang lain dalam proyek sumber terbuka.

Prasyarat

Sebelum memulai, pastikan Anda memiliki hal-hal berikut:

  1. Node.js dan NPM terinstal: Pastikan Anda memiliki Node.js dan NPM (Node Package Manager) terinstal di sistem Anda. Anda dapat mengunduhnya dari situs web resmi Node.js. Biasanya, NPM sudah terpasang saat Anda menginstal Node.js.
  2. Akun NPM: Anda memerlukan akun NPM untuk memublikasikan paket Anda. Jika Anda belum punya, buatlah akun di situs web NPM (npmjs.com).
  3. Kode yang ingin Anda publikasikan: Anda sudah memiliki kode JavaScript yang berfungsi yang ingin Anda bagikan sebagai paket NPM.

Kerangka Posting Blog: Memublikasikan Paket NPM Pertama Anda

  1. Pengantar:
    • Menjelaskan tujuan artikel: Memandu pembaca melalui proses memublikasikan paket NPM.
    • Menjelaskan manfaat memublikasikan paket NPM.
  2. Prasyarat:
    • Node.js dan NPM terinstal.
    • Akun NPM.
    • Kode yang ingin Anda publikasikan.
  3. Langkah 1: Menyiapkan Proyek Anda:
    • Membuat direktori proyek baru.
    • Menginisialisasi proyek dengan npm init.
    • Mengatur metadata paket (nama, deskripsi, versi, dll.).
    • Struktur direktori proyek yang disarankan.
  4. Langkah 2: Membuat Kode Paket Anda:
    • Menulis kode JavaScript Anda.
    • Menambahkan komentar dan dokumentasi yang jelas.
    • Membuat berkas index.js atau titik masuk utama lainnya.
  5. Langkah 3: Membuat Berkas package.json:
    • Penjelasan detail tentang package.json dan setiap bidangnya (name, version, description, main, scripts, keywords, author, license, dependencies, devDependencies, repository, bugs, homepage).
    • Contoh berkas package.json.
  6. Langkah 4: Menambahkan Berkas .npmignore:
    • Penjelasan tentang berkas .npmignore dan fungsinya.
    • Berkas dan folder yang umum diabaikan (node_modules, .git, berkas konfigurasi pribadi).
    • Contoh berkas .npmignore.
  7. Langkah 5: Menguji Paket Anda Secara Lokal:
    • Cara menginstal dan menguji paket Anda secara lokal menggunakan npm install atau npm link.
    • Menulis pengujian unit untuk memastikan kode Anda berfungsi seperti yang diharapkan.
  8. Langkah 6: Masuk ke NPM:
    • Cara masuk ke akun NPM Anda melalui baris perintah menggunakan npm login.
    • Menangani otentikasi dua faktor (jika diaktifkan).
  9. Langkah 7: Menerbitkan Paket Anda:
    • Menjalankan perintah npm publish.
    • Memahami tag --access public (jika Anda ingin memublikasikan paket publik).
    • Memecahkan masalah kesalahan penerbitan.
  10. Langkah 8: Memverifikasi Publikasi:
    • Mencari paket Anda di situs web NPM.
    • Menginstal paket Anda di proyek baru untuk memastikan semuanya berfungsi.
  11. Praktik Terbaik:
    • Menggunakan kontrol versi (Git).
    • Menulis dokumentasi yang jelas dan ringkas.
    • Mengikuti pedoman semantik untuk versi paket.
    • Menambahkan lisensi ke paket Anda.
    • Menulis pengujian unit.
  12. Kesimpulan:
    • Ringkasan langkah-langkah yang terlibat dalam memublikasikan paket NPM.
    • Dorongan untuk pembaca untuk memublikasikan paket mereka dan berkontribusi ke komunitas.

Langkah 1: Menyiapkan Proyek Anda

Langkah pertama adalah menyiapkan proyek Anda. Ini melibatkan pembuatan direktori proyek baru dan menginisialisasinya dengan NPM.

Membuat Direktori Proyek Baru

Buat direktori baru untuk proyek Anda menggunakan baris perintah:


mkdir my-first-npm-package
cd my-first-npm-package

Menginisialisasi Proyek dengan npm init

Jalankan perintah npm init di dalam direktori proyek Anda. Ini akan memandu Anda melalui serangkaian pertanyaan untuk mengatur metadata paket Anda.


npm init

Anda akan diminta untuk memasukkan informasi seperti nama paket, versi, deskripsi, titik masuk, perintah pengujian, repositori Git, kata kunci, penulis, dan lisensi. Anda dapat menerima nilai default dengan menekan Enter atau memasukkan nilai Anda sendiri.

Setelah selesai, NPM akan membuat berkas package.json di direktori proyek Anda.

Mengatur Metadata Paket

Berikut penjelasan tentang bidang-bidang kunci dalam berkas package.json:

  • name: Nama paket Anda. Ini harus unik di NPM.
  • version: Versi paket Anda. Ikuti semantik versi (SemVer).
  • description: Deskripsi singkat tentang paket Anda. Ini akan ditampilkan di situs web NPM.
  • main: Titik masuk utama ke paket Anda. Biasanya index.js.
  • scripts: Perintah yang dapat Anda jalankan menggunakan NPM. Contohnya, test, start, dan build.
  • keywords: Array kata kunci yang membantu orang menemukan paket Anda di NPM.
  • author: Nama dan informasi kontak Anda.
  • license: Lisensi yang Anda gunakan untuk paket Anda. Umumnya, gunakan lisensi sumber terbuka seperti MIT atau Apache 2.0.

Struktur Direktori Proyek yang Disarankan

Berikut adalah struktur direktori proyek yang disarankan:


my-first-npm-package/
├── index.js # Titik masuk utama
├── README.md # Berkas README dengan dokumentasi
├── LICENSE # Berkas lisensi
├── package.json # Metadata paket
└── .npmignore # Berkas untuk mengecualikan berkas dari publikasi

Langkah 2: Membuat Kode Paket Anda

Sekarang saatnya untuk menulis kode JavaScript Anda. Pastikan kode Anda bersih, terorganisir dengan baik, dan terdokumentasi dengan baik.

Menulis Kode JavaScript Anda

Buat berkas index.js (atau apa pun yang Anda tetapkan sebagai titik masuk utama Anda di package.json) dan tulis kode JavaScript Anda. Misalnya, katakanlah Anda ingin membuat paket yang mengembalikan pesan sapaan:

index.js:

    
    /**
     * Mengembalikan pesan sapaan.
     *
     * @param {string} name Nama orang yang akan disapa.
     * @returns {string} Pesan sapaan.
     */
    function greet(name) {
      return `Halo, ${name}! Selamat datang di dunia NPM!`;
    }

    module.exports = greet;
    
  

Menambahkan Komentar dan Dokumentasi yang Jelas

Pastikan untuk menambahkan komentar yang jelas dan dokumentasi ke kode Anda. Ini akan membantu pengembang lain memahami cara menggunakan paket Anda.

Membuat Berkas index.js atau Titik Masuk Utama Lainnya

Pastikan berkas index.js (atau berkas titik masuk utama Anda) mengekspor fungsi atau variabel yang ingin Anda ekspos ke pengembang lain.

Langkah 3: Membuat Berkas package.json

Berkas package.json adalah jantung dari setiap paket NPM. Ini berisi metadata tentang paket Anda, termasuk nama, versi, deskripsi, dan dependensi.

Penjelasan Detail tentang package.json

Berikut adalah penjelasan detail tentang setiap bidang dalam berkas package.json:

  • name: Nama paket. Harus unik di NPM dan hanya boleh berisi karakter alfanumerik, tanda hubung, dan garis bawah.
  • version: Versi paket menggunakan semantik versi (SemVer). Formatnya adalah major.minor.patch (contoh: 1.0.0).
  • description: Deskripsi singkat tentang paket Anda. Ini ditampilkan di situs web NPM dan digunakan untuk pencarian.
  • main: Titik masuk utama ke paket Anda. Ini adalah berkas yang akan diimpor saat pengguna require() atau import paket Anda.
  • scripts: Objek yang berisi perintah skrip yang dapat Anda jalankan menggunakan npm run [script-name]. Contohnya:
    • "test": "jest": Menjalankan pengujian unit menggunakan Jest.
    • "start": "node index.js": Menjalankan aplikasi Node.js.
    • "build": "webpack": Membangun aplikasi menggunakan Webpack.
  • keywords: Array kata kunci yang terkait dengan paket Anda. Ini membantu orang menemukan paket Anda di NPM.
  • author: Nama dan informasi kontak penulis paket.
  • license: Lisensi yang digunakan untuk paket. Lisensi sumber terbuka populer termasuk MIT, Apache 2.0, dan GPL.
  • dependencies: Objek yang berisi daftar dependensi paket Anda. Ini adalah paket yang diperlukan paket Anda untuk berfungsi. Formatnya adalah "package-name": "version".
  • devDependencies: Objek yang berisi daftar dependensi pengembangan paket Anda. Ini adalah paket yang hanya diperlukan selama pengembangan, seperti alat pengujian dan pembangun.
  • repository: Objek yang berisi informasi tentang repositori Git paket Anda. Ini membantu orang menemukan kode sumber paket Anda.
  • bugs: Objek yang berisi informasi tentang cara melaporkan bug di paket Anda.
  • homepage: URL ke situs web rumah paket Anda.

Contoh Berkas package.json

    
    {
      "name": "my-first-npm-package",
      "version": "1.0.0",
      "description": "Paket NPM pertama saya yang menyapa pengguna.",
      "main": "index.js",
      "scripts": {
        "test": "echo \"Error: no test specified\" && exit 1"
      },
      "keywords": [
        "greeting",
        "npm",
        "package"
      ],
      "author": "Nama Anda",
      "license": "MIT",
      "repository": {
        "type": "git",
        "url": "https://github.com/username/my-first-npm-package.git"
      },
      "bugs": {
        "url": "https://github.com/username/my-first-npm-package/issues"
      },
      "homepage": "https://github.com/username/my-first-npm-package#readme"
    }
    
  

Langkah 4: Menambahkan Berkas .npmignore

Berkas .npmignore digunakan untuk menentukan berkas dan folder yang harus dikecualikan dari paket NPM Anda. Ini membantu mengurangi ukuran paket Anda dan mencegah berkas sensitif agar tidak dipublikasikan.

Penjelasan tentang Berkas .npmignore dan Fungsinya

Berkas .npmignore berfungsi mirip dengan berkas .gitignore. Ini berisi daftar pola yang cocok dengan berkas dan folder yang harus diabaikan oleh NPM saat menerbitkan paket Anda. Setiap baris dalam berkas .npmignore menentukan pola, dan pola tersebut relatif terhadap direktori proyek Anda.

Berkas dan Folder yang Umum Diabaikan

Berikut adalah beberapa berkas dan folder yang umum diabaikan dalam berkas .npmignore:

  • node_modules: Folder ini berisi dependensi proyek Anda. Tidak perlu memasukkan ini dalam paket Anda, karena pengguna akan menginstal dependensi mereka sendiri.
  • .git: Folder ini berisi repositori Git Anda. Tidak perlu memasukkan ini dalam paket Anda.
  • Berkas konfigurasi pribadi (misalnya, .env, config.js): Berkas ini seringkali berisi informasi sensitif, seperti kunci API dan kata sandi. Anda tidak boleh memasukkan berkas ini dalam paket Anda.
  • Berkas log: Berkas log berisi informasi tentang kinerja aplikasi Anda. Tidak perlu memasukkan ini dalam paket Anda.
  • Berkas sementara: Berkas sementara digunakan oleh aplikasi Anda. Tidak perlu memasukkan ini dalam paket Anda.

Contoh Berkas .npmignore

    
    node_modules/
    .git/
    .env
    config.js
    *.log
    tmp/
    
  

Langkah 5: Menguji Paket Anda Secara Lokal

Sebelum Anda memublikasikan paket Anda, penting untuk mengujinya secara lokal untuk memastikan semuanya berfungsi seperti yang diharapkan.

Cara Menginstal dan Menguji Paket Anda Secara Lokal

Ada dua cara untuk menginstal dan menguji paket Anda secara lokal:

  • npm install: Anda dapat menggunakan perintah npm install untuk menginstal paket Anda dari sistem file lokal. Untuk melakukan ini, navigasikan ke direktori proyek Anda di baris perintah dan jalankan perintah berikut:
  • npm install .

  • npm link: Anda dapat menggunakan perintah npm link untuk membuat tautan simbolik ke paket Anda di direktori node_modules global. Ini memungkinkan Anda untuk menggunakan paket Anda di proyek lain tanpa harus memublikasikannya ke NPM. Untuk melakukan ini, navigasikan ke direktori proyek Anda di baris perintah dan jalankan perintah berikut:
  • npm link

    Kemudian, di proyek lain Anda, jalankan:

    npm link my-first-npm-package

Menulis Pengujian Unit

Sangat disarankan untuk menulis pengujian unit untuk memastikan kode Anda berfungsi seperti yang diharapkan. Anda dapat menggunakan kerangka kerja pengujian seperti Jest atau Mocha untuk menulis pengujian unit.

Contoh pengujian unit menggunakan Jest:

index.test.js:

    
    const greet = require('./index');

    test('greet returns a greeting message', () => {
      expect(greet('World')).toBe('Halo, World! Selamat datang di dunia NPM!');
    });
    
  

Untuk menjalankan pengujian, tambahkan skrip pengujian ke berkas package.json Anda:

    
    {
      "scripts": {
        "test": "jest"
      }
    }
    
  

Kemudian, jalankan perintah npm test di baris perintah.

Langkah 6: Masuk ke NPM

Sebelum Anda dapat memublikasikan paket Anda ke NPM, Anda perlu masuk ke akun NPM Anda.

Cara Masuk ke Akun NPM Anda

Buka terminal atau baris perintah Anda dan jalankan perintah berikut:


npm login

Anda akan diminta untuk memasukkan nama pengguna, kata sandi, dan alamat email Anda. Setelah Anda memasukkan informasi ini, Anda akan berhasil masuk ke akun NPM Anda.

Menangani Otentikasi Dua Faktor

Jika Anda telah mengaktifkan otentikasi dua faktor (2FA) untuk akun NPM Anda, Anda akan diminta untuk memasukkan kode otentikasi dari aplikasi autentikasi Anda.

Langkah 7: Menerbitkan Paket Anda

Setelah Anda masuk ke akun NPM Anda, Anda dapat memublikasikan paket Anda.

Menjalankan Perintah npm publish

Navigasikan ke direktori proyek Anda di baris perintah dan jalankan perintah berikut:


npm publish

NPM akan mengunggah paket Anda ke registri NPM.

Memahami Tag --access public

Jika Anda ingin memublikasikan paket publik (yang dapat diakses oleh siapa saja), pastikan untuk menambahkan tag --access public ke perintah npm publish:


npm publish --access public

Jika Anda tidak menyertakan tag ini, paket Anda akan dipublikasikan sebagai paket pribadi secara default. Paket pribadi hanya dapat diakses oleh Anda dan kolaborator yang telah Anda undang.

Memecahkan Masalah Kesalahan Penerbitan

Terkadang, Anda mungkin mengalami kesalahan saat menerbitkan paket Anda. Berikut adalah beberapa kesalahan umum dan cara memperbaikinya:

  • Nama paket sudah ada: Jika nama paket yang Anda coba publikasikan sudah ada di NPM, Anda perlu memilih nama yang berbeda.
  • Anda tidak memiliki izin untuk menerbitkan paket ini: Jika Anda mencoba memublikasikan paket dengan nama yang sudah ada, dan Anda bukan pemilik atau kolaborator paket tersebut, Anda akan mendapatkan kesalahan ini.
  • Versi paket sudah dipublikasikan: Jika Anda mencoba memublikasikan versi paket yang sudah dipublikasikan, Anda perlu menaikkan versi paket di berkas package.json Anda.
  • Kesalahan otentikasi: Jika Anda tidak masuk ke akun NPM Anda, atau jika kredensial Anda tidak valid, Anda akan mendapatkan kesalahan otentikasi.

Langkah 8: Memverifikasi Publikasi

Setelah Anda memublikasikan paket Anda, penting untuk memverifikasi bahwa paket tersebut dipublikasikan dengan benar.

Mencari Paket Anda di Situs Web NPM

Buka situs web NPM (npmjs.com) dan cari paket Anda berdasarkan nama. Jika paket Anda dipublikasikan dengan benar, seharusnya muncul dalam hasil pencarian.

Menginstal Paket Anda di Proyek Baru

Buat proyek Node.js baru dan instal paket Anda menggunakan perintah npm install:


npm install my-first-npm-package

Kemudian, coba gunakan paket Anda dalam proyek Anda. Jika semuanya berfungsi seperti yang diharapkan, maka Anda telah berhasil memublikasikan paket NPM pertama Anda!

Praktik Terbaik

Berikut adalah beberapa praktik terbaik untuk memublikasikan paket NPM:

  • Gunakan kontrol versi (Git): Gunakan Git untuk melacak perubahan pada kode Anda dan untuk berkolaborasi dengan pengembang lain.
  • Tulis dokumentasi yang jelas dan ringkas: Dokumentasi yang baik penting bagi pengembang lain untuk memahami cara menggunakan paket Anda.
  • Ikuti pedoman semantik untuk versi paket: Gunakan semantik versi (SemVer) untuk menandai versi paket Anda. Ini membantu pengembang lain memahami jenis perubahan yang telah Anda buat.
  • Tambahkan lisensi ke paket Anda: Tambahkan lisensi sumber terbuka seperti MIT atau Apache 2.0 ke paket Anda. Ini memberi pengembang lain izin untuk menggunakan dan memodifikasi kode Anda.
  • Tulis pengujian unit: Pengujian unit membantu memastikan bahwa kode Anda berfungsi seperti yang diharapkan.

Kesimpulan

Memublikasikan paket NPM pertama Anda adalah pencapaian yang luar biasa! Ini memungkinkan Anda untuk berbagi kode Anda dengan dunia, berkontribusi ke ekosistem JavaScript, dan membangun reputasi sebagai pengembang. Dengan mengikuti langkah-langkah dalam panduan ini, Anda seharusnya dapat memublikasikan paket NPM pertama Anda dengan mudah.

Jadi, jangan ragu! Publikasikan paket Anda dan bagikan karya Anda dengan dunia!

“`

omcoding

Leave a Reply

Your email address will not be published. Required fields are marked *