Skip to content

Repository files navigation

Sakuku - Personal Finance Manager

Sakuku adalah aplikasi pengelola keuangan pribadi (Personal Finance Manager) berdesain modern, estetik, dan dirancang untuk pengalaman layaknya aplikasi natif (Progressive Web App). Aplikasi ini dilengkapi dengan integrasi Kecerdasan Buatan (AI) untuk membantu Anda mencatat dan menganalisis kondisi keuangan dengan lebih pintar.

✨ Fitur Unggulan

📸 1. AI Receipt Scanner (Pemindai Struk Pintar)

Lupakan pencatatan manual yang membosankan. Cukup foto atau unggah gambar struk belanja Anda, dan biarkan AI mengekstrak nama merchant, total biaya, kategori, dan detail barang secara otomatis.

  • Terintegrasi dengan Vision LLMs via OpenRouter (Gemma/Nemotron).
  • Proses pemindaian cepat, akurat, dan langsung mengisi form transaksi.

🤖 2. AI Financial Advisor (Konsultan Keuangan Pribadi)

Dapatkan ringkasan kondisi keuangan (Sehat, Perlu Perhatian, atau Kritis) hanya dalam sekali klik. AI Sakuku akan menganalisis tren pengeluaran bulanan Anda, menemukan pola (pattern), dan memberikan rekomendasi yang konkret untuk menghemat pengeluaran.

🌐 3. Offline-First & Guest Mode

Tidak ingin repot mendaftar? Sakuku menyediakan Guest Mode yang memungkinkan aplikasi digunakan secara offline di mana saja dengan penyimpanan berbasis LocalStorage. Kapan pun Anda siap, Anda bisa beralih ke Autentikasi Nyata (Supabase) untuk melakukan sinkronisasi data (Cloud Sync).

📱 4. Progressive Web App (PWA)

Instal aplikasi ini langsung ke perangkat iOS, Android, atau Desktop Anda.

  • Offline Support: Berfungsi sempurna walau tanpa koneksi internet.
  • Background Sync: Menyinkronisasi data segera setelah internet kembali.
  • Native UI/UX: Tampilan layar penuh dengan transisi cairan (liquid transitions).

🛡️ 5. Keamanan Tinggi (Enterprise-Grade Security)

  • Autentikasi dikelola langsung oleh Supabase.
  • Fitur AI di-backend secara ketat memvalidasi JWT Token (Supabase), memastikan bahwa kunci API (API Keys) aman dari eksploitasi dan akses publik yang tidak sah.

🎨 6. Dark/Light Mode & Multilingual

Mendukung perpindahan tema gelap/terang secara mulus dengan kustomisasi aksen warna cerah khas masa depan. Mendukung dual-bahasa (Indonesia & English).


🛠️ Tech Stack (Teknologi yang Digunakan)

Aplikasi ini dibangun di atas stack frontend modern untuk mengedepankan performa:

  • UI Framework: React 19 + TypeScript
  • State Management: Zustand (Cepat & Ringan)
  • Styling: Tailwind CSS + CSS Modules
  • Database & Auth: Supabase
  • Build Tool: Vite & Vite PWA Plugin
  • AI Integrations: OpenRouter (Serverless Functions)
  • Charts: Recharts

🚀 Panduan Instalasi (Development)

Prasyarat

  • Node.js 18+
  • Akun Supabase (opsional jika menggunakan Guest Mode saja, namun dibutuhkan untuk login dan sinkronisasi DB).
  • Akun OpenRouter (untuk API Key Ekstraksi & Insights AI).

Menjalankan secara Lokal

  1. Clone repository
git clone <repository-url>
cd sakuku
  1. Instal dependensi
npm install
  1. Konfigurasi Environment Buat file .env.local di root dan masukkan kredensial berikut:
# OpenRouter API untuk Fitur AI
OPENROUTER_API_KEY=your_openrouter_api_key_here
AI_MODEL=google/gemma-4-26b-a4b-it:free

# Supabase Auth & Database (Opsional untuk Guest Mode, Wajib untuk Autentikasi & API AI Backend)
VITE_SUPABASE_URL=https://your-project.supabase.co
VITE_SUPABASE_ANON_KEY=your_supabase_anon_key
  1. Konfigurasi Database Supabase (Cloud Sync) Jalankan skrip SQL yang ada pada docs/supabase_schema.sql melalui menu SQL Editor di Dashboard Supabase untuk membuat tabel receipts beserta kebijakan keamanan RLS.

  2. Jalankan Server Development

npm run dev

Build & Deploy

Untuk deployment (misal ke Vercel atau Netlify):

# Build aplikasi untuk tahap produksi
npm run build

# Menyiapkan PWA cache & service workers
npm run build:pwa

Penting: Vercel adalah host yang sangat direkomendasikan karena Sakuku mengandalkan api/ sebagai Vercel Serverless Functions.


📱 PWA Instalasi (Bagi Pengguna)

  • Android (Chrome/Edge): Kunjungi aplikasi web > Tap prompt "Add to Home screen" yang muncul.
  • iOS (Safari): Kunjungi aplikasi web > Tap tombol Share (Kotak dengan panah ke atas) > "Add to Home Screen".
  • Desktop (Chrome/Edge): Klik ikon unduh/instal di sebelah kanan bilah alamat URL.

📜 Lisensi

Dikembangkan secara terbuka (MIT License). Lihat file LICENSE untuk informasi lebih lanjut.

Untuk pelaporan kutu (bug) atau permintaan fitur baru, silakan buka Issue di repositori ini.

About

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages