npmjs-user
Version:
Ambil detail pengguna NPM termasuk paket dan Gravatar
106 lines (87 loc) • 3.22 kB
Markdown
# **npmjs-user**
📦 **Ambil informasi profil pengguna NPM termasuk email, avatar, Gravatar, dan daftar paketnya.**
  
## **📌 Instalasi**
Pasang package menggunakan npm atau yarn:
```sh
npm install npmjs-user
```
atau
```sh
yarn add npmjs-user
```
## **🚀 Penggunaan**
Gunakan fungsi `npmUser(username)` untuk mendapatkan informasi pengguna NPM berdasarkan username.
### **Contoh Penggunaan:**
```js
import npmUser from '@yanamiku/npm-user';
npmUser('yanamiku')
.then(data => console.log(data))
.catch(err => console.error('Error:', err.message));
```
### **Hasil Output (Contoh)**
```json
{
"name": "Yanamiku",
"avatar": "https://www.npmjs.com/npm-avatar/example.png",
"email": "user@example.com",
"gravatar": "https://www.gravatar.com/avatar/5d41402abc4b2a76b9719d911017c592?s=512&d=identicon",
"github": "yanamiku",
"twitter": "yanamiku_dev",
"packages": [
{
"name": "some-package",
"weeklyDownloads": 1234
},
{
"name": "another-package",
"weeklyDownloads": 5678
}
]
}
```
## **📚 API**
Fungsi `npmUser(username)` mengembalikan **Promise** yang berisi informasi pengguna NPM dalam bentuk objek dengan properti berikut:
| Properti | Tipe Data | Deskripsi |
|---------------|----------|-----------|
| `name` | `string` | Nama pengguna di NPM (jika tersedia) |
| `avatar` | `string` | URL avatar dari NPM (jika tersedia) |
| `email` | `string` | Email pengguna (bisa `undefined` jika tidak tersedia) |
| `gravatar` | `string` | URL Gravatar berdasarkan email pengguna |
| `github` | `string` | Username GitHub pengguna (jika tersedia) |
| `twitter` | `string` | Username Twitter pengguna (jika tersedia) |
| `packages` | `array` | Daftar paket yang dimiliki pengguna, termasuk jumlah unduhan mingguan |
## **🛠 Fitur**
✅ Mengambil informasi pengguna dari halaman profil NPM
✅ Mendapatkan email pengguna (jika tersedia)
✅ Mendapatkan avatar dan Gravatar pengguna
✅ Mendapatkan daftar paket yang dimiliki beserta jumlah unduhan mingguan
## **⚡ Contoh Implementasi**
### **1️⃣ Menampilkan Data Pengguna**
```js
import npmUser from '@yanamiku/npm-user';
async function showUserProfile(username) {
try {
const userData = await npmUser(username);
console.log(`👤 Nama: ${userData.name}`);
console.log(`📧 Email: ${userData.email || 'Tidak tersedia'}`);
console.log(`📸 Avatar: ${userData.avatar}`);
console.log(`🔗 GitHub: ${userData.github || 'Tidak tersedia'}`);
console.log(`🐦 Twitter: ${userData.twitter || 'Tidak tersedia'}`);
console.log(`📦 Paket yang dimiliki:`);
userData.packages.forEach(pkg => {
console.log(` - ${pkg.name} (${pkg.weeklyDownloads} downloads/minggu)`);
});
} catch (error) {
console.error('Terjadi kesalahan:', error.message);
}
}
showUserProfile('yanamiku');
```
## **📜 Lisensi**
Kode ini dirilis di bawah lisensi **MIT**.