Streamline Your App Localization

With Type-Safe Translations

Translate with Confidence

Leverage Google Cloud Translate’s power for fast, reliable translations, ensuring smooth communication with your global audience.

Error Proof Code

Avoid costly localization bugs with type-safe code generation. Integrate seamlessly into your development workflow.

Your Language, Your Way

YAML8n supports your favorite programming languages, providing flexibility and ease of use across projects.

Structure your translations in clear, concise YAML files

Easy for interpreters, easy for developers

defaultCode: en
iso639Codes:
  ar: عربي
  de: Deutsch
  en: English
  es: Español
  fr: Francais
  hi: हिन्दी
  nl: Nederlands
  zh: 中文
outputs:
- format: go
  package: yaml8n
  path: go/yaml8n
- format: typescript
  package: index
  path: web/yaml8n
translations:
  EmailDailyAgendaHeader:
    ar: فيما يلي ملخص لجدول أعمالك اليومي
    context: Heading for daily agenda emails
    de: Hier finden Sie eine Zusammenfassung Ihrer täglichen Agenda
    en: Here's a summary of your daily agenda
    es: Aquí tienes un resumen de tu agenda diaria
    fr: Voici un résumé de votre agenda quotidien
    hi: यहां आपके दैनिक एजेंडे का सारांश दिया गया है
    nl: Hier is een samenvatting van uw dagelijkse agenda
    zh: 这是您每日日程的摘要
  EmailDailyAgendaViewCalendar:
    ar: عرض التقويم الخاص بك
    context: Heading for daily agenda emails
    de: Sehen Sie sich Ihren Kalender an
    en: View your calendar
    es: ver tu calendario
    fr: Afficher votre calendrier
    hi: अपना कैलेंडर देखें
    nl: Bekijk je agenda
    zh: 查看您的日历
// Package yaml8n contains generated translations.
// Code generated by YAML8n; DO NOT EDIT.
//nolint:all
package yaml8n

import "strings"

// ISO639Code is used to lookup translations.
type ISO639Code string

// Translation contains translations for ISO639Codes.
type Translation map[ISO639Code]string

// Translate returns the translation for an ISO639Code.
func (t Translation) Translate(c ISO639Code) string {
	code := strings.Split(string(c), "-")[0]
	if s, ok := t[ISO639Code(code)]; ok {
		return s
	}

	return t["en"]
}

// EmailDailyAgendaHeader contains Translations.
var EmailDailyAgendaHeader = Translation{
	"ar": `فيما يلي ملخص لجدول أعمالك اليومي`,
	"de": `Hier finden Sie eine Zusammenfassung Ihrer täglichen Agenda`,
	"en": `Here's a summary of your daily agenda`,
	"es": `Aquí tienes un resumen de tu agenda diaria`,
	"fr": `Voici un résumé de votre agenda quotidien`,
	"hi": `यहां आपके दैनिक एजेंडे का सारांश दिया गया है`,
	"nl": `Hier is een samenvatting van uw dagelijkse agenda`,
	"zh": `这是您每日日程的摘要`,
}

// EmailDailyAgendaViewCalendar contains Translations.
var EmailDailyAgendaViewCalendar = Translation{
	"ar": `عرض التقويم الخاص بك`,
	"de": `Sehen Sie sich Ihren Kalender an`,
	"en": `View your calendar`,
	"es": `ver tu calendario`,
	"fr": `Afficher votre calendrier`,
	"hi": `अपना कैलेंडर देखें`,
	"nl": `Bekijk je agenda`,
	"zh": `查看您的日历`,
}
/* eslint-disable */

// Code generated by YAML8n; DO NOT EDIT.

export type ISO639Code = string;

export interface Translation {
	[key: ISO639Code]: string,
}

export const ISO639Codes: {
	[key: ISO639Code]: string,
} = {
	ar: "عربي",
	de: "Deutsch",
	en: "English",
	es: "Español",
	fr: "Francais",
	hi: "हिन्दी",
	nl: "Nederlands",
	zh: "中文",
};

export function Translate (c: ISO639Code, t: Translation): string {
	const code = c.split("-")[0];
	if (t[code] !== undefined) {
		return t[code];
	}

	return t["en"];
}

export const EmailDailyAgendaHeader: Translation = {
	ar: `فيما يلي ملخص لجدول أعمالك اليومي`,
	de: `Hier finden Sie eine Zusammenfassung Ihrer täglichen Agenda`,
	en: `Here's a summary of your daily agenda`,
	es: `Aquí tienes un resumen de tu agenda diaria`,
	fr: `Voici un résumé de votre agenda quotidien`,
	hi: `यहां आपके दैनिक एजेंडे का सारांश दिया गया है`,
	nl: `Hier is een samenvatting van uw dagelijkse agenda`,
	zh: `这是您每日日程的摘要`,
};

export const EmailDailyAgendaViewCalendar: Translation = {
	ar: `عرض التقويم الخاص بك`,
	de: `Sehen Sie sich Ihren Kalender an`,
	en: `View your calendar`,
	es: `ver tu calendario`,
	fr: `Afficher votre calendrier`,
	hi: `अपना कैलेंडर देखें`,
	nl: `Bekijk je agenda`,
	zh: `查看您的日历`,
};