Inicio rápido

Agregá Langsys a una aplicación de SvelteKit. Para conocer todas las opciones y los demás SDKs, consultá la documentación completa.

Documentación completa Referencia de la API

Requiere Svelte 5. El SDK funciona con el renderizado en servidor de SvelteKit. Código fuente en GitHub

Crear un proyecto

Creá un proyecto en Langsys. Vas a necesitar su ID de proyecto y una clave de API. Solicitar acceso anticipado

Instalar

npm install langsys-js-svelte

Inicializar

Inicializá Langsys una sola vez, en tu layout raíz. Recibe un objeto de configuración y un store de escritura que contiene el idioma del usuario.

// src/routes/+layout.svelte
<script lang="ts">
    import { writable } from 'svelte/store';
    import { onMount } from 'svelte';
    import { LangsysApp, type iLangsysInitConfig } from 'langsys-js-svelte';

    const userLocale = writable('en-US');

    onMount(async () => {
        const config: iLangsysInitConfig = {
            projectid: import.meta.env.VITE_LANGSYS_PROJECT_ID,
            key: import.meta.env.VITE_LANGSYS_API_KEY,
            UserLocaleStore: userLocale,
            baseLocale: 'en-US',
            ssrTokenStrategy: 'client', // 'client' | 'server' | 'auto'
        };

        const res = await LangsysApp.init(config);
        if (!res.status) console.warn(res.errors?.join(', '));
    });
</script>

Claves de API

Clave de escritura
Para desarrollo. El SDK registra las frases nuevas y los bloques de contenido a medida que aparecen en tu aplicación.
Clave de solo lectura
Para producción. El SDK solo obtiene traducciones y nunca crea frases.

El SDK detecta qué tipo de clave tiene y actúa en consecuencia.

Traducir frases

Usá el store t para cadenas individuales. La frase en sí es la clave de búsqueda y el texto en el idioma base, por lo que no hay un archivo de claves separado. Los marcadores de posición entre llaves se verifican por tipo cuando compilás.

<script lang="ts">
    import { t } from 'langsys-js-svelte';
</script>

<h1>{$t('Welcome to my app', 'UI')}</h1>
<p>{$t('Hello, {name}!', 'UI', { name: 'Sarah' })}</p>
<p>{$t('You have {count} new messages', 'Notifications', { count: 3 })}</p>
Español
  • Bienvenido a mi aplicación
  • ¡Hola, Sarah!
  • Tienes 3 mensajes nuevos

Usá una categoría cuando la misma frase significa cosas distintas en diferentes lugares:

<strong>{$t('Home', 'Main menu')}</strong>
<strong>{$t('Home', 'Home repairs')}</strong>
Español
  • Inicio
  • Hogar

Traducir bloques de contenido

Usá el componente Translate para bloques más grandes donde la estructura importa. Los traductores ven el resultado con estilo y lo traducen como una sola unidad, aunque siguen trabajando frase por frase dentro de él.

<script lang="ts">
    import { Translate } from 'langsys-js-svelte';
</script>

<Translate category="Blog" tag="article">
    <h1>My article title</h1>
    <p>My content <strong>reads best</strong> in the reader's own language.</p>
</Translate>

Otros SDK y la API

React
npm install langsys-js-react
Vue
npm install langsys-js-vue
TypeScript (any framework)
npm install langsys-js-typescript

¿Te trabaste con algo? Envianos un mensaje