Bedrud projesine katkılarınız memnuniyetle karşılanır. Bu rehber, değişikliklerin nasıl gönderileceğini açıklar.
Not: Resmi katkıda bulunma rehberi depo kök dizinindedir: CONTRIBUTING.md. Bu sayfa yalnızca referans amacıyla arşivlenmiştir.
Başlangıç
- Depoyu fork edin
- Fork’unuzu klonlayın
maindalından bir özellik dalı oluşturun- Değişikliklerinizi yapın
- Bir pull request gönderin
Ön Koşullar
- Go 1.22+
- Bun (web ön ucu için)
- Rust (masaüstü uygulaması için)
- Make
- Git
Geliştirme Kurulumu
# GitHub'da forkladıktan sonra fork'unuzu klonlayın
git clone https://github.com/<your-username>/bedrud.git
cd bedrud
make init
make devAyrıntılı kurulum talimatları için Geliştirme İş Akışı sayfasına bakın.
Proje Yapısı
| Dizin | Dil | Açıklama |
|---|---|---|
server/ | Go | Arka uç API ve gömülü LiveKit |
apps/web/ | TypeScript/React | Web ön ucu |
apps/desktop/ | Rust + Slint | Masaüstü uygulaması |
apps/android/ | Kotlin | Android uygulaması |
apps/ios/ | Swift | iOS uygulaması |
agents/ | Python | Bot aracıları |
packages/ | TypeScript | Paylaşılan tür tanımları |
tools/cli/ | Python | Dağıtım CLI’si |
docs/ | Markdown | Belgelendirme |
Kod Stili
| Dil | Standart |
|---|---|
| Go | gofmt |
| TypeScript/React | Biome |
| Kotlin | Android Studio varsayılanları |
| Swift | Xcode varsayılanları |
| Python | ruff |
Pull Request Süreci
- Dal adlandırması:
feature/description,fix/descriptionveyadocs/description - Commit mesajları:
<eylem> <neyi> <neden>(ör.,add user model for auth feature,fix login redirect for expired sessions) - CI kontrolleri: Tüm GitHub Actions kontrolleri geçmelidir
- Açıklama: Nelerin değiştiğini ve nedenini belirtin
CI Kontrolleri
Her PR’da şu kontroller otomatik olarak çalışır:
| Kontrol | Doğruladığı şey |
|---|---|
| Server | go vet, derleme, testler |
| Web | TypeScript tip kontrolü, derleme |
| Android | Lint, birim testleri |
| iOS | Derleme, test (simülatör) |
Sorun Bildirme
GitHub Issues üzerinden şu bilgilerle sorun bildirebilirsiniz:
- Hatayı yeniden oluşturma adımları
- Beklenen ve gerçekleşen davranış
- Ortam bilgileri (işletim sistemi, tarayıcı, uygulama sürümü)
Belgelendirme
Belgeler docs/ dizininde yer alır ve MkDocs Material ile oluşturulur.
Yerel Önizleme
pip install mkdocs-material
mkdocs serveArdından tarayıcınızda http://localhost:8000 adresini açın.
Yapı
Belge sayfaları konuya göre düzenlenmiştir. Navigasyon, proje kök dizinindeki mkdocs.yml dosyasında tanımlanır.
Lisans
Katkıda bulunarak, katkılarınızın Apache License 2.0 kapsamında lisanslanmasını kabul etmiş olursunuz.