Yaklaşan Intlayer sürümleri hakkında bildirim alın
    Oluşturma:2025-09-07Son güncelleme:2025-09-07

    Neden Intlayer'ı düşünmelisiniz?

    Intlayer nedir?

    Intlayer, özellikle JavaScript geliştiricileri için tasarlanmış bir uluslararasılaştırma kütüphanesidir. Kodunuzun her yerinde içeriğinizi bildirmenize izin verir. Çok dilli içerik bildirimlerini kodunuzda kolayca entegre etmek için yapılandırılmış sözlüklere dönüştürür. TypeScript kullanarak Intlayer, geliştirmenizi daha güçlü ve verimli hale getirir.

    Intlayer neden oluşturuldu?

    Intlayer, next-intl, react-i18next, react-intl, next-i18next, react-intl ve vue-i18n gibi tüm yaygın i18n kütüphanelerini etkileyen yaygın bir sorunu çözmek için oluşturuldu.

    Bu çözümlerin tümü, içeriğinizi listelemek ve yönetmek için merkezi bir yaklaşım benimser. Örneğin:

    bash
    .├── locales│   ├── en.json│   ├── es.json│   └── fr.json├── i18n.ts└── src    └── components        └── MyComponent            └── index.tsx

    Veya burada isim alanları kullanarak:

    bash
    .├── locales│   ├── en│   │  ├── footer.json│   │  └── navbar.json│   ├── fr│   │  ├── footer.json│   │  └── navbar.json│   └── es│      ├── footer.json│      └── navbar.json├── i18n.ts└── src    └── components        └── MyComponent            └── index.tsx

    Bu tür bir mimari, geliştirme sürecini yavaşlatır ve kod tabanını bakım için daha karmaşık hale getirir, birkaç nedenden dolayı:

    1. Oluşturulan herhangi bir yeni bileşen için şunları yapmalısınız:

      • locales klasöründe yeni kaynak/isim alanını oluşturun
      • Yeni isim alanını sayfanızda içe aktarmayı unutmayın
      • İçeriğinizi çevirin (genellikle AI sağlayıcılarından kopyala/yapıştır ile manuel olarak yapılır)
    2. Bileşenlerinizde yapılan herhangi bir değişiklik için şunları yapmalısınız:

      • İlgili kaynak/isim alanını arayın (bileşenden uzak)
      • İçeriğinizi çevirin
      • İçeriğinizin herhangi bir yerel ayar için güncel olduğundan emin olun
      • İsim alanınızın kullanılmayan anahtarlar/değerler içermediğinden emin olun
      • JSON dosyalarınızın yapısının tüm yerel ayarlar için aynı olduğundan emin olun

    Bu çözümleri kullanan profesyonel projelerde, içeriğin çevirisini yönetmeye yardımcı olmak için yerelleştirme platformları sıklıkla kullanılır. Ancak, bu büyük projeler için hızla maliyetli hale gelebilir.

    Bu sorunu çözmek için, Intlayer CSS (styled-components), türler, dokümantasyon (storybook) veya birim testleri (jest) ile sıklıkla yaptığımız gibi içeriğinizi bileşen başına kapsamlandıran ve içeriğinizi bileşeninizle yakın tutan bir yaklaşım benimser.

    bash
    .└── components    └── MyComponent        ├── index.content.ts        ├── index.test.tsx        ├── index.stories.tsx        └── index.tsx
    ./components/MyComponent/index.content.ts
    import { t, type Dictionary } from "intlayer";const componentExampleContent = {  key: "component-example",  content: {    myTranslatedContent: t({      en: "Hello World",      es: "Hola Mundo",      fr: "Bonjour le monde",    }),  },} satisfies Dictionary;export default componentExampleContent;
    ./components/MyComponent/index.tsx
    import { useIntlayer } from "react-intlayer";export const ComponentExample = () => {  const { myTranslatedContent } = useIntlayer("component-example");  return <span>{myTranslatedContent}</span>;};

    Bu yaklaşım şunları yapmanıza izin verir:

    1. Geliştirme hızını artırın

      • .content.{{ts|mjs|cjs|json}} dosyaları bir VSCode uzantısı kullanarak oluşturulabilir
      • IDE'nizdeki otomatik tamamlama AI araçları (GitHub Copilot gibi) içeriğinizi bildirmenize yardımcı olabilir, kopyala/yapıştırı azaltır
    2. Kod tabanınızı temizleyin

      • Karmaşıklığı azaltın
      • Bakım kolaylığını artırın
    3. Bileşenlerinizi ve ilgili içeriklerini daha kolay çoğaltın (Örnek: giriş/kayıt bileşenleri vb.)

      • Diğer bileşenlerin içeriğini etkileme riskini sınırlayarak
      • Harici bağımlılıklar olmadan içeriğinizi bir uygulamadan diğerine kopyala/yapıştırarak
    4. Kod tabanınızı kullanılmayan bileşenler için kullanılmayan anahtarlar/değerlerle kirletmekten kaçının

      • Bir bileşeni kullanmazsanız, Intlayer ilgili içeriğini içe aktarmaz
      • Bir bileşeni silerseniz, aynı klasörde bulunduğu için ilgili içeriğini kaldırmayı daha kolay hatırlarsınız
    5. Çok dilli içeriğinizi bildirmek için AI ajanları için akıl yürütme maliyetini azaltın

      • AI ajanı içeriğinizi nerede uygulayacağını bilmek için tüm kod tabanınızı taramak zorunda kalmaz
      • Çeviriler IDE'nizdeki otomatik tamamlama AI araçları (GitHub Copilot gibi) tarafından kolayca yapılabilir
    6. Yükleme performansını optimize edin

      • Bir bileşen tembel yüklenirse, ilgili içeriği aynı zamanda yüklenir

    Intlayer'ın ek özellikleri

    Özellik Açıklama
    Özellik Çapraz-Çerçeve Desteği

    Intlayer Next.js, React, Vite, Vue.js, Nuxt, Preact, Express ve daha fazlası dahil olmak üzere tüm büyük çerçeveler ve kütüphanelerle uyumludur.
    Özellik JavaScript Güçlü İçerik Yönetimi

    İçeriğinizi verimli bir şekilde tanımlamak ve yönetmek için JavaScript'in esnekliğinden yararlanın.

    - İçerik bildirimi
    Özellik Yerel Ayar Başına İçerik Bildirim Dosyası

    İçeriğinizi bir kez bildirerek geliştirmenizi hızlandırın, ardından otomatik oluşturma.

    - Yerel Ayar Başına İçerik Bildirim Dosyası
    Özellik Tür Güvenli Ortam

    İçerik tanımlarınızın ve kodunuzun hatasız olduğundan emin olmak için TypeScript'ten yararlanın, aynı zamanda IDE otomatik tamamlamasından faydalanın.

    - TypeScript konfigürasyonu
    Özellik Basitleştirilmiş Kurulum

    Minimum konfigürasyonla hızlıca çalışmaya başlayın. Uluslararasılaştırma, yönlendirme, AI, inşa ve içerik işleme için ayarları kolayca ayarlayın.

    - Next.js entegrasyonunu keşfedin
    Özellik Basitleştirilmiş İçerik Alma

    Her içerik parçası için t fonksiyonunuzu çağırmaya gerek yok. Tek bir kanca kullanarak tüm içeriğinizi doğrudan alın.

    - React entegrasyonu
    Özellik Tutarlı Sunucu Bileşeni Uygulaması

    Next.js sunucu bileşenleri için mükemmel şekilde uygundur, istemci ve sunucu bileşenleri için aynı uygulamayı kullanın, her sunucu bileşeninde t fonksiyonunuzu geçirmeye gerek yok.

    - Sunucu Bileşenleri
    Özellik Düzenlenmiş Kod Tabanı

    Kod tabanınızı daha düzenlenmiş tutun: 1 bileşen = aynı klasörde 1 sözlük. Çeviriler ilgili bileşenlerine yakın, bakım kolaylığını ve netliği artırır.

    - Intlayer nasıl çalışır
    Özellik Gelişmiş Yönlendirme

    Uygulama yönlendirmesi için tam destek, Next.js, React, Vite, Vue.js vb. için karmaşık uygulama yapılarına sorunsuz uyum sağlar.

    - Next.js entegrasyonunu keşfedin
    Özellik Markdown Desteği

    Gizlilik politikaları, dokümantasyon vb. gibi çok dilli içerik için yerel ayar dosyalarını ve uzak Markdown'ı içe aktarın ve yorumlayın. Markdown meta verilerini kodunuzda erişilebilir hale getirin.

    - İçerik dosyaları
    Özellik Ücretsiz Görsel Düzenleyici & CMS

    İçerik yazarları için ücretsiz bir görsel düzenleyici ve CMS mevcuttur, yerelleştirme platformuna ihtiyaç duymadan. Git kullanarak içeriğinizi senkronize tutun veya CMS ile tamamen veya kısmen dışa aktarın.

    - Intlayer Düzenleyici
    - Intlayer CMS
    Özellik Ağaç Sallanabilir İçerik

    Ağaç sallanabilir içerik, son paketin boyutunu azaltır. İçeriği bileşen başına yükler, paketinize kullanılmayan herhangi bir içeriği hariç tutar. Uygulama yükleme verimliliğini artırmak için tembel yüklemeyi destekler.

    - Uygulama inşa optimizasyonu
    Özellik Statik Oluşturma

    Statik Oluşturmayı engellemez.

    - Next.js entegrasyonu
    Özellik AI Güçlü Çeviri

    Intlayer'ın gelişmiş AI güçlü çeviri araçlarını kullanarak kendi AI sağlayıcınız/API anahtarınızı kullanarak web sitenizi tek tıkla 231 dile dönüştürün.

    - CI/CD entegrasyonu
    - Intlayer CLI
    - Otomatik doldurma
    Özellik MCP Sunucu Entegrasyonu

    IDE otomasyonu için bir MCP (Model Context Protocol) sunucusu sağlar, geliştirme ortamınızda doğrudan sorunsuz içerik yönetimi ve i18n iş akışlarını etkinleştirir.

    - MCP Sunucusu
    Özellik VSCode Uzantısı

    Intlayer, içeriğinizi ve çevirilerinizi yönetmenize yardımcı olmak için bir VSCode uzantısı sağlar, sözlüklerinizi oluşturur, içeriğinizi çevirir ve daha fazlası.

    - VSCode Uzantısı
    Özellik Birlikte Çalışabilirlik

    react-i18next, next-i18next, next-intl ve react-intl ile birlikte çalışabilirliğe izin verir.

    - Intlayer ve react-intl
    - Intlayer ve next-intl
    - Intlayer ve next-i18next

    Intlayer'ın diğer çözümlerle karşılaştırması

    Özellik intlayer react-i18next react-intl (FormatJS) lingui next-intl next-i18next vue-i18n
    Bileşenlere Yakın Çeviriler ✅ Evet, içerik her bileşenle birlikte konumlandırılır ❌ Hayır ❌ Hayır ❌ Hayır ❌ Hayır ❌ Hayır ✅ Evet - Single File Components (SFC'ler) kullanarak
    TypeScript Entegrasyonu ✅ Gelişmiş, otomatik oluşturulan katı türler ⚠️ Temel; güvenlik için ekstra konfigürasyon ✅ İyi, ancak daha az katı ⚠️ Türler, konfigürasyon gerektirir ✅ İyi ⚠️ Temel ✅ İyi (türler mevcut; anahtar güvenliği kurulum gerektirir)
    Eksik Çeviri Algılama ✅ TypeScript hatası vurgulaması ve inşa zamanı hatası/uyarısı ⚠️ Çoğunlukla çalışma zamanında geri dönüş dizeleri ⚠️ Geri dönüş dizeleri ⚠️ Ekstra konfigürasyon gerektirir ⚠️ Çalışma zamanı geri dönüşü ⚠️ Çalışma zamanı geri dönüşü ⚠️ Çalışma zamanı geri dönüşü/uyarıları (yapılandırılabilir)
    Zengin İçerik (JSX/Markdown/bileşenler) ✅ Doğrudan destek ⚠️ Sınırlı / sadece enterpolasyon ⚠️ ICU sözdizimi, gerçek JSX değil ⚠️ Sınırlı ❌ Zengin düğümler için tasarlanmamış ⚠️ Sınırlı ⚠️ Sınırlı (bileşenler <i18n-t> aracılığıyla, Markdown eklentiler aracılığıyla)
    AI Güçlü Çeviri ✅ Evet, birden fazla AI sağlayıcısını destekler. Kendi API anahtarlarınızı kullanarak kullanılabilir. Uygulamanızın bağlamını ve içerik kapsamını dikkate alır ❌ Hayır ❌ Hayır ❌ Hayır ❌ Hayır ❌ Hayır ❌ Hayır
    Görsel Düzenleyici ✅ Evet, yerel Görsel Düzenleyici + isteğe bağlı CMS; kod tabanı içeriğini dışa aktarabilir; gömülebilir ❌ Hayır / harici yerelleştirme platformları aracılığıyla mevcut ❌ Hayır / harici yerelleştirme platformları aracılığıyla mevcut ❌ Hayır / harici yerelleştirme platformları aracılığıyla mevcut ❌ Hayır / harici yerelleştirme platformları aracılığıyla mevcut ❌ Hayır / harici yerelleştirme platformları aracılığıyla mevcut ❌ Hayır / harici yerelleştirme platformları aracılığıyla mevcut
    Yerelleştirilmiş Yönlendirme ✅ Evet, yerelleştirilmiş yolları kutudan çıkarır (Next.js & Vite ile çalışır) ⚠️ Yerleşik yok, eklentiler gerektirir (ör. next-i18next) veya özel yönlendirici konfigürasyonu ❌ Hayır, sadece mesaj biçimlendirme, yönlendirme manuel olmalı ⚠️ Yerleşik yok, eklentiler veya manuel konfigürasyon gerektirir ✅ Yerleşik, App Router [locale] segmentini destekler ✅ Yerleşik ✅ Yerleşik
    Dinamik Yol Oluşturma ✅ Evet ⚠️ Eklenti/ekosistem veya manuel kurulum ❌ Sağlanmadı ⚠️ Eklenti/manuel ✅ Evet ✅ Evet ❌ Sağlanmadı (Nuxt i18n sağlar)
    Çoğullaştırma ✅ Numaralandırma tabanlı desenler ✅ Yapılandırılabilir (i18next-icu gibi eklentiler) ✅ (ICU) ✅ (ICU/messageformat) ✅ İyi ✅ İyi ✅ Yerleşik çoğul kuralları
    Biçimlendirme (tarihler, sayılar, para birimleri) ✅ Optimize edilmiş biçimlendiriciler (Intl altında) ⚠️ Eklentiler veya özel Intl kullanımı aracılığıyla ✅ ICU biçimlendiricileri ✅ ICU/CLI yardımcıları ✅ İyi (Intl yardımcıları) ✅ İyi (Intl yardımcıları) ✅ Yerleşik tarih/sayı biçimlendiricileri (Intl)
    İçerik Formatı ✅ .tsx, .ts, .js, .json, .md, .txt, (.yaml WIP) ⚠️ .json ✅ .json, .js ⚠️ .po, .json ✅ .json, .js, .ts ⚠️ .json ✅ .json, .js
    ICU desteği ⚠️ WIP ⚠️ Eklenti aracılığıyla (i18next-icu) ✅ Evet ✅ Evet ✅ Evet ⚠️ Eklenti aracılığıyla (i18next-icu) ⚠️ Özel biçimlendirici/derleyici aracılığıyla
    SEO Yardımcıları (hreflang, site haritası) ✅ Yerleşik araçlar: site haritası, robots.txt, meta veri için yardımcılar ⚠️ Topluluk eklentileri/manuel ❌ Çekirdek değil ❌ Çekirdek değil ✅ İyi ✅ İyi ❌ Çekirdek değil (Nuxt i18n yardımcılar sağlar)
    Ekosistem / Topluluk ⚠️ Daha küçük ama hızlı büyüyen ve reaktif ✅ En büyük ve olgun ✅ Büyük ⚠️ Daha küçük ✅ Orta boyutlu, Next.js odaklı ✅ Orta boyutlu, Next.js odaklı ✅ Vue ekosisteminde büyük
    Sunucu Tarafı Oluşturma & Sunucu Bileşenleri ✅ Evet, SSR / React Sunucu Bileşenleri için kolaylaştırılmış ⚠️ Sayfa seviyesinde desteklenir ancak alt sunucu bileşenleri için t-fonksiyonlarını bileşen ağacında geçmek gerekir ⚠️ Sayfa seviyesinde ek kurulumla desteklenir, ancak alt sunucu bileşenleri için t-fonksiyonlarını bileşen ağacında geçmek gerekir ✅ Desteklenir, kurulum gerektirir ⚠️ Sayfa seviyesinde desteklenir ancak alt sunucu bileşenleri için t-fonksiyonlarını bileşen ağacında geçmek gerekir ⚠️ Sayfa seviyesinde desteklenir ancak alt sunucu bileşenleri için t-fonksiyonlarını bileşen ağacında geçmek gerekir ✅ SSR via Nuxt/Vue SSR (RSC yok)
    Ağaç Sallama (sadece kullanılan içeriği yükle) ✅ Evet, Babel/SWC eklentileri aracılığıyla inşa zamanında bileşen başına ⚠️ Genellikle tümünü yükler (isim alanları/kod bölümlendirme ile iyileştirilebilir) ⚠️ Genellikle tümünü yükler ❌ Varsayılan değil ⚠️ Kısmi ⚠️ Kısmi ⚠️ Kısmi (kod bölümlendirme/manuel kurulum ile)
    Tembel yükleme ✅ Evet, yerel ayar başına / sözlük başına ✅ Evet (ör. isteğe bağlı arka uçlar/isim alanları) ✅ Evet (bölünmüş yerel ayar paketleri) ✅ Evet (dinamik katalog içe aktarmaları) ✅ Evet (yol başına/yerel ayar başına), isim alanı yönetimi gerektir ✅ Evet (yol başına/yerel ayar başına), isim alanı yönetimi gerektir ✅ Evet (eşzamansız yerel ayar mesajları)
    Kullanılmayan içeriği temizle ✅ Evet, inşa zamanında sözlük başına ❌ Hayır, sadece manuel isim alanı segmentasyonu aracılığıyla ❌ Hayır, bildirilen tüm mesajlar paketlenir ✅ Evet, kullanılmayan anahtarlar algılanır ve inşa zamanında bırakılır ❌ Hayır, isim alanı yönetimi ile manuel olarak yönetilebilir ❌ Hayır, isim alanı yönetimi ile manuel olarak yönetilebilir ❌ Hayır, sadece manuel tembel yükleme aracılığıyla mümkün
    Büyük Projelerin Yönetimi ✅ Tasarım sistemi için modüler, uygun teşvik eder ⚠️ İyi dosya disiplini gerektirir ⚠️ Merkezi kataloglar büyük olabilir ⚠️ Karmaşık hale gelebilir ✅ Kurulum ile modüler ✅ Kurulum ile modüler ✅ Vue Router/Nuxt i18n kurulum ile modüler

    GitHub YILDIZLARI

    GitHub yıldızları, bir projenin popülaritesinin, topluluk güveninin ve uzun vadeli öneminin güçlü bir göstergesidir. Teknik kalitenin doğrudan bir ölçüsü olmasa da, kaç geliştiricinin projeyi yararlı bulduğunu, ilerlemesini takip ettiğini ve muhtemelen benimsediğini yansıtır. Bir projenin değerini tahmin etmek için yıldızlar, alternatifler arasındaki çekişmeyi karşılaştırmaya ve ekosistem büyümesine ilişkin içgörüler sağlamaya yardımcı olur.

    Yıldız Geçmişi Grafiği


    Birlikte Çalışabilirlik

    intlayer ayrıca react-intl, react-i18next, next-intl, next-i18next ve vue-i18n isim alanlarınızı yönetmenize yardımcı olabilir.

    intlayer kullanarak, içeriğinizi favori i18n kütüphanenizin formatında bildirebilirsiniz ve intlayer isim alanlarınızı seçtiğiniz konumda oluşturacaktır (örnek: /messages/{{locale}}/{{namespace}}.json).

    Daha fazla ayrıntı için dictionaryOutput ve i18nextResourcesDir seçeneklerine bakın.

    Doküman Geçmişi

    Sürüm Tarih Değişiklikler
    5.8.0 2025-08-19 Karşılaştırma tablosunu güncelle
    5.5.10 2025-06-29 Geçmiş başlatıldı
    Yaklaşan Intlayer sürümleri hakkında bildirim alın