Denizcan Sanlav

Bir şeyler anlatırım ve inşa ederim.

İstanbul – Türkiye

Denizcan Sanlav

Muhasebe uygulaması geliştir

Selamlar aşağıdaki promptları kullanarak kendi muhasebe uygulamanı yapabilirsin. Ben bolt.new kullanıyorum fakat diğer alternatifleri de kullanabilirsin.

Bu tarz uygulamaları yapay zekadan geliştirmesini isterken adım adım promptları parça parça vermek daha iyidir, bu yapay zekanın hata yapmasını önler bilgin olsun.

Prompt’lar:

Aşağıdaki promptları adım adım yapay zekaya vererek aynı uygulamayı kendin için geliştirebilirsin.


ADIM 1: Proje Temeli

Bana React + TypeScript + Vite + Tailwind CSS kullanarak bir muhasebe ve finans yönetim sistemi geliştir.

Sistem şu ana özelliklere sahip olmalı:
- Hesap yönetimi (banka hesapları, kredi kartları vs.)
- Gelir ve gider işlemlerini kaydetme
- İşletme ve kişisel harcamaları ayırma
- Bolt Database veritabanı kullanılmalı

İlk adımda sadece:
1. Hesaplar (Accounts) tablosunu oluştur
2. Kategoriler (Categories) tablosunu oluştur - type (income/expense), name, color, parent_id (hiyerarşik yapı için)
3. Ana sayfa tasarımını yap - üstte tab menüsü olsun: Hesaplar, İşlemler, Müşteriler, Analizler
4. Hesaplar sayfasını tamamla - hesap ekleme/düzenleme modal'ı ile birlikte
5. Hesap kartlarında isim, tip, bakiye gösterilsin

Tasarım modern, temiz ve profesyonel olmalı. Lucide React ikonları kullan.

ADIM 2: İşlem Yönetimi

Şimdi işlemler (transactions) özelliğini ekle:

1. Transactions tablosunu oluştur:
   - id, account_id, category_id, type (income/expense), amount, description
   - transaction_date, entity_type (business/personal)
   - merchant (satıcı bilgisi), currency (para birimi), original_amount (orijinal tutar)
   - exchange_rate (döviz kuru) - USD dışı para birimleri için

2. İşlemler sayfasını yap:
   - Üstte filtreler: zaman aralığı, tip (gelir/gider), işletme/kişisel
   - İşlem listesi: tarih, kategori, hesap, tutar, açıklama
   - Sağ üstte "Yeni İşlem" butonu

3. İşlem modal'ı:
   - Tip seçimi (gelir/gider)
   - Hesap seçimi (dropdown)
   - Kategori seçimi (dropdown - sadece ilgili tip kategorileri)
   - Tutar, açıklama, tarih
   - Merchant bilgisi
   - Para birimi seçimi (USD, EUR, TRY, GBP)
   - USD dışı seçilirse: orijinal tutar ve kur bilgisi
   - İşletme/Kişisel toggle

4. İşlem eklenince otomatik olarak hesap bakiyesini güncelle (trigger ile)

ADIM 3: Kategoriler ve Hiyerarşik Yapı

Kategori sistemini geliştirelim:

1. Gelir kategorilerini hiyerarşik yap:
   - Ana kategori: Business Income
   - Alt kategoriler: Freelance Projects, Consulting, Product Sales vb.
   - parent_id kullanarak hiyerarşi oluştur

2. Gider kategorilerini düz yapıda bırak (parent_id null)

3. Veritabanına şu kategorileri ekle:

   GELIR KATEGORİLERİ (yeşil tonları):
   - Business Income (ana) -> Freelance Projects, Consulting, Product Sales (alt)

   GİDER KATEGORİLERİ (kırmızı-turuncu tonları):
   - Marketing & Advertising
   - Software & Tools
   - Office Supplies
   - Professional Services
   - Payment Processing Fees
   - Contractor & Service Fees
   - Travel & Transportation
   - Meals & Entertainment
   - Utilities
   - Other Business Expenses

4. İşlem modal'ında:
   - Gelir seçilirse: sadece alt kategorileri göster
   - Gider seçilirse: sadece ana kategorileri göster

ADIM 4: Müşteri Yönetimi

Müşteri takibi için:

1. Customers tablosu:
   - id, name, email, phone, company, notes, created_at

2. Transactions tablosuna customer_id ekle (foreign key)

3. Müşteriler sayfası:
   - Müşteri listesi: isim, şirket, email, telefon
   - "Yeni Müşteri" butonu
   - Her müşteri kartında düzenle/sil butonları

4. Müşteri modal'ı:
   - İsim, email, telefon, şirket, notlar

5. İşlem modal'ına müşteri seçimi ekle:
   - Sadece gelir işlemlerinde göster
   - Dropdown ile müşteri seçimi

ADIM 5: CSV Yükleme

Toplu işlem ekleme için CSV yükleme:

1. İşlemler sayfasında "CSV Yükle" butonu ekle

2. CSV Upload Modal:
   - Dosya seçme alanı
   - Örnek CSV formatını göster
   - Yüklenen dosyayı parse et

3. CSV Formatı:
   date,type,category,amount,description,account,currency,merchant,entity_type

4. CSV işleme:
   - Kategori isminden kategori ID'sini bul
   - Hesap isminden hesap ID'sini bul
   - Entity type yoksa 'business' varsayılan
   - Currency yoksa 'USD' varsayılan
   - Hataları göster, geçersiz satırları atla

5. İşlemler eklendikten sonra modal'ı kapat ve listeyi yenile

ADIM 6: Analitik ve Raporlama

Analizler sayfasını oluştur:

1. Üstte zaman filtresi: Bu Ay, Bu Yıl, Tüm Zamanlar

2. Özet kartlar (3 kart):
   - Toplam Gelir (yeşil gradient)
   - Toplam Gider (kırmızı gradient)
   - Net Bakiye (mavi/turuncu gradient - pozitif/negatife göre)

3. İşletme vs Kişisel karşılaştırma (2 kart):
   - İşletme: gelir/gider bar'lar ve net
   - Kişisel: gelir/gider bar'lar ve net

4. Aylık Gelir & Gider grafiği:
   - Her ay için yatay bar grafik
   - Gelir (yeşil) ve Gider (kırmızı) yan yana
   - Yıllara göre gruplanmış

5. Top 5 Kategoriler (2 kart):
   - Top Gider Kategorileri (progress bar'lar)
   - Top Gelir Kategorileri (progress bar'lar)
   - Yüzde ve tutar göster

6. Müşteri Bazlı Gelir Analizi:
   - Top 5 müşteri
   - Toplam gelirden yüzde payları
   - Progress bar'lar ile görselleştir

ADIM 7: Kategori Trend Grafiği

Analizler sayfasına çizgi grafik ekle:

1. Yeni bir CategoryTrendChart komponenti oluştur

2. Özellikler:
   - Tüm gider kategorilerini listele (checkbox'lar ile)
   - Kullanıcı istediği kategorileri seçebilsin
   - Seçilen her kategori için ayrı renkli çizgi
   - X ekseni: aylar (tüm zamanlar)
   - Y ekseni: tutar
   - SVG ile çizim yap

3. Grafik özellikleri:
   - Her kategorinin kendi rengi olsun
   - Noktalara hover yapınca bilgi göster
   - Çok ay varsa X ekseninde etiketleri döndür
   - Grid çizgileri ekle
   - Altında legend göster (seçilen kategoriler)

4. Boş durumlar:
   - Kategori seçilmemişse: "En az bir kategori seçin" mesajı
   - Veri yoksa: "İşlem bulunmuyor" mesajı

5. Bunu AnalyticsPage'e en alta ekle

ADIM 8: Potansiyel İşlemler

Henüz onaylanmamış işlemleri tutmak için:

1. Potential_transactions tablosu:
   - Transactions ile aynı yapı
   - Ek: status (pending/approved/rejected)

2. Yeni sayfa: Potansiyel İşlemler
   - Tab menüsüne ekle
   - Pending işlemleri listele
   - Her işlem için: Onayla / Reddet butonları

3. Onayla butonu:
   - İşlemi transactions tablosuna ekle
   - Potential_transactions'tan sil veya status güncelle
   - Hesap bakiyesini güncelle

4. Reddet butonu:
   - Status'u rejected yap veya sil

5. Yeni potansiyel işlem ekleme modal'ı
   - Normal işlem modal'ı ile aynı
   - Ama transactions yerine potential_transactions'a ekle

ADIM 9: Trigger ve Otomasyonlar

Veritabanı trigger'ları ekle:

1. Hesap bakiyesi otomatik güncellemesi:
   - Transaction eklenince: hesap bakiyesini güncelle
   - Transaction silinince: bakiyeyi geri al
   - Transaction güncellenince: farkı hesapla ve uygula

2. Trigger fonksiyonları:
   - update_account_balance() fonksiyonu
   - INSERT, UPDATE, DELETE trigger'ları
   - Gelir: bakiye artır
   - Gider: bakiye azalt

3. Migration dosyasında SQL olarak ekle

ADIM 10: Son Rötuşlar

Sistemin son halini şekillendirmelim:

1. Para birimi formatlaması:
   - Tüm tutarlar USD formatında gösterilsin
   - $1,234.56 formatı

2. Tarih formatı:
   - Türkçe tarih formatı kullan (transaction listelerinde)

3. Responsive tasarım:
   - Mobilde grid'ler tek kolona düşsün
   - Modal'lar tam ekran olsun mobilde

4. Loading durumları:
   - Her sayfada veri yüklenirken "Yükleniyor..." göster

5. Boş durumlar:
   - Henüz veri yoksa anlamlı mesajlar göster
   - Örnek veri ekleme önerileri

6. Renkler ve tema:
   - Modern, profesyonel renk paleti
   - Mavi tonları (primary)
   - Yeşil (gelir), Kırmızı (gider)
   - Soft shadows ve hover efektleri

7. İkonlar:
   - Her özellik için uygun Lucide ikon
   - Consistent kullanım

BONUS: Ekstra İyileştirmeler

(İsterseniz bunları da ekleyebilirsiniz)

1. İşlem detay sayfası:
   - İşleme tıklayınca detaylı görünüm
   - Düzenleme geçmişi

2. Export özellikleri:
   - İşlemleri CSV'ye aktar
   - Raporları PDF olarak indir

3. Dashboard:
   - Hızlı özet görünüm
   - Son işlemler
   - Hızlı eylemler

4. Arama ve filtreleme:
   - İşlemlerde gelişmiş arama
   - Tarih aralığı, tutar aralığı filtreleri

5. Bildirimler:
   - Büyük harcamalarda uyarı
   - Düşük bakiye uyarıları

Pazarlama psikolojisi kitabımı ücretsiz almak ister misin?

Psikolojinin pazarlamaya nasıl uyarlandığını hem teorik hemde uygulamalı olarak anlattım.

İşini büyütmene yardımcı olacaktır.

700 TL yerine bir süre daha ücretsiz

Pazarlama Psikolojisi - E-kitap - Denizcan Sanlav