Indonesian stemmer - Pustaka JavaScript untuk mengambil kata dasar dari kata berimbuhan pada bahasa Indonesia.
Akarata adalah pustaka JavaScript untuk mengambil akar kata/suku kata(stem) dari kata yang berimbuhan awal ataupun akhir pada bahasa Indonesia. Akarata diambil dari kata "akar kata", agar lebih pendek saat penyebutannya.
Akarata diilhami dari stem kata bahasa Indonesia berdasarkan Porter Stemmer, dengan menggunakan algoritma yang dipaparkan dalam paper A Study of Stemming Effects on Information Retrieval in Bahasa Indonesia, oleh Fadillah Z Tala.
Akarata dibuat secara umum bisa berjalan di server menggunakan Node.js
maupun di browser terbaru bahkan di react-native
sekalipun. Namun perlu memperhatikan kompatibilitas dari platform tersebut. Cek di Kompatibilitas fungsi
tslib >= 1.9.0
npm:
npm install --save tslib akarata
yarn:
yarn add tslib akarata
Karena akarata di dalam fungsinya menggunakan Array.includes. Maka jika anda menggunakan akarata pada Node.js
versi 4, browser Edge < v14, IE, Chrome < v47, Firefox < 43, Safari < v9 dan lain-lain(lihat tabel) maka membutuhkan polyfill
. Untuk caranya bisa lihat di bagian Menambah polyfill
Lewati langkah ini jika platform didukung.
Menggunakan npm
:
npm i ts-polyfill
Menggunakan yarn
:
yarn add ts-polyfill
Muat ini sebelum memuat pustaka akarata, biasanya taruh diatasnya.
pada node.js:
require('ts-polyfill/lib/es2016-array-include');
pada ES2015+ / Babel / TypeScript:
import 'ts-polyfill/lib/es2016-array-include';
Jika tidak ingin melakukan instalasi ts-polyfill
dan hanya menjalankan di browser. Maka salin kode yang ada di dokumentasi polyfill
<script type="javascript">
// salin kode disini
<script>
ES2015+ / Babel / TypeScript:
// muat pustakanya
import * as akarata from 'akarata';
// or
import akarata from 'akarata';
CommonJS/ UMD / NodeJS:
// muat pustakanya
var akarata = require('akarata');
Michael Jackson script/ MJS / NodeJS experimental-modules
:
// muat pustakanya
import * as akarata from 'akarata';
// or
import akarata from 'akarata';
unpkg.com
:
// sejak akarata versi > 0.1.5
// unpkg.com/:package@:version/:file
// catatan `.min` menandakan versi kompres-nya
// sebagai contoh
import * as akarata from 'https://unpkg.com/[email protected]/bundles/index.esm.js';
// atau
import akarata from 'https://unpkg.com/[email protected]/bundles/index.esm.min.js';
// atau url absolut, secara implisit ke bundles/index.umd.js
import akarata from 'https://unpkg.com/akarata';
// panggil fungsi stem
akarata.stem('menikah'); // nikah
Atau mencobanya langsung dari web: akarata.netlify.com.
Karena pustaka ini masih tahap development, jika diketahui ada masalah silakan buat tiket baru
Awalnya, pustaka ini merupakan implementasi dari sistem penganalisis untuk Bahasa Indonesia, dari proyek Apache Lucene, ke dalam bahasa JavaScript.
git checkout -b my-new-feature
)__tests__
dan jalankan npm test
git commit -am 'Tambahkan fitur baru'
)git push origin my-new-feature
)Setelah bersyukur kepada Allah Subhanahu Wa Ta'ala, kami ingin mengucapkan terima kasih kepada: