Ana SayfaPlaygroundShowcaseUygulamaDokümanBlog
    • Englishİngilizce
      EN
    • русскийRusça
      RU
    • 日本語Japonca
      JA
    • françaisFransızca
      FR
    • 한국어Korece
      KO
    • 中文Çince
      ZH
    • españolİspanyolca
      ES
    • DeutschAlmanca
      DE
    • العربيةArapça
      AR
    • italianoİtalyanca
      IT
    • British Englishİngiliz İngilizcesi
      EN-GB
    • portuguêsPortekizce
      PT
    • हिन्दीHintçe
      HI
    • TürkçeTürkçe
      TR
    • polskiLehçe
      PL
    • IndonesiaEndonezce
      ID
    • Tiếng ViệtVietnamca
      VI
    • українськаUkraynaca
      UK
    /
    Alt+←
    Uluslararasılaştırma (i18n) nedir?
    SEO ve i18n
    Rehber
    • next-i18next ile i18n
    • next-intl ile i18n
    Çözümünüzde Intlayer kullanın
    • next-i18next otomatikleştir
    • react-i18next otomatikleştir
    • next-intl otomatikleştir
    • react-intl otomatikleştir
    • vue-i18n otomatikleştir
    Karşılaştırmalar
    • next-i18next vs next-intl vs Intlayer
    • react-i18next vs react-intl vs Intlayer
    Dokümantasyon
    1. Blog
    2. Intlayer with next intl
    Oluşturma:2025-01-02Son güncelleme:2025-10-29
    Video eğitimini izleyin

    Bu sayfada bir video eğitimi mevcuttur.

    Bu dokümanı favori AI asistanınıza referans verin
    ChatGPT
    Claude
    DeepSeek
    Google AI mode
    Gemini
    Perplexity
    Mistral
    Grok

    Sorunuzu sorun ve bu sayfaya ve seçtiğiniz AI sağlayıcısına referans vererek belgenin bir özetini alın

    Sürüm Geçmişi

    1. loadJSON eklentisi eklendi
      v7.0.601.11.2025
    2. syncJSON eklentisine geçildi
      v7.0.029.10.2025

    Bu sayfanın içeriği bir yapay zeka kullanılarak çevrildi.

    Orijinal içeriğin İngilizce son sürümünü görüntüleyin
    Bu dokümanı düzenle

    Bu dokümantasyonu geliştirmek için bir fikriniz varsa, lütfen GitHub'da bir çekme isteği göndererek katkıda bulunmaktan çekinmeyin.

    Dokümantasyon için GitHub bağlantısı
    Kopyala

    Belge Markdown'ını panoya kopyala

    Intlayer kullanarak next-intl JSON çevirilerinizi nasıl otomatikleştirirsiniz

    www.youtube.com

    Intlayer nedir?

    Intlayer, geleneksel i18n çözümlerinin eksikliklerini gidermek için tasarlanmış yenilikçi, açık kaynaklı bir uluslararasılaştırma kütüphanesidir. Next.js uygulamalarında içerik yönetimi için modern bir yaklaşım sunar.

    Next-intl ile somut bir karşılaştırma için next-i18next vs. next-intl vs. Intlayer blog yazımıza bakın.

    Neden Intlayer'ı next-intl ile Birleştirmelisiniz?

    Intlayer mükemmel bir bağımsız i18n çözümü sunarken (bakınız Next.js entegrasyon rehberimiz), birkaç nedenle next-intl ile birleştirmek isteyebilirsiniz:

    1. Mevcut kod tabanı: Yerleşik bir next-intl uygulamanız var ve Intlayer'ın geliştirilmiş geliştirici deneyimine kademeli olarak geçmek istiyorsunuz.
    2. Eski gereksinimler: Projeniz mevcut next-intl eklentileri veya iş akışları ile uyumluluk gerektiriyor.
    3. Takım aşinalığı: Ekibiniz next-intl ile rahat çalışıyor ancak daha iyi içerik yönetimi istiyor.
    4. Intlayer özelliklerini kullanma: İçerik beyanı, çeviri otomasyonu, çevirileri test etme ve daha fazlası gibi Intlayer özelliklerini kullanmak istiyorsunuz.

    Bunun için, Intlayer, JSON çevirilerinizi CLI veya CI/CD boru hatlarında otomatikleştirmeye, çevirilerinizi test etmeye ve daha fazlasına yardımcı olmak için next-intl için bir adaptör olarak uygulanabilir.

    Bu rehber, Intlayer'ın üstün içerik beyan sistemi avantajlarından yararlanırken next-intl ile uyumluluğu nasıl koruyacağınızı gösterir.

    İçindekiler

    Intlayer'ı next-intl ile Kurmak için Adım Adım Rehber

    Adım 1: Bağımlılıkları Yükleyin

    Gerekli paketleri yükleyin:

    bash
    Kodu kopyala

    Kodu panoya kopyala

    npm install intlayer @intlayer/sync-json-plugin --save-devnpx intlayer init

    Paket açıklamaları:

    • intlayer: Uluslararasılaştırma yönetimi, içerik beyanı ve oluşturma için temel kütüphane
    • @intlayer/sync-json-plugin: Intlayer içerik beyanlarını next-intl uyumlu JSON formatına aktarmak için eklenti

    Adım 2: JSON'u sarmak için Intlayer eklentisini uygulayın

    Desteklenen yerellerinizi tanımlamak için bir Intlayer yapılandırma dosyası oluşturun:

    Eğer next-intl için JSON sözlüklerini de dışa aktarmak istiyorsanız, syncJSON eklentisini ekleyin:

    intlayer.config.ts
    Kodu kopyala

    Kodu panoya kopyala

    import { Locales, type IntlayerConfig } from "intlayer";import { syncJSON } from "@intlayer/sync-json-plugin";const config: IntlayerConfig = {  internationalization: {    locales: [Locales.ENGLISH, Locales.FRENCH, Locales.SPANISH],    defaultLocale: Locales.ENGLISH,  },  plugins: [    syncJSON({      format: "icu",      source: ({ key, locale }) => `./messages/${locale}/${key}.json`,    }),  ],};export default config;

    syncJSON eklentisi JSON'u otomatik olarak sarar. İçerik mimarisini değiştirmeden JSON dosyalarını okur ve yazar.

    Eğer JSON dosyalarının intlayer içerik beyan dosyaları (.content dosyaları) ile birlikte var olmasını istiyorsanız, Intlayer şu şekilde ilerler:

    plaintext
    Kodu kopyala

    Kodu panoya kopyala

    1. Hem JSON hem de içerik beyan dosyalarını yükler ve bunları intlayer sözlüğüne dönüştürür.2. JSON ile içerik beyan dosyaları arasında çakışma varsa, Intlayer tüm sözlükleri birleştirme işlemi yapacaktır. Bu, eklentilerin önceliğine ve içerik beyan dosyasının önceliğine bağlıdır (tüm ayarlar yapılandırılabilir).

    JSON'u çevirmek için CLI kullanılarak veya CMS aracılığıyla değişiklikler yapılırsa, Intlayer JSON dosyasını yeni çevirilerle güncelleyecektir.

    syncJSON eklentisi hakkında daha fazla ayrıntı için lütfen syncJSON eklentisi dokümantasyonuna bakınız.

    (İsteğe Bağlı) Adım 3: Bileşen başına JSON çevirilerini uygulama

    Varsayılan olarak, Intlayer hem JSON hem de içerik beyan dosyalarını yükler, birleştirir ve senkronize eder. Daha fazla ayrıntı için lütfen içerik beyan dokümantasyonuna bakın. Ancak isterseniz, Intlayer eklentisi kullanarak, kod tabanınızın herhangi bir yerinde yerelleştirilmiş JSON'un bileşen bazında yönetimini de uygulayabilirsiniz.

    Bunun için loadJSON eklentisini kullanabilirsiniz.

    intlayer.config.ts
    Kodu kopyala

    Kodu panoya kopyala

    import { Locales, type IntlayerConfig } from "intlayer";import { loadJSON, syncJSON } from "@intlayer/sync-json-plugin";const config: IntlayerConfig = {  internationalization: {    locales: [Locales.ENGLISH, Locales.FRENCH, Locales.SPANISH],    defaultLocale: Locales.ENGLISH,  },  // Mevcut JSON dosyalarınızı Intlayer sözlükleri ile senkronize tutun  plugins: [    /**     * src dizininde {key}.i18n.json desenine uyan tüm JSON dosyalarını yükler     */    loadJSON({      source: ({ key }) => `./src/**/${key}.i18n.json`,      locale: Locales.ENGLISH,      priority: 1, // Bu JSON dosyalarının `./locales/en/${key}.json` dosyalarından öncelikli olmasını sağlar    }),    /**     * locales dizinindeki JSON dosyalarını yükler ve çıktı ile çevirileri bu dosyalara geri yazar     */    syncJSON({      format: "icu",      source: ({ key, locale }) => `./messages/${locale}/${key}.json`,      priority: 0,    }),  ],};export default config;

    Bu, src dizininde {key}.i18n.json desenine uyan tüm JSON dosyalarını yükleyecek ve bunları Intlayer sözlükleri olarak kullanacaktır.

    Git Yapılandırması

    Otomatik oluşturulan Intlayer dosyalarını göz ardı etmeniz önerilir:

    .gitignore
    Kodu kopyala

    Kodu panoya kopyala

    # Intlayer tarafından oluşturulan dosyaları göz ardı et.intlayer

    Bu dosyalar, derleme süreciniz sırasında yeniden oluşturulabilir ve sürüm kontrolüne dahil edilmesine gerek yoktur.

    VS Code Eklentisi

    Geliştirici deneyimini iyileştirmek için resmi Intlayer VS Code Eklentisini yükleyin:

    VS Code Marketplace'ten yükleyin

    react-i18next otomatikleştir
    react-intl otomatikleştir
    Alt+→

    Bu sayfada

      Tartışmalar anonimdir ve yaygın sorunları ele almak için düzenli olarak incelenir. Özellik fikirleri, belgeleme hakkında geri bildirimler veya Intlayer ile ilgili herhangi bir şeyi paylaşmaktan çekinmeyin, bu girdileri yol haritamızı şekillendirmek ve ürünü geliştirmek için kullanıyoruz.

      npm install intlayer @intlayer/sync-json-plugin --save-devnpx intlayer init
      import { Locales, type IntlayerConfig } from "intlayer";import { syncJSON } from "@intlayer/sync-json-plugin";const config: IntlayerConfig = {  internationalization: {    locales: [Locales.ENGLISH, Locales.FRENCH, Locales.SPANISH],    defaultLocale: Locales.ENGLISH,  },  plugins: [    syncJSON({      format: "icu",      source: ({ key, locale }) => `./messages/${locale}/${key}.json`,    }),  ],};export default config;
      1. Hem JSON hem de içerik beyan dosyalarını yükler ve bunları intlayer sözlüğüne dönüştürür.2. JSON ile içerik beyan dosyaları arasında çakışma varsa, Intlayer tüm sözlükleri birleştirme işlemi yapacaktır. Bu, eklentilerin önceliğine ve içerik beyan dosyasının önceliğine bağlıdır (tüm ayarlar yapılandırılabilir).
      import { Locales, type IntlayerConfig } from "intlayer";import { loadJSON, syncJSON } from "@intlayer/sync-json-plugin";const config: IntlayerConfig = {  internationalization: {    locales: [Locales.ENGLISH, Locales.FRENCH, Locales.SPANISH],    defaultLocale: Locales.ENGLISH,  },  // Mevcut JSON dosyalarınızı Intlayer sözlükleri ile senkronize tutun  plugins: [    /**     * src dizininde {key}.i18n.json desenine uyan tüm JSON dosyalarını yükler     */    loadJSON({      source: ({ key }) => `./src/**/${key}.i18n.json`,      locale: Locales.ENGLISH,      priority: 1, // Bu JSON dosyalarının `./locales/en/${key}.json` dosyalarından öncelikli olmasını sağlar    }),    /**     * locales dizinindeki JSON dosyalarını yükler ve çıktı ile çevirileri bu dosyalara geri yazar     */    syncJSON({      format: "icu",      source: ({ key, locale }) => `./messages/${locale}/${key}.json`,      priority: 0,    }),  ],};export default config;
      # Intlayer tarafından oluşturulan dosyaları göz ardı et.intlayer