Bu proje, film verilerini listeleyen, kullanıcıların favori filmlerini yönetmesine olanak tanıyan bir React uygulamasıdır. Geliştirme ve üretim ortamları için webpack5+ kullanılarak yapılandırılmıştır.
- Node.js ve npm/yarn
- json-server ve yarn paketlerinin global olarak yüklenmesi gerekmektedir.
Aşağıdaki komutlarla json-server ve yarn paketlerini global olarak yükleyebilirsiniz:
npm install -g json-server
npm install -g yarnProje dosyalarını klonladıktan sonra gerekli bağımlılıkları yüklemek için aşağıdaki komutları çalıştırın:
-
Projeyi klonla:
git clone https://github.com/jsdeveloperr/react-typeScript-webpack5.git cd react-typeScript-webpack5 -
Tüm bağımlılıkları yükleyin:
yarn install
-
Geliştirme ortamında projeyi başlatmak için:
yarn dev
Bu komut hem uygulamayı (
localhost:3000), hem de JSON sunucusunu (localhost:3001) başlatır. -
Üretim için projeyi derlemek için:
yarn build
Aşağıdaki komutlar geliştirme sırasında kullanılabilir:
yarn dev: Uygulamayı ve JSON sunucusunu aynı anda çalıştırır. Webpack ve JSON Server için paralel bir geliştirme ortamı sağlar.yarn start: Yalnızca webpack dev sunucusunu başlatır. Uygulamanın geliştirme modunda çalışmasını sağlar.yarn start:server: JSON Server'ı başlatır vedb.jsondosyasındaki verileri sunar.
Üretim için optimize edilmiş bir yapı oluşturmak için aşağıdaki komutu çalıştırabilirsiniz:
yarn buildBu komut, dist klasöründe minify edilmiş ve optimize edilmiş dosyaları oluşturur.
src/: Uygulamanın temel kaynak kodlarını içerir.src/components/: Tekrar kullanılabilir React bileşenlerini içerir.src/pages/: Her bir sayfa bileşenini barındırır.src/layouts/: Sayfa düzenlerini içeren bileşenler.src/context/: React Context API ile yönetilen global durum yönetimi dosyalarını içerir._data/db.json: JSON Server tarafından kullanılan sahte API verilerini içerir.webpack.config.js: Webpack yapılandırmasını içeren dosya.
- React: Kullanıcı arayüzünü oluşturmak için.
- React Router: Sayfalar arası geçiş sağlamak için.
- React Hook Form: Form yönetimi ve doğrulama işlemleri için.
- Yup: Form doğrulama işlemleri için.
- Axios: API isteklerini yönetmek için.
- JSON Server: Yerel bir API sunucusu olarak kullanılır.
- Webpack: Uygulama dosyalarını paketlemek için.
- React ve React DOM:
^18.3.1sürümü - React Hook Form:
^7.53.1 - React Router DOM:
^6.27.0 - Axios:
^1.7.7 - Yup:
^1.4.0
- Webpack:
^5.96.1(Webpack CLI ve Webpack Dev Server dahil) - Sass ve Sass Loader:
^1.80.6ve^16.0.3 - ts-loader: TypeScript için gerekli
- HTML Webpack Plugin: HTML dosyasını webpack ile yapılandırmak için
- Concurrently: JSON Server ve webpack dev sunucusunu aynı anda çalıştırmak için
- Bağlantı Noktaları: JSON Server,
3001portunda çalışır, uygulama ise3000portunda çalışır. - Proje Tarayıcı Uyumluluğu: Proje,
browserslistayarlarına göre modern tarayıcılar için optimize edilmiştir.
Bu proje MIT Lisansı ile lisanslanmıştır.
