A website AI assistant library (Zhin-Ai) for guiding and explaining website content using Google Gemini AI.
npm install website-ai-assistantZhin-Ai adalah pustaka JavaScript ringan yang memungkinkan Anda mengintegrasikan asisten AI interaktif langsung ke situs web Anda. Dirancang untuk memandu pengguna, menjelaskan struktur dan komponen website, serta menjawab pertanyaan terkait konten halaman, Zhin-Ai memberikan pengalaman navigasi yang lebih intuitif dan informatif.
* Asisten Interaktif Cerdas: Memahami dan menjelaskan konten website saat ini secara dinamis dan responsif terhadap pertanyaan pengguna.
* Gemini AI Powered: Menggunakan API Google Gemini 2.5 Flash untuk menghasilkan respons yang cerdas, relevan, dan alami.
* Sistem Memori Percakapan: Secara cerdas mengingat riwayat percakapan sebelumnya (disimpan di localStorage browser) untuk menjaga konteks, memungkinkan interaksi yang lebih personal dan berkelanjutan.
* Desain Responsif Adaptif:
* Desktop: Menampilkan tombol mengambang di pojok kanan bawah. Saat diklik, chat box akan muncul di lokasi yang sama.
* Mobile: Menampilkan tombol mengambang. Saat diklik, chat akan tampil sebagai modal (pop-up) di tengah layar, memastikan pengalaman pengguna yang optimal di perangkat berlayar kecil.
* Dua Tema Visual: Mendukung tema terang (light) dan gelap (night) yang dapat dengan mudah diaktifkan sesuai preferensi website Anda.
Penyajian Pesan Canggih: Otomatis memformat respons AI, termasuk blok kode ( `lang\ncode` ), teks tebal ( teks tebal ), teks miring ( teks miring* ), dan tautan ( teks tautan ), agar mudah dibaca dan dipahami.
* Mudah Digunakan: Cukup tambahkan satu elemen HTML kustom () dan satu baris kode JavaScript untuk menginisialisasi pustaka.
* Creator Attribution: Setiap respons dari Zhin-Ai akan menyertakan footer kecil yang menunjukkan "Creator: Dvszhin" dengan tautan ke halaman npm pustaka ini.
Tambahkan tag berikut di bagian akhir HTML Anda (sebelum tag penutup). Ini akan memuat pustaka Zhin-Ai beserta CSS-nya secara otomatis dari CDN Unpkg.
``html`1.0.0
Pastikan versi sudah di-deploy ke npm agar dapat diakses melalui Unpkg. Jika Anda melakukan pengembangan lokal dan belum deploy, Anda bisa merujuk ke bagian "Mengembangkan dan Menguji Secara Lokal".
Tempatkan elemen di mana saja di dalam HTML Anda. Posisi yang umum adalah di akhir .
#### Contoh Penggunaan Elemen:
* Dengan Warna Default (Terang):
`html`
`
* Mengaktifkan Tema Gelap:
html`
`
* Mengaktifkan Tema Terang (Eksplisit):
html`
Setelah elemen ini ditambahkan, sebuah tombol mengambang dengan ikon pesan akan muncul di pojok kanan bawah halaman Anda.
PENTING: Untuk Zhin-Ai dapat berfungsi, Anda perlu menyediakan kunci API Google Gemini. Jangan pernah menyimpan kunci API Anda secara langsung di file JavaScript publik untuk lingkungan produksi. Metode di bawah ini cocok untuk pengembangan dan demo.
Tambahkan skrip ini setelah tag
`
Saran Keamanan Tambahan untuk Produksi:
Untuk aplikasi produksi, sangat disarankan untuk:
* Menggunakan Variabel Lingkungan: Jika Anda menggunakan proses build (Webpack, Vite, dll.), suntikkan kunci API sebagai variabel lingkungan.
* Proxy Server: Buat endpoint di server backend Anda yang meneruskan permintaan ke API Gemini, sehingga kunci API Anda tidak pernah terekspos di sisi klien.
Zhin-Ai berinteraksi dengan API Google Gemini menggunakan konfigurasi berikut:
* Model Digunakan: gemini-2.5-flash-preview-05-06https://raw.githubusercontent.com/zhinnx/files/main/zhin-ai-prompt.txt
* Instruksi Sistem Dinamis:
* Bagian utama instruksi (core persona asisten) diambil dari URL publik: .document.documentElement.outerHTML
* Ditambah dengan struktur HTML lengkap dari halaman web saat ini (). Ini memungkinkan AI memiliki konteks penuh tentang konten, tata letak, dan elemen yang ada di halaman yang sedang dilihat pengguna.Chat History
* Memori Percakapan (): Setiap pesan dari pengguna dan AI akan disimpan dalam localStorage browser. Riwayat percakapan ini kemudian disertakan dalam setiap permintaan API berikutnya (contents array), memungkinkan AI untuk memiliki "ingatan" tentang diskusi sebelumnya dan mempertahankan konteks.temperature: 0.5
* Konfigurasi Generasi:
* (kontrol kreativitas; nilai yang lebih rendah menghasilkan respons yang lebih fokus dan konservatif).maxOutputTokens: 800
* (batas panjang respons AI). ``
* Format Pesan Otomatis: Respons AI secara otomatis diformat untuk menampilkan:
* Blok kode (bahasa\nkode` )
* Teks tebal ( teks tebal )
Teks miring ( teks miring* )
* Tautan ( teks tautan )
Untuk kontribusi atau pengujian fitur baru sebelum deploy ke Unpkg:
1. Clone Repository:
``bash`
git clone https://github.com/Dvszhin/website-ai-assistant.git
cd website-ai-assistant
zhinai.js
2. Perbarui dan index.html: Pastikan Anda menggunakan versi terbaru dari zhinai.js (dengan inisialisasi window.ZhinAiAssistant di awal) dan index.html (dengan elemen ).index.html
3. Buat File Demo HTML: Gunakan kode yang disediakan dalam demo, simpan di direktori root proyek Anda.fetch
4. Jalankan Server Lokal (Penting!):
Browser modern memberlakukan batasan keamanan (CORS) yang mencegah API dan beberapa fungsionalitas Custom Elements berjalan langsung dari file lokal (file:///). Anda harus menjalankan server HTTP sederhana untuk menguji.`
* Menggunakan Node.js (jika terinstal):
Buka terminal di direktori root proyek Anda, lalu jalankan:
bash`
npx serve .
# Atau jika Anda menginstal http-server secara global:
npm install -g http-server
http-server .
`
* Menggunakan Python (jika terinstal):
Buka terminal di direktori root proyek Anda, lalu jalankan:
bash`
python -m http.server 8000
index.html
* Ekstensi Browser (untuk VS Code): Gunakan ekstensi seperti "Live Server". Buka di VS Code, klik kanan, dan pilih "Open with Live Server".http://localhost:5000
5. Akses dari Browser: Buka browser Anda ke alamat yang diberikan oleh server lokal Anda (misalnya , http://localhost:8000, atau http://127.0.0.1:5500).
Kontribusi disambut hangat! Jika Anda memiliki ide untuk fitur baru, perbaikan bug, atau peningkatan performa, silakan ikuti langkah-langkah di bawah ini:
1. Fork repository ini.
2. Buat branch baru (git checkout -b feature/nama-fitur-baru).git commit -m 'Tambahkan Fitur Baru yang Menarik'
3. Lakukan perubahan Anda.
4. Commit perubahan Anda ().git push origin feature/nama-fitur-baru`).
5. Push ke branch Anda (
6. Buka Pull Request.
Pustaka ini dilisensikan di bawah Lisensi MIT.
---
Dibuat oleh: Dvszhin
https://www.npmjs.com/package/website-ai-assistant