- 2025 için Full-Stack React Tech Stack
- Bir SaaS ürünü veya minimum uygulanabilir ürün (MVP) geliştirirken faydalı olan teknolojileri tanıtıyor
- Next.js: React tabanlı bir framework olarak yönlendirme, önbellekleme gibi çeşitli özellikleri varsayılan olarak sunar ve sunucu bileşenleri ile sunucu fonksiyonları gibi en yeni React özellikleri üzerinden backend ile bağlantıyı destekler
- Astro: Ürünün landing page'ini oluşturmak için isteğe bağlı bir araçtır; hızlı landing page üretimi ve geliştirici deneyimini iyileştirmek için kullanılır
- Server Components: Sunucuda çalışarak veritabanı erişimi gibi işlemleri mümkün kılan bileşenlerdir ve full-stack React uygulaması geliştirme biçimini dönüştürür
- Server Functions: React bileşenlerinden yalnızca fonksiyon çağrısıyla sunucu tarafı kodunu çalıştırmayı sağlayan bir özelliktir ve API endpoint'lerini otomatik olarak oluşturur
- Server Actions: Sunucu fonksiyonlarının bir alt kümesidir; kullanılabilirliği artıran kütüphaneler vardır, ancak doğrudan uygulamak da mümkündür
- Tailwind CSS: Hızlı ürün geliştirme ve uzun vadeli CSS bakımı için önerilen bir araçtır; alıştıktan sonra geleneksel CSS yaklaşımına dönmek zor olabilir
- Shadcn UI: Tailwind CSS ile sorunsuz entegre olan bir UI kütüphanesidir; sürümsüz bir sistem sunarak UI yönetimine taze bir yaklaşım getirir
- Lucide React: Shadcn UI ile birlikte kullanılan ikon kütüphanesidir; başka güçlü alternatifler çıkana kadar değiştirme ihtiyacı düşüktür
- TypeScript: JavaScript projelerinde endüstri standardıdır; geliştirici deneyimini iyileştirir, hataları azaltır ve kodun sürdürülebilirliğini artırır
- Zod: TypeScript ile iyi uyum sağlayan bir doğrulama kütüphanesidir; çoğunlukla sunucu tarafı doğrulamada kullanılır, istemci tarafı formlarda ise karmaşıklığı azaltmak için yerel HTML doğrulaması kullanılır
- nuqs: Next.js içinde URL durumunu (ör. arama, sıralama, sayfalama) tip güvenli şekilde yönetmek için kullanılan bir araçtır; diğer framework'lerde yerleşik özellikler veya başka kütüphaneler kullanılabilir
- Zustand: İstemci tarafı durum yönetimi için isteğe bağlı bir araçtır; URL durumu, istemci tarafı veri önbellekleme ve sunucu odaklı React uygulamalarının gelişmesiyle kullanım sıklığı azalmaktadır
- React Query: Sonsuz kaydırma gibi karmaşık istemci tarafı veri çekme senaryolarında kullanılan isteğe bağlı bir araçtır; projenin karmaşıklığı düşükse yalnızca sunucu bileşenleri de yeterli olabilir
- Prisma (ORM): Güvenilir bir ORM tercihidir; güncel trendler doğrultusunda Drizzle ile değiştirilebilir, ancak şu anda Prisma tercih edilmektedir
- Supabase (veritabanı): Postgres veritabanı sunan bir hizmettir; esneklik için yalnızca veritabanı kullanılır ve Prisma ile bağlanarak başka veritabanlarına geçiş kolaylaştırılır
- Lucia (kimlik doğrulama): Artık bakımı yapılmıyor, ancak Oslo, Argon2, Arctic vb. kullanarak bir kimlik doğrulama sistemi kurmayı öğrenmek için kaynak olarak değerlidir; böylece üçüncü taraf çözümlere bağlı kalmadan özel bir kimlik doğrulama sistemi uygulanabilir
- S3 (dosya yükleme): AWS S3, presigned URL'ler ve AWS IAM kullanılarak esnek ve düşük maliyetli bir dosya depolama çözümü kurulabilir; çoğu üçüncü taraf hizmet de aynı API'yi kullandığından gerektiğinde sağlayıcı değiştirmek kolaydır
- Inngest (kuyruk): Backend'de karmaşık işlerin orkestrasyonu için kullanılan bir araçtır; zamana duyarlı olmayan arka plan işleri için uygundur ve kurulumu ile bakımı kolay bir kuyruk sistemi sunar
- React Email + Resend: İlki React bileşenleriyle e-posta şablonları oluşturmayı sağlar, ikincisi ise e-posta gönderimi için mükemmel bir çözümdür; daha önce kullanılan Postmark'tan Resend'e geçilmiş ve memnun kalınmıştır
- Vercel (hosting): Yıllardır kullanılan bir full-stack uygulama hosting çözümüdür; self-hosting istenirse Hetzner/DigitalOcean ve Coolify önerilir
- CloudFlare (alan adı): Çeşitli alan adı yönetimi deneyimlerinden sonra, şu anda CloudFlare'in başarılı UI'ı ve DNS kayıtlarına ek bilgi ekleyebilme özelliği nedeniyle memnuniyetle kullanılmaktadır
- Stripe (ödeme altyapısı): Yıllardır kullanılan bir ödeme gateway'idir; mükemmel dokümantasyon ve API sunar, ancak özellikler ve API kapsamı büyüdükçe karmaşık hale gelebilir
- Test ve araçlar: React Testing Library ile Cypress/Playwright kombinasyonu iyi bir seçimdir; ESLint'i (gelecekte Biome), Prettier'i önerir. UI dokümantasyonu için hâlâ Storybook kullanılır ve terminalde TypeScript çalıştırmak için
tsx kullanılır
1 yorum
nuqs'u öğreniyorum, teşekkürler.