Vercel ve Next.js Kullanımı: Sıfır Hata ile Yayın Yapmak

Vercel ve Next.js Kullanımı: Sıfır Hata ile Yayın Yapmak

CodeMareFi'ye Hoş Geldiniz!Yazılım dünyasındaki en güncel ve işlevsel kodları sizlerle paylaşmaya devam ediyoruz. Bu makalemizde, projelerinizde zaman kazanmanızı sağlayacak ve sisteminizi bir üst seviyeye taşıyacak önemli bir konuyu detaylıca ele alacağız. Hazırladığımız bu rehber, hem yeni başlayanlar hem de profesyonel geliştiriciler için özenle derlenmiştir. Aşağıdaki adımları ve kod bloklarını dikkatlice uygulayarak projenize sorunsuz bir entegrasyon sağlayabilirsiniz. Hazırsanız, detaylara geçelim.

Vercel + Next.js = Sıfır Hata ile Yayın

GitHub'dan Vercel'e bağlanarak dakikalar içinde profesyonel bir yayın hattı kurabilirsiniz.

Next.js, React'in üstüne inşa edilmiş, Vercel tarafından geliştirilen ve bugün dünyanın en çok kullanılan web framework'lerinden biridir. Vercel ise Next.js uygulamalarını deploy etmek için birebir optimize edilmiş bir hosting platformıdur. İkisi birlikte kullanıldığında geliştirici deneyimi üst seviyeye çıkar.

1. Neden Next.js?

  • File-Based Routing: Dosya oluşturmak = sayfa oluşturmak. app/hakkimizda/page.tsx otomatik /hakkimizda URL'si olur.
  • Server Components: React bileşenlerini sunucuda render ederek sayfa yükleme hızını dramatik artırır.
  • API Routes: app/api/ klasörü altındaki dosyalar otomatik API endpoint'ine dönüşür.
  • Image Optimization: <Image> bileşeni görselleri otomatik optimize eder ve WebP formatına çevirir.
  • SEO Desteği: generateMetadata ile her sayfaya özel meta tag'leri kolayca tanımlarsınız.

2. Proje Oluşturma

# Next.js 14 projesi oluştur
npx create-next-app@latest benim-projem

# Soruları yanıtlama:
# TypeScript: Yes
# ESLint: Yes
# Tailwind CSS: No (isteyen ekleyebilir)
# App Router: Yes  <- ÖNEMLİ!
# src/ directory: No

# Proje dizinine gir
cd benim-projem

# Geliştirme sunucusunu başlat
npm run dev

Tarayıcıdan http://localhost:3000 adresine giderek uygulamanizi görebilirsiniz.

3. App Router Yapısı

my-app/
├── app/
│   ├── layout.tsx       ← Tüm sayfaların kapsayıcısı
│   ├── page.tsx         ← Ana sayfa (/)
│   ├── hakkimizda/
│   │   └── page.tsx     ← /hakkimizda sayfası
│   ├── blog/
│   │   ├── page.tsx     ← /blog listesi
│   │   └── [slug]/
│   │       └── page.tsx ← /blog/dinamik-sayfa
│   └── api/
│       └── kullanici/
│           └── route.ts ← /api/kullanici endpoint'i
├── public/          ← Statik dosyalar (resimler vb.)
└── next.config.ts   ← Konfigürasyon

4. Statik Sayfa Oluşturma (SSG)

Next.js, dinamik sayfaları bile build anında önceden render edebilir. Bu AdSense onayı ve SEO için çok önemlidir:

// app/blog/[slug]/page.tsx
export async function generateStaticParams() {
  const yazilar = await getYazilar(); // API veya veritabani
  
  return yazilar.map((yazi) => ({
    slug: yazi.slug,
  }));
}

export async function generateMetadata({ params }) {
  const yazi = await getYaziBySlug(params.slug);
  return {
    title: yazi.baslik + ' | CodeMareFi',
    description: yazi.ozet,
    openGraph: {
      images: [yazi.thumbnail],
    },
  };
}

export default async function YaziBlogSayfasi({ params }) {
  const yazi = await getYaziBySlug(params.slug);
  return (
    <article>
      <h1>{yazi.baslik}</h1>
      <div dangerouslySetInnerHTML={{ __html: yazi.icerik }} />
    </article>
  );
}

5. Vercel'e Deploy

  1. Projenizi GitHub'a push edin.
  2. vercel.com'a gidin ve GitHub hesabınızla bağlanın.
  3. "Import Project" ile reponuzu seçin.
  4. Environment variables (SUPABASE_URL vb.) ekleyin.
  5. "Deploy" butonuna basın. Dakikalar içinde canlıda!

Her git push sonrasında Vercel otomatik olarak yeni bir deploy tetikler. PR'lar için otomatik önizleme URL'leri oluşturur.

6. Performans Optimizasyonu

// next.config.ts — temel optimizasyonlar
import type { NextConfig } from 'next';

const config: NextConfig = {
  images: {
    formats: ['image/webp', 'image/avif'], // Otomatik WebP
    remotePatterns: [
      { hostname: 'supabase.co' }
    ],
  },
  compress: true,
  poweredByHeader: false, // Gizlilik için
};

export default config;
CodeMareFi Tavsiyesi:

Next.js + Vercel kombinasyonu, hızlı site infrası için en iyi seçeneklerden biridir. Sayfalarınızı statik olarak üretmek (SSG) hem SEO hem de yükleme hızı açısından size dev avantaj sağlar. Google AdSense de hızlı yüklenen siteleri öncelikli olarak onaylar.

Sonuç ve Değerlendirme

Bu makalemizde paylaştığımız kodlar ve teknik bilgiler, sisteminizin performansını artıracak ve sizlere daha esnek bir geliştirme imkanı sunacaktır. CodeMareFi üzerinden paylaştığımız tüm içerikler, güncel yazılım standartlarına uygun olarak optimize edilmiş olup, projelerinizde güvenle kullanabileceğiniz şekilde hazırlanmıştır.

Eğer kurulum sırasında herhangi bir sorunla karşılaşırsanız, kod çalışmazsa veya sisteme ekstra özellikler eklemek isterseniz, iletişim kanallarımızdan ya da Discord sunucumuza katılarak diğer geliştirici arkadaşlarımızdan anında destek alabilirsiniz. Daha fazla ücretsiz kod paylaşımı, web tasarım rehberleri ve teknoloji makaleleri için sitemizi takipte kalmayı unutmayın. İyi kodlamalar!

0 Yorum

YORUM YAPMAK İÇİN SİSTEME SIZMANIZ GEREKİYOR

Lütfen yukarıdaki butonu kullanarak giriş yapın veya kimlik oluşturun.

Yorumlar yükleniyor...