Agak mirip Solr, tapi jauh lebih kecil dan tidak seterang itu.
Indeks pencarian yang sangat sederhana dapat dibuat menggunakan yang berikut ini:
var idx = lunr ( function ( ) {
this . field ( 'title' )
this . field ( 'body' )
this . add ( {
"title" : "Twelfth-Night" ,
"body" : "If music be the food of love, play on: Give me excess of it…" ,
"author" : "William Shakespeare" ,
"id" : "1"
} )
} )
Maka pencariannya sesederhana:
idx . search ( "love" )
Ini mengembalikan daftar dokumen yang cocok dengan skor seberapa cocok dokumen tersebut dengan kueri penelusuran serta metadata terkait tentang kecocokan tersebut:
[
{
"ref" : "1" ,
"score" : 0.3535533905932737 ,
"matchData" : {
"metadata" : {
"love" : {
"body" : { }
}
}
}
}
]
Dokumentasi API tersedia, serta contoh kerja lengkap.
Lunr.js adalah perpustakaan pencarian teks lengkap kecil untuk digunakan di browser. Ini mengindeks dokumen JSON dan menyediakan antarmuka pencarian sederhana untuk mengambil dokumen yang paling cocok dengan kueri teks.
Untuk aplikasi web dengan semua datanya sudah ada di klien, masuk akal untuk dapat mencari data tersebut di klien juga. Ini menghemat penambahan layanan ekstra yang dipadatkan di server. Indeks pencarian lokal akan lebih cepat, tidak ada overhead jaringan, dan akan tetap tersedia dan dapat digunakan bahkan tanpa koneksi jaringan.
Cukup sertakan file sumber lunr.js di halaman yang ingin Anda gunakan. Lunr.js didukung di semua browser modern.
Alternatifnya, paket npm juga tersedia npm install lunr
.
Browser yang tidak mendukung ES5 akan memerlukan shim JavaScript agar Lunr dapat berfungsi. Anda dapat menggunakan Augment.js, ES5-Shim atau perpustakaan apa pun yang menambal browser lama untuk menyediakan lingkungan JavaScript yang kompatibel dengan ES5.
Lihat file CONTRIBUTING.md
.