FinansApp Web'e katkıda bulunmayı düşündüğünüz için teşekkür ederiz! FinansApp'i harika bir araç yapan sizin gibi insanlardır.
Bu projeye katılarak, Davranış Kurallarımızı desteklemeyi kabul edersiniz:
- Saygılı ve kapsayıcı olun
- Konuşma ve eylemlerinizde düşünceli ve saygılı olun
- Çatışmadan önce işbirliği yapmaya çalışın
- Çevrenizin ve diğer katılımcıların farkında olun
Hata raporu oluşturmadan önce, lütfen issue listesini kontrol edin, çünkü yeni bir tane oluşturmanıza gerek olmadığını görebilirsiniz. Bir hata raporu oluştururken, lütfen mümkün olduğunca fazla ayrıntı ekleyin:
- Issue için net ve açıklayıcı bir başlık kullanın
- Sorunu yeniden oluşturmak için tam adımları açıklayın
- Adımları göstermek için spesifik örnekler verin
- Adımları takip ettikten sonra gözlemlediğiniz davranışı açıklayın
- Bunun yerine hangi davranışı görmeyi beklediğinizi ve nedenini açıklayın
- Mümkünse ekran görüntüleri ve animasyonlu GIF'ler ekleyin
- Ortam detaylarınızı ekleyin (İşletim sistemi, tarayıcı, Node sürümü vb.)
Geliştirme önerileri GitHub issues olarak takip edilir. Bir geliştirme önerisi oluştururken, lütfen şunları ekleyin:
- Net ve açıklayıcı bir başlık kullanın
- Önerilen geliştirmenin detaylı bir açıklamasını sağlayın
- Adımları göstermek için spesifik örnekler sağlayın veya uygulanabilirse mock-up'lar sağlayın
- Mevcut davranışı açıklayın ve bunun yerine hangi davranışı görmeyi beklediğinizi açıklayın
- Bu geliştirmenin neden faydalı olacağını açıklayın
- Repo'yu fork edin ve
main'den branch'inizi oluşturun - Test edilmesi gereken kod eklediyseniz, testler ekleyin
- API'leri değiştirdiyseniz, dokümantasyonu güncelleyin
- Test suite'inin geçtiğinden emin olun
- Kodunuzun lint kontrolünden geçtiğinden emin olun
- Pull request'i gönderin!
- Repository'yi fork edin ve klonlayın
git clone https://github.com/KULLANICI_ADINIZ/finansapp-web.git
cd finansapp-web- Bağımlılıkları yükleyin
npm install-
.env.exampledosyasına göre.envdosyası oluşturun -
Geliştirme sunucusunu başlatın
npm run dev- Tip güvenliği için TypeScript kullanın
- Mevcut kod stilini takip edin (ESLint yapılandırması)
- Anlamlı commit mesajları yazın
- Fonksiyonları küçük ve odaklı tutun
- Karmaşık mantık için yorumlar ekleyin
- Açıklayıcı değişken ve fonksiyon isimleri kullanın
Conventional Commits spesifikasyonunu takip ediyoruz:
feat: yeni özellik ekle
fix: hata düzelt
docs: dokümantasyonu güncelle
style: kodu formatla
refactor: kodu yeniden düzenle
test: test ekle
chore: bağımlılıkları güncelle
Örnekler:
feat: işlemler sayfasına kategori filtresi ekle
fix: Türkçe karakterlerle PDF ayrıştırma sorununu çöz
docs: Gemini API talimatlarıyla kurulum kılavuzunu güncelle
Açıklayıcı branch isimleri kullanın:
feature/aciklama- yeni özellikler içinfix/aciklama- hata düzeltmeleri içindocs/aciklama- dokümantasyon güncellemeleri içinrefactor/aciklama- kod yeniden düzenlemeleri için
Örnekler:
feature/karanlik-modfix/pdf-yukleme-hatasidocs/api-kurulum-kilavuzu
Pull request göndermeden önce:
- Değişikliklerinizi kapsamlı bir şekilde test edin
- Lint kontrolü çalıştırın:
npm run lint - Projeyi build edin:
npm run build - UI değişiklikleri söz konusuysa birden fazla tarayıcıda test edin
src/
├── components/ # Yeniden kullanılabilir React bileşenleri
├── pages/ # Sayfa bileşenleri
├── lib/ # Yardımcı araçlar ve servisler
├── contexts/ # React contexts
├── types/ # TypeScript tip tanımlamaları
└── hooks/ # Custom React hooks
- Frontend: React 19, TypeScript, Tailwind CSS
- Build Aracı: Vite
- Backend: Supabase (PostgreSQL, Auth, Storage)
- AI: OpenAI GPT-4, Google Gemini
- UI Bileşenleri: shadcn/ui, Radix UI
- Grafikler: Recharts
- Form İşleme: React Hook Form + Zod
- Kurulum talimatları için README.md dosyasını kontrol edin
- Detaylı yapılandırma için SETUP_GUIDE.md dosyasını kontrol edin
- Hatalar veya sorular için issue açın
- Mevcut issue'ları ve pull request'leri inceleyin
Katkıda bulunanlar README'mizde ve sürüm notlarında tanınacaktır. Katkılarınız için teşekkür ederiz!
Katkıda bulunarak, katkılarınızın MIT Lisansı altında lisanslanacağını kabul etmiş olursunuz.