Sorunuzu sorun ve bu sayfaya ve seçtiğiniz AI sağlayıcısına referans vererek belgenin bir özetini alın
Intlayer MCP Sunucusunu favori AI asistanınıza entegre ederek tüm belgeleri doğrudan ChatGPT, DeepSeek, Cursor, VSCode vb. üzerinden alabilirsiniz.
MCP Sunucu belgesini görüntüleSürüm Geçmişi
- init komutu eklendiv7.5.930.12.2025
- Geçmiş başlatıldıv5.5.1029.06.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üleyinBu 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ıBelge Markdown'ını panoya kopyala
Fastify backend sitenizi Intlayer ile çevirin | Uluslararasılaştırma (i18n)
fastify-intlayer, Fastify uygulamaları için güçlü bir uluslararasılaştırma (i18n) eklentisidir; istemci tercihlerine göre yerelleştirilmiş yanıtlar sağlayarak backend servislerinizi küresel olarak erişilebilir hale getirmek için tasarlanmıştır.
Pratik Kullanım Örnekleri
- Kullanıcının Dilinde Backend Hatalarını Gösterme: Bir hata oluştuğunda, mesajları kullanıcının ana dilinde göstermek anlayışı artırır ve kullanıcı sıkıntısını azaltır. Bu, özellikle toast veya modal gibi ön yüz bileşenlerinde gösterilebilecek dinamik hata mesajları için kullanışlıdır.
fastify-intlayer, Fastify uygulamaları için güçlü bir uluslararasılaştırma (i18n) eklentisidir; istemcinin tercihleri doğrultusunda yerelleştirilmiş yanıtlar sunarak backend servislerinizi küresel olarak erişilebilir kılmak için tasarlanmıştır.
Pratik Kullanım Senaryoları
- Kullanıcının Dilinde Backend Hatalarını Gösterme: Bir hata oluştuğunda, mesajların kullanıcının ana dilinde gösterilmesi anlayışı artırır ve hayal kırıklığını azaltır. Bu, özellikle toasts veya modallar gibi ön yüz bileşenlerinde gösterilebilecek dinamik hata mesajları için çok yararlıdır.
- Çok Dilli İçerik Alma: Database'den içerik çeken uygulamalar için uluslararasılaştırma, bu içeriği birden fazla dilde sunmanızı sağlar. Bu, e-commerce siteleri veya content management systems gibi ürün açıklamalarını, makaleleri ve diğer içerikleri kullanıcının tercih ettiği dilde göstermek zorunda olan platformlar için kritiktir.
- Çok Dilli E-Posta Gönderimi: İster transactional e-postalar, ister pazarlama kampanyaları veya bildirimler olsun, alıcının dilinde e-posta göndermek etkileşimi ve etkinliği önemli ölçüde artırabilir.
- Çok Dilli Push Bildirimleri: Mobil uygulamalarda, kullanıcının tercih ettiği dilde push bildirimleri göndermek etkileşimi ve kullanıcı elde tutmayı artırabilir. Bu kişisel dokunuş, bildirimlerin daha ilgili ve uygulanabilir hissettirmesini sağlar.
- Diğer İletişimler: SMS mesajları, sistem uyarıları veya kullanıcı arayüzü güncellemeleri gibi backend'den gelen her türlü iletişim, kullanıcının dilinde olduğunda netlik sağlar ve genel kullanıcı deneyimini iyileştirir.
Backend'i uluslararasılaştırarak, uygulamanız yalnızca kültürel farklılıklara saygı göstermekle kalmaz, aynı zamanda küresel pazar ihtiyaçlarıyla daha iyi uyum sağlar; bu da hizmetlerinizi dünya çapında ölçeklendirmenin önemli bir adımıdır.
Başlarken
Kurulum
fastify-intlayer'ı kullanmaya başlamak için paketi npm ile kurun:
Kodu panoya kopyala
npm install intlayer fastify-intlayernpx intlayer initKurulum
Uluslararasılaştırma ayarlarını proje kök dizininizde bir intlayer.config.ts oluşturarak yapılandırın:
Kodu panoya kopyala
import { Locales, type IntlayerConfig } from "intlayer";const config: IntlayerConfig = { internationalization: { locales: [ Locales.ENGLISH, Locales.FRENCH, Locales.SPANISH_MEXICO, Locales.SPANISH_SPAIN, ], defaultLocale: Locales.ENGLISH, },};export default config;İçeriğinizi Tanımlayın
Çevirileri depolamak için içerik tanımlamalarınızı oluşturun ve yönetin:
Kodu panoya kopyala
import { t, type Dictionary } from "intlayer";const indexContent = { key: "index", content: { exampleOfContent: t({ tr: "İngilizce döndürülen içeriğin örneği", en: "Example of returned content in English", fr: "Exemple de contenu renvoyé en français", "es-ES": "Ejemplo de contenido devuelto en español (España)", "es-MX": "Ejemplo de contenido devuelto en español (México)", }), },} satisfies Dictionary;export default indexContent;İçerik beyanlarınızı, uygulamanızda contentDir dizinine (varsayılan olarak ./src) dahil edildikleri sürece istediğiniz yere tanımlayabilirsiniz. Ve içerik beyanı dosya uzantısıyla eşleşmelidir (varsayılan olarak .content.{json,ts,tsx,js,jsx,mjs,mjx,cjs,cjx}).
Daha fazla ayrıntı için içerik beyanı belgelerine bakın.
Fastify Uygulama Kurulumu
Fastify uygulamanızı fastify-intlayer kullanacak şekilde ayarlayın:
Kodu panoya kopyala
import Fastify from "fastify";import { intlayer, t, getDictionary, getIntlayer } from "fastify-intlayer";import dictionaryExample from "./index.content";const fastify = Fastify({ logger: true });// Uluslararasılaştırma eklentisini yükleawait fastify.register(intlayer);// Rotalarfastify.get("/t_example", async (_req, reply) => { return t({ tr: "Döndürülen içeriğin Türkçe örneği", en: "Example of returned content in English", fr: "Exemple de contenu renvoyé en français", "es-ES": "Ejemplo de contenido devuelto en español (España)", "es-MX": "Ejemplo de contenido devuelto en español (México)", });});fastify.get("/getIntlayer_example", async (_req, reply) => { return getIntlayer("index").exampleOfContent;});fastify.get("/getDictionary_example", async (_req, reply) => { return getDictionary(dictionaryExample).exampleOfContent;});// Sunucuyu başlatconst start = async () => { try { await fastify.listen({ port: 3000 }); } catch (err) { fastify.log.error(err); process.exit(1); }};start();Uyumluluk
fastify-intlayer şu paketlerle tamamen uyumludur:
- react-intlayer React uygulamaları için
next-intlayer Next.js uygulamaları için
- react-intlayer React uygulamaları için
- next-intlayer Next.js uygulamaları için
- vite-intlayer Vite uygulamaları için
Ayrıca tarayıcılar ve API istekleri dahil olmak üzere çeşitli ortamlarda herhangi bir uluslararasılaştırma çözümü ile sorunsuz çalışır. Middleware'i başlıklar (headers) veya çerezler aracılığıyla locale tespit edecek şekilde özelleştirebilirsiniz:
Kodu panoya kopyala
import { Locales, type IntlayerConfig } from "intlayer";const config: IntlayerConfig = { // ... Diğer yapılandırma seçenekleri middleware: { headerName: "my-locale-header", cookieName: "my-locale-cookie", },};export default config;Varsayılan olarak, fastify-intlayer istemcinin tercih ettiği dili belirlemek için Accept-Language başlığını yorumlar.
Yapılandırma ve gelişmiş konular hakkında daha fazla bilgi için dökümantasyonumuza bakın.
TypeScript'i Yapılandırma
fastify-intlayer, uluslararasılaştırma sürecini geliştirmek için TypeScript'in güçlü yeteneklerinden yararlanır. TypeScript'in statik tiplendirmesi, her çeviri anahtarının hesaba katılmasını sağlar, eksik çeviriler riskini azaltır ve bakım kolaylığını artırır.
Otomatik oluşturulan tiplerin (varsayılan olarak ./types/intlayer.d.ts konumunda) tsconfig.json dosyanıza dahil edildiğinden emin olun.
Kodu panoya kopyala
{ // ... Mevcut TypeScript yapılandırmalarınız "include": [ // ... Mevcut TypeScript yapılandırmalarınız ".intlayer/**/*.ts", // Otomatik oluşturulan tipleri dahil edin ],}VS Code Uzantısı
Geliştirici deneyiminizi Intlayer ile iyileştirmek için resmi Intlayer VS Code Uzantısını yükleyebilirsiniz.
Bu uzantı şunları sağlar:
- Çeviri anahtarları için otomatik tamamlama.
- Eksik çeviriler için gerçek zamanlı hata tespiti.
- Çevrilmiş içeriğin satır içi önizlemeleri.
- Çevirileri kolayca oluşturup güncellemek için hızlı eylemler.
Uzantının nasıl kullanılacağıyla ilgili daha fazla ayrıntı için Intlayer VS Code Uzantısı dokümantasyonuna bakın.
Git Yapılandırması
Intlayer tarafından oluşturulan dosyaların yoksayılması önerilir. Bu, bunları Git havuzunuza göndermekten kaçınmanızı sağlar.
Bunu yapmak için .gitignore dosyanıza aşağıdaki satırları ekleyebilirsiniz:
Kodu panoya kopyala
# Intlayer tarafından oluşturulan dosyaları yoksay.intlayer