Ini adalah fitur baru dari NPM yang disebut 'paket scoped', yang secara efektif memungkinkan paket NPM untuk di-namespace. Setiap pengguna dan organisasi di NPM memiliki cakupannya sendiri, dan mereka adalah satu-satunya orang yang dapat menambahkan paket ke dalamnya.
Ini berguna karena beberapa alasan:
- Ini memungkinkan organisasi untuk memperjelas paket mana yang 'resmi' dan mana yang tidak.
- Misalnya, jika suatu paket memiliki cakupan
@angular
, Anda tahu itu diterbitkan oleh tim inti Angular.
- Nama paket hanya harus unik dengan cakupannya yang dipublikasikan, bukan seluruh registri.
- Sebagai contoh, nama paket
http
sudah diambil di repositori utama, tetapi Angular juga bisa memilikinya @angular/http
.
Alasan mengapa paket scoped tidak muncul dalam pencarian publik adalah karena banyak dari mereka adalah paket pribadi yang dibuat oleh organisasi yang menggunakan layanan berbayar NPM, dan mereka tidak nyaman membuka pencarian sampai mereka benar-benar yakin mereka tidak akan membuat publik apa pun yang tidak boleh publik - dari perspektif hukum, ini cukup dimengerti.
Untuk informasi lebih lanjut, lihat NPM docs dan Angular docs .
EDIT: Tampaknya paket lingkup publik sekarang muncul dengan benar dalam pencarian!
npm help scope