Yeni Geliştirici Onboarding
İlk gün ve ilk hafta için net yol haritası — checklist, okuma sırası, ilk değişiklik senaryosu ve sorun yaşandığında nereye bakılacağı.
Bu sayfa projeye yeni katılan developer’lar için ilk gün ve ilk hafta yol haritasını verir. Adımları tamamladığınızda yerelde uygulamanın ayağa kalkmış olması, dokümanların sırayla okunmuş olması ve ilk küçük değişikliğin yapılmış olması hedeflenir.
İlk gün checklist
Section titled “İlk gün checklist”Aşağıdaki adımları sırayla tamamlayın.
1. Repoyu klonlama
Section titled “1. Repoyu klonlama”git clone https://github.com/techsider-co/coursio.gitcd coursio2. Bağımlılıkları yükleme
Section titled “2. Bağımlılıkları yükleme”npm install3. Ortam dosyası: .dev.vars oluşturma
Section titled “3. Ortam dosyası: .dev.vars oluşturma”Proje kökünde .dev.vars dosyası oluşturun. Bu dosya git’e eklenmez (.gitignore).
En az şu değişkenleri ekleyin:
| Değişken | Açıklama |
|---|---|
DATABASE_URL | Neon PostgreSQL bağlantı dizesi |
STRIPE_SECRET_KEY | Stripe test anahtarı (sk_test_...) |
STRIPE_WEBHOOK_SECRET | Stripe CLI ile alınan whsec_... (yerel webhook için) |
BETTER_AUTH_SECRET | Rastgele gizli anahtar (oturum şifreleme) |
Detaylı liste ve örnek için Ortam Değişkenleri sayfasına bakın.
4. Uygulamayı ayağa kaldırma
Section titled “4. Uygulamayı ayağa kaldırma”npm run dev- Uygulama http://localhost:5173 adresinde açılır.
- Tarayıcıda ana sayfayı açıp dil seçimi (ör.
/tr) ile gezinebildiğinizi doğrulayın.
Not: API / webhook / DB testi için npm run start veya npx wrangler dev (port 8787) kullanılır; günlük UI geliştirme için npm run dev yeterlidir.
5. İlk sayfa değişikliği (footer metni)
Section titled “5. İlk sayfa değişikliği (footer metni)”Aşağıdaki “İlk değişiklik önerisi” bölümündeki senaryoyu uygulayarak footer’da küçük bir metin değişikliği yapın. Böylece dosya düzenleme → kaydetme → tarayıcıda görme döngüsünü tecrübe etmiş olursunuz.
Okuma sırası
Section titled “Okuma sırası”Dokümanları aşağıdaki sırayla okuyun. Her sayfa bir sonrakine temel oluşturur.
| Sıra | Sayfa | Amaç |
|---|---|---|
| 1 | Giriş (Proje Vizyonu & Tech Stack) | Projenin ne olduğu, LMS + pazaryeri vizyonu, kullanılan teknoloji yığını. |
| 2 | Yerel Kurulum Rehberi | Klonlama, npm install, .dev.vars, npm run dev adımları. |
| 3 | Ortam Değişkenleri | Tüm Secret ve Public anahtarların açıklamalı listesi; Stripe, Bunny, Better Auth, DB. |
| 4 | Geliştirme Akışı | Günlük komutlar (dev vs start), Stripe webhook yerelde test, build/deploy. |
| 5 | Proje Yapısı (Detaylı) | app/ altındaki klasörlerin görevi, route dosya isimlendirmesi, layout hiyerarşisi, ortak lib modülleri. |
| 6 | Route Haritası | Tüm URL’lerin özeti; public / auth / öğrenci / eğitmen / admin ayrımı, dil prefix kuralı. |
| 7 | İlgili mimari sayfalar | Yapacağınız işe göre: Veritabanı Şeması, API Referansı ve GraphQL, Checkout & Webhooks, Stripe Connect, Admin Console vb. |
İlk değişiklik önerisi (ilk PR senaryosu)
Section titled “İlk değişiklik önerisi (ilk PR senaryosu)”Amaç: Küçük bir UI değişikliği yaparak dosya düzenleme → kaydetme → tarayıcıda doğrulama akışını tecrübe etmek.
Senaryo: Footer copyright metnini güncellemek
Section titled “Senaryo: Footer copyright metnini güncellemek”Yapılacak iş: Footer’daki “© 2026 Coursio, Inc.” metnini değiştirmek (örneğin metni kısaltmak veya bir ek metin eklemek).
Adımlar
Section titled “Adımlar”- Dosyayı açın:
app/components/Footer.tsx - İlgili satırı bulun: Alt kısımda copyright metni şu şekilde yer alır:
<span className="text-xs text-slate-500 font-medium">© 2026 Coursio, Inc.</span>
- Değişiklik yapın: Örneğin metni
© 2026 Coursioolarak kısaltın veya© 2026 Coursio — Geliştirme ortamıekleyin. - Kaydedin ve tarayıcıda http://localhost:5173/tr (veya
/en) sayfasını yenileyin. - Doğrulayın: Sayfayı aşağı kaydırarak footer’da yeni metni gördüğünüzü kontrol edin.
Hangi dosyaya dokunuldu?
Section titled “Hangi dosyaya dokunuldu?”| Dosya | Açıklama |
|---|---|
app/components/Footer.tsx | Footer bileşeni; copyright metni burada (satır ~149–151). |
Nasıl test edilir?
Section titled “Nasıl test edilir?”npm run devçalışırken değişikliği kaydedin; HMR ile sayfa yenilenir.- Dil sayfalarında (ör.
/tr,/en) footer’ı kontrol edin; tüm dil sayfalarında aynı bileşen kullanılır.
Bu değişikliği bir branch açıp PR olarak gönderebilirsiniz (örn. fix: footer copyright metnini güncelle).
Sorun yaşandığında nereye bakılır?
Section titled “Sorun yaşandığında nereye bakılır?”| Sorun | Bakılacak yer |
|---|---|
| Uygulama ayağa kalkmıyor, DB hatası | Ortam Değişkenleri — DATABASE_URL doğru mu? .dev.vars kökte mi? |
| Stripe webhook yerelde çalışmıyor | Geliştirme Akışı — stripe listen ve STRIPE_WEBHOOK_SECRET güncellemesi. |
| Giriş yapamıyorum / session kayboluyor | Ortam Değişkenleri — BETTER_AUTH_SECRET, BASE_URL / BETTER_AUTH_URL tutarlı mı? |
| Hangi komutu kullanacağım? | Geliştirme Akışı — dev (UI) vs start (API/DB). |
| Route / API nerede tanımlı? | app/routes.ts ve API Referansı ve GraphQL. |
| Veritabanı şeması / tablolar | Veritabanı Şeması ve app/db/schema.ts. |
| Yaygın hatalar (DB, Stripe, auth, Bunny, build, migration) | Hata Ayıklama ve Yaygın Sorunlar. |
Hata ayıklama ve yaygın sorunlar için ayrı bir “Troubleshooting” kılavuzu detay için yukarıdaki tabloda “Yaygın hatalar” satırına bakın.
- İlk gün: Repo klonla →
npm install→.dev.varsoluştur →npm run dev→ footer’da küçük bir metin değişikliği yapıp doğrula. - Okuma sırası: Giriş → Yerel Kurulum → Ortam Değişkenleri → Geliştirme Akışı → Proje Yapısı → Route Haritası → İlgili mimari sayfalar.
- İlk PR: Footer copyright metnini
Footer.tsxiçinde güncelle; yerelde test edip PR aç. - Sorun: Hata Ayıklama ve Yaygın Sorunlar sayfasına bakın; gerekirse Ortam Değişkenleri, Geliştirme Akışı ve ilgili mimari sayfalarına yönlendirilirsiniz.
Bu adımları tamamladıktan sonra proje yapısı ve günlük akış hakkında temel bir fikre sahip olursunuz. Belirli bir özellik (ödeme, admin, eğitmen paneli vb.) üzerinde çalışacaksanız ilgili mimari sayfayı okuyun.