İşletmeler ve Esnaflar İçin Çoklu Cihaz Destekli, Rol Tabanlı, Hızlı ve Güvenilir Mobil Kasa Çözümü
POCO, küçük ve orta ölçekli işletmelerin (market, büfe, kırtasiye, butik vb.) pahalı donanımsal barkod okuyuculara ihtiyaç duymadan, akıllı telefon kameralarıyla ürün taramasına, stok/fiyat sorgulamasına, kâr marjı takibine ve hızlı kasa satışlarına imkan tanıyan yeni nesil mobil otomasyon sistemidir.
- 👥 Rol Tabanlı Erişim Yönetimi (RBAC):
Admin(Yönetici),MüdürveKasiyerolmak üzere 3 farklı rol entegre edildi. - 🔒 Geliş (Maliyet) Fiyatı ve Kâr Marjı Gizleme: Kasiyer rolündeki çalışanların ekranlarında alış fiyatları ve kâr marjları tamamen gizlendi.
- 📝 Ürün Düzenleme (Edit) & Güvenli Silme (Soft Delete): Ürün adı, barkodu, fiyatları, markası ve kategorisini tek tıkla güncelleme modalı eklendi. Ürün silme işlemleri geçmiş satış raporları bozulmasın diye
is_deleted(Soft Delete) güvencesine alındı. - 🏷️ Kategori, Marka & Esnek Ürün Şeması: Sadece Ürün Adı ve Satış Fiyatı zorunlu tutuldu (Barkod, Maliyet, Görsel, Marka, Kategori opsiyonel yapıldı). Arama ekranına kategori filtreleme çipleri eklendi.
- 🛒 Kasada "+ Manuel Tutar" / Hızlı Satış: Kaydı olmayan ürünler için kasada anında tutar girip sepete ekleme imkanı sağlandı.
- 🎯 Barkod Kamerasını Yeşil Kutuya Kilitleme (ROI Boundary): Barkod okuyucu kamera, kadrajdaki diğer barkodları yanlışlıkla okumamak için sadece ortadaki yeşil kılavuz kutunun içindeki barkodlara kilitlendi.
- 🖼️ Ürün Görseli Fix & Storage Migration: Yüklenen ürün fotoğraflarının listelerde ve detaylarda görünmesi sağlandı; tek tıkla çalıştırılabilir
supabase_v3_migration.sqlbetiği projeye eklendi.
- ⚙️ Expo SDK 54 & React 19 Geçişi: React Native 0.81.5, React 19.1.0 ve Hermes JS derleyici optimize edildi.
- 📱 Ekran Taşıntısı Düzeltmeleri (Safe Area Padding): Android durum çubuğu (Status Bar) ve çentik kaymalarını önlemek için güvenli alan boşlukları uygulandı.
- 🖐️ Ergonomik Butonlar: Tüm dokunmatik butonlar 44x44px yüksek kontrastlı kart tasarımlarına yükseltildi.
- 📸 Kamera ile Doğrudan Ürün Fotoğrafı Çekme:
expo-image-pickerile 1:1 oranlı ürün fotoğrafı çekme ve galeriden görsel seçme aktifleşti. - ⚡ Ana Ekran Hızlı Kamera Kısayolu: Ana ekrana doğrudan barkod tarayıcıyı başlatan buton yerleştirildi.
- 🔍 Detay Modalı Çıkış Deneyimi: Sorgulama ekranına "Tamam / Listeye Dön" butonu ve arka plana dokunarak kapatma (backdrop dismiss) eklendi.
- ⚡ Supabase Cloud Entegrasyonu: PostgreSQL veritabanı yapısı ve Tablo oluşturma.
- 🔑 Mağaza Giriş Mantığı: Mağaza Kodu ve PIN ile oturum açma / Yeni mağaza kurma.
- 📸 Kamera Barkod Okuyucu:
expo-cameraveexpo-avile sesli (Bip) barkod okuma. - 🛒 Kasa & Hesapla Modülü: Ürün sepeti, toplam tutar, alınan nakit ve para üstü hesaplama.
- 🔄 Realtime Senkronizasyon: Aynı mağaza hesabını açan tüm cihazlarda canlı ürün ve stok eşitlemesi.
- 📶 Offline Desteği: İnternet koptuğunda kesintisiz çalışma için
@react-native-async-storage/async-storageönbellekleme. - 🛠️ CI/CD Pipeline: GitHub Actions ile otomatik standalone Android
.apkderleme iş akışı.
- Ön Yüz (Frontend): React Native (Expo SDK 54), TypeScript, React 19.1.0
- Arka Yüz (Backend / DB): Supabase Cloud (PostgreSQL, Realtime WebSockets, Cloud Storage)
- Derleyici (Engine): Hermes JS Engine, Babel (
babel-preset-expo ~54.0.10) - Medya & İzinler:
expo-camera,expo-image-picker,expo-av - Yerel Depolama (Offline Cache):
@react-native-async-storage/async-storage - CI/CD Build Pipeline: GitHub Actions (Ubuntu 22.04, Java 17, Gradle 8.14, Kotlin 2.0.21)
En güncel derlenmiş POCO Android APK dosyasını telefonunuza indirip doğrudan kullanabilirsiniz:
👉 POCO Android APK İndir (GitHub Releases v3.0.0)
Projeyi kendi bilgisayarınızda çalıştırmak için:
-
Repoyu Klonlayın:
git clone https://github.com/UmutSimsek22/POCO.git cd POCO -
Bağımlılıkları Yükleyin:
npm install --legacy-peer-deps
-
Supabase SQL Migration Çalıştırın: Supabase Dashboard -> SQL Editor sayfasına gidin ve projedeki
supabase_v3_migration.sqlbetiğini yapıştırıp çalıştırın. -
Ortam Değişkenlerini (
.env) Oluşturun:EXPO_PUBLIC_SUPABASE_URL=https://nvzvttrjqbdsicmgjkiv.supabase.co EXPO_PUBLIC_SUPABASE_ANON_KEY=your_supabase_anon_key
-
Uygulamayı Başlatın:
npx expo start
Bu proje MIT Lisansı altında geliştirilmektedir.