MIF_E31222656/README.md

2.0 KiB

TaniSMART Community Chat Feature

Deskripsi Fitur

Fitur Komunitas TaniSMART memungkinkan pengguna aplikasi untuk saling berkomunikasi, berbagi pengalaman, dan mendiskusikan topik-topik terkait pertanian. Fitur ini menggantikan fitur Harga Pasar yang sebelumnya ada di aplikasi.

Fungsionalitas

  • Pesan realtime menggunakan Supabase
  • Kategorisasi pesan (Umum, Pertanian, Teknologi, Bantuan)
  • Tampilan pesan yang membedakan pesan pengirim dan penerima
  • Informasi waktu pengiriman pesan
  • Dukungan multi-baris untuk pesan panjang

Cara Penggunaan

  1. Buka halaman Komunitas dari menu utama aplikasi
  2. Pilih kategori diskusi yang diinginkan dari dropdown di bagian atas
  3. Lihat pesan-pesan yang ada atau refresh dengan menarik layar ke bawah
  4. Kirim pesan baru dengan mengetik di kolom input dan menekan tombol kirim

Setup Database Supabase

Untuk mengaktifkan fitur chat komunitas, ikuti langkah-langkah berikut di Supabase:

  1. Login ke dashboard Supabase project Anda
  2. Buka SQL Editor
  3. Jalankan perintah SQL yang terdapat pada file supabase_setup.sql
  4. Verifikasi bahwa tabel community_messages dan profiles telah terbuat
  5. Pastikan Row Level Security (RLS) dan kebijakan (policies) sudah diaktifkan
  6. Verifikasi bahwa realtime replication sudah diaktifkan untuk tabel community_messages

Struktur Kode

Fitur ini menggunakan Supabase untuk menyimpan dan menampilkan pesan secara realtime:

  • CommunityScreen berisi implementasi UI dan logika untuk chat
  • Messages disimpan dalam tabel community_messages di Supabase
  • Realtime subscriptions digunakan untuk memperbarui pesan secara otomatis

Teknologi yang Digunakan

  • Flutter untuk UI dan logika aplikasi
  • Supabase untuk autentikasi dan database
  • Supabase Realtime untuk fitur chat realtime
  • PostgreSQL untuk penyimpanan data

Catatan Penting

  • Pengguna harus login terlebih dahulu untuk menggunakan fitur ini
  • Fitur ini menggunakan free tier Supabase, jadi tidak ada biaya tambahan
  • Batasan pada free tier Supabase: 500 ribu baris database, 5GB storage, dan 2GB bandwidth per bulan