myanimelist-jikan
v1.0.0
Published
powerful Node.js wrapper for the Jikan.moe v4 API.
Downloads
12
Maintainers
Readme
MyAnimeList-Jikan
Wrapper Node.js yang kaya fitur, intuitif, dan tangguh untuk Jikan.moe v4 API.
Dibuat dengan ❤️ oleh tamaaxzcw.
Library ini menyediakan antarmuka yang bersih dan modern untuk berinteraksi dengan setiap endpoint dari Jikan API v4. Didesain untuk menjadi kuat, menangani masalah umum seperti rate limiting secara otomatis, dan memberikan pengalaman terbaik bagi developer.
✨ Fitur Utama
- ✅ Cakupan Penuh Jikan API v4: Akses data anime, manga, karakter, orang, klub, jadwal, dan banyak lagi.
- 🧠 Cerdas & Sederhana: API modern berbasis
async/awaityang mudah digunakan. - 🛡️ Penanganan Error yang Kuat: Memberikan pesan error yang jelas untuk masalah API dan validasi.
- ⚙️ Manajemen Rate Limit Otomatis: Secara otomatis menunggu dan mencoba kembali saat terkena rate limit dari Jikan.
- 🚀 Tanpa Dependensi: Ringan, cepat, dan tidak membebani proyekmu.
📥 Instalasi
Gunakan npm untuk menginstal paket ini:
npm install myanimelist-jikan🚀 Contoh Cepat
Impor klien dan mulailah membuat permintaan dengan mudah.
import jikan, { JikanEnums } from 'myanimelist-jikan';
// --- Contoh 1: Mendapatkan detail lengkap untuk anime "Frieren" (ID: 52991) ---
async function getFrierenDetails() {
try {
const response = await jikan.anime.getById(52991);
const frieren = response.data;
console.log(`Judul: ${frieren.title_english}`);
console.log(`Skor: ${frieren.score} ⭐`);
console.log(`Sinopsis: ${frieren.synopsis.substring(0, 150)}...`);
} catch (error) {
console.error("Oops, terjadi kesalahan:", error.message);
}
}
getFrierenDetails();
// --- Contoh 2: Mencari manga dengan parameter ---
async function searchManga() {
try {
const params = {
q: 'One Piece',
sfw: true,
limit: 5,
order_by: JikanEnums.OrderBy.MEMBERS,
sort: JikanEnums.SortOrder.DESC
};
const response = await jikan.manga.search(params);
console.log('\n--- Hasil Pencarian Manga ---');
response.data.forEach(manga => {
console.log(`- ${manga.title} (Anggota: ${manga.members.toLocaleString()})`);
});
} catch(error) {
console.error(error);
}
}
searchManga();📚 Dokumentasi API
Struktur wrapper ini sengaja dibuat untuk mencerminkan struktur Jikan API agar mudah dipahami.
jikan.animejikan.mangajikan.charactersjikan.peoplejikan.clubsjikan.genresjikan.magazinesjikan.producersjikan.seasonsjikan.topjikan.schedules
Setiap klien memiliki metode umum seperti getById(id), search(params), dan metode spesifik lainnya. Untuk daftar lengkap parameter pencarian dan struktur respons, silakan merujuk ke Dokumentasi Resmi Jikan API.
Contoh Lainnya
Mendapatkan Anime yang Sedang Tayang Musim Ini
import jikan from 'myanimelist-jikan';
async function getCurrentSeason() {
const nowAiring = await jikan.seasons.getNow();
console.log('--- Anime yang Sedang Tayang Musim Ini ---');
nowAiring.data.forEach(anime => console.log(`- ${anime.title}`));
}
getCurrentSeason();Mendapatkan Top Anime Berdasarkan Popularitas
import jikan from 'myanimelist-jikan';
async function getTopAnime() {
const topAnime = await jikan.top.search({ type: 'anime', filter: 'bypopularity', limit: 5 });
console.log('\n--- Top 5 Anime Terpopuler ---');
topAnime.data.forEach(anime => {
console.log(`#${anime.rank} - ${anime.title} (Skor: ${anime.score})`);
});
}
getTopAnime();🤝 Berkontribusi
Kontribusi, isu, dan permintaan fitur sangat kami harapkan! Jangan ragu untuk memeriksa halaman isu.
👤 Penulis
tamaaxzcw
- GitHub: @tamaaxzcw
📜 Lisensi
Proyek ini dilisensikan di bawah Lisensi MIT.
