macOS Yerel Ortamında ServBay ile React Projesi Oluşturma ve Çalıştırma
React Nedir?
React, Meta (eski adıyla Facebook) ve topluluk üyeleri tarafından geliştirilen, kullanıcı arayüzleri (UI) oluşturmak için kullanılan açık kaynaklı bir JavaScript kütüphanesidir. Bileşen tabanlı yaklaşımı sayesinde, geliştiriciler karmaşık ve sürdürülebilir tek sayfalık uygulamalar (SPA) ve büyük ölçekli web uygulamalarının görünüm katmanını verimli bir şekilde oluşturabilir. React'ın temel avantajları arasında bildirisel programlama yapısı, yüksek performanslı sanal DOM güncelleme mekanizması ve kapsamlı bir topluluk ekosistemi yer alır.
React'ın Temel Özellikleri ve Avantajları
- Bileşen Tabanlı Geliştirme: Karmaşık arayüzleri bağımsız ve tekrar kullanılabilir bileşenlere ayırarak kodun sürdürülebilirliğini ve tekrar kullanımını artırır.
- Bildirisel Görünümler: Arayüz durumunu basitçe tanımlarsınız, DOM'un güncellenmesini React yönetir, böylece UI geliştirme işleri kolaylaşır.
- Sanal DOM (Virtual DOM): DOM'un bellekte tutulan bir kopyası ile çalışarak, farklılıkları tespit eder ve gerçek DOM işlemlerini minimize ederek yüksek performans sağlar.
- Tek Yönlü Veri Akışı: Verilerin yukarıdan aşağıya aktığı bir yapı ile, uygulama durumundaki değişikliklerin takibi ve yönetimi çok daha kolaydır.
- JSX: JavaScript kodu içinde HTML'e benzer bir yapı kullanma imkanı sağlayan bir sözdizimi uzantısıdır, kodun okunabilirliğini artırır.
- Güçlü Ekosistem: React Router, Redux/Zustand/MobX, Material UI gibi pek çok üçüncü parti kütüphane ve büyük bir topluluk desteğine sahiptir. Bu ekosistem; durum yönetimi, yönlendirme, UI bileşenleri ve daha fazlasını kapsar.
React ile geliştiriciler, modern ve yüksek performanslı web uygulamalarını çok daha hızlı ve verimli bir şekilde geliştirebilirler.
ServBay ile React Geliştirme & Üretim Ortamı Kurulumu
ServBay, macOS kullanıcıları için Node.js gibi birçok paket içeren güçlü bir yerel web geliştirme ortamıdır. Bu rehberde, ServBay'in Node.js ortamı ve Websites özelliğinden faydalanarak adım adım bir React projesinin oluşturulması, yapılandırılması ve çalıştırılması anlatılmaktadır. Geliştirme modunda ters proxy, dağıtım (production) modunda ise statik dosya servisinin nasıl kurulacağı örneklendirilmektedir.
Ön Gereksinimler
Başlamadan önce aşağıdakilerin hazır olduğuna emin olun:
- ServBay'ın Kurulumu: macOS cihazınızda ServBay'ı başarılı bir şekilde yükleyip çalıştırdınız.
- Node.js Paketi Kurulumu: ServBay arayüzü veya terminal üzerinden Node.js paketini yüklediniz. Ayrıntılı adımlar için ServBay ile Node.js Paketi Kurulumu dokümanını inceleyebilirsiniz. ServBay, Node.js sürüm ve ortam değişkenlerini otomatik olarak yönetir.
React Projesi Oluşturma
Modern frontend projelerini hızla başlatmak için Vite aracını kullanacağız. Vite, hızlı başlatma süresi ve anında Hot Module Replacement (HMR) ile gelişmiş bir deneyim sunar ve klasik create-react-app yerine yeni React projelerinde yaygın olarak tercih edilir.
Terminalden Site Kök Dizininize Gidin
Terminal uygulamanızı açın. ServBay'in önerdiği varsayılan web sitesi kök dizini
/Applications/ServBay/wwwyoludur. Bu dizine geçmek için:bashcd /Applications/ServBay/www1Vite ile Yeni React Projesi Oluşturun
Aşağıdaki komutu çalıştırarak
create-vitearacı ileservbay-react-demoadında yeni bir proje oluşturun vereactşablonunu seçin:bashnpx create-vite servbay-react-demo --template react1npxnpm paketlerini global yüklemeden anında çalıştırmaya yarar ve her zaman en güncelcreate-vitesürümünü kullanmanızı sağlar.create-viteVite’in resmi proje başlatıcısıdır.servbay-react-demooluşturulacak proje klasörünüzün adıdır.--template reactReact şablonunun kullanılacağını belirtir.
Ekrandaki yönergeleri takip ederek proje kurulumunu tamamlayın.
Proje Dizinine Girin ve Bağımlılıkları Yükleyin
Hazırladığınız proje dizinine girin ve npm ile gerekli bağımlılıkları yükleyin:
bashcd servbay-react-demo npm install1
2- Dilerseniz, paket yöneticisi olarak Yarn ya da pnpm kullanıyorsanız
yarn installveyapnpm installkomutlarını da tercih edebilirsiniz.
- Dilerseniz, paket yöneticisi olarak Yarn ya da pnpm kullanıyorsanız
React Proje İçeriğini Düzenleme (İsteğe Bağlı)
Kurulumu başarıyla tamamlayıp tamamlamadığınızı kontrol etmek için ana sayfa içeriğini hızlıca değiştirebiliriz.
src/App.jsxveyasrc/App.tsxDosyasını AçınProje dizininde, kullandığınız şablona göre (JavaScript veya TypeScript)
src/App.jsxveyasrc/App.tsxdosyasını favori kod editörünüzle açın.İçeriği Düzenleyin
Ana içeriği oluşturan render bölümünü bulun ve "Hello ServBay!" metni ile değiştirin:
javascript// ... diğer importlar ... import './App.css'; function App() { // ... diğer kodlar ... return ( <> {/* ... diğer elemanlar ... */} <h1>Hello ServBay!</h1> {/* ... diğer elemanlar ... */} </> ); } export default App;1
2
3
4
5
6
7
8
9
10
11
12
13
14
15Dosyanızı kaydedin.
Geliştirme Moduna Geçiş
Geliştirme aşamasında, sıcak modül güncelleme (HMR) gibi kolaylıklar sunan bir yerel geliştirme sunucusu kullanılır. ServBay, dış isteklerin geliştirme sunucunuza yönlendirilmesini sağlayan bir ters proxy sunucusu ile çalışabilir.
Terminalde Geliştirme Sunucusunu Başlatın
servbay-react-demoproje kök dizininde aşağıdaki komut ile Vite geliştirme sunucusunu belirli bir portta (ör: 8585) başlatın:bashnpm run dev -- --port 85851npm run devkomutu, genellikle Vite geliştirme sunucusunu başlatandevscript’ini çalıştırır.-- --port 8585ile ilgili portu belirtmiş olursunuz.
Sunucu başladığında genellikle terminalde örneğin
http://localhost:8585gibi bir adres gösterilir. Terminal penceresini açık bırakın, sunucuyu kapatmayın.ServBay’de Site Ters Proxy’sini Yapılandırın
ServBay uygulamasını açın ve Websites bölümüne gidin. Yeni bir web sitesi eklemek için ekle düğmesine tıklayın ve aşağıdaki gibi ayarlayın:
- Ad (Name):
ServBay React Dev(Açıklayıcı bir isim) - Alan Adı (Domain):
servbay-react-dev.servbay.demo(ServBay markasına uygun demo alan adı) - Site Türü (Site Type):
Ters Proxy (Reverse Proxy)olarak seçin - Proxy IP:
127.0.0.1(Sunucu yerel olarak çalışıyor) - Proxy Portu:
8585(Başlattığınız geliştirme sunucusunun portu)
Kaydedin. ServBay, dahili web sunucusunda (Caddy veya Nginx)
servbay-react-dev.servbay.demoalan adına gelen isteklerihttp://127.0.0.1:8585adresine yönlendirir.ServBay’de web sitesi eklemeye dair detaylı adımlar için ServBay Web Sitesi Yönetimi dokümanını inceleyebilirsiniz.
- Ad (Name):
Geliştirme Sitesini Ziyaret Edin
Tarayıcınızda az önce ayarladığınız alan adını açın:
https://servbay-react-dev.servbay.demo- ServBay’in gelişmiş özellikleri sayesinde geliştirici siteniz otomatik SSL sertifikası (ServBay User CA veya ServBay Public CA tarafından imzalanmış) ile korunmuş olur ve HTTPS ile güvenli bağlantı sağlanır. Daha fazla bilgi için ServBay ile Sitenizi SSL ile Koruma dokümanına bakabilirsiniz.
- Kod editöründe dosyalarınızı değiştirip kaydettiğinizde sayfa tarayıcıda otomatik olarak güncellenecektir; bu Hot Module Replacement (HMR) özelliğidir.
Üretim Ortamı İçin Derleme
React projenizi tamamladığınızda ve dağıtıma hazır olduğunda, optimize edilmiş bir üretim sürümü oluşturmanız gerekir.
Terminalde Üretim Derlemesini Oluşturun
Proje kökünde aşağıdaki komutu çalıştırın:
bashnpm run build1Bu komut,
package.jsondosyasında tanımlıbuildscript’ini çalıştırır. Vite tabanlı React projelerinde kaynak kodunuzu derler, paketler ve optimize edilmiş statik dosyalar (HTML, CSS, JS, medya dosyaları) olarak genellikledistklasörüne çıkarır. Derlemeyi başarıyla tamamladığında terminalde bir bildirim göreceksiniz.ServBay ile Statik Dosya Sunumu Ayarlayın
Üretim derlemesi sonucu oluşan
distklasörü doğrudan bir web sunucusu tarafından servis edilebilen dosyaları içerir. ServBay’de bu dizini gösterecek şekilde statik site tanımlayabiliriz.ServBay uygulamasında Websites bölümüne gidin ve aşağıdaki gibi yeni bir web sitesi ekleyin:
- Ad (Name):
ServBay React Prod(Açıklayıcı bir isim) - Alan Adı (Domain):
servbay-react.servbay.demo(Üretim ve geliştirme ortamınız için farklı bir demo domain) - Site Türü (Site Type):
Statik (Static)seçili olmalı - Site Kök Dizini (Website Root Directory):
/Applications/ServBay/www/servbay-react-demo/dist(Dağıtım dosyalarını içeren klasör)
Kaydedin. ServBay dahili web sunucusunu ayarlayarak,
distklasöründeki dosyaları doğrudan ziyaretçilere sunmaya başlar.- Ad (Name):
Üretim Sitesini Ziyaret Edin
Tarayıcıda belirlediğiniz üretim domainine gidin:
https://servbay-react.servbay.demoArtık optimize edilmiş ve derlenmiş üretim sürümünü görüyorsunuz. Bu site de ServBay sayesinde otomatik olarak SSL destekli yayınlanmaktadır.
Özet
Yukarıdaki adımların ardından, ServBay ile macOS ortamında bir React projesi başarıyla oluşturup hem geliştirme modunda ters proxy hem de üretim modunda statik dosya servislerini yapılandırdınız. ServBay, yerel geliştirme ortamını kurma ve yönetme süreçlerini önemli ölçüde kolaylaştırır; özellikle dahili Node.js desteği, esnek site yapılandırmaları (ters proxy ve statik servis) ve otomatik SSL özellikleriyle React geliştiricileri için büyük bir avantaj sunar. Bundan sonra React uygulamanızda geliştirme, test ve dağıtım işlemlerine devam edebilirsiniz.
