Author:
    Creation:2025-08-23Last update:2025-08-23

    Intlayer рджрд╕реНрддрд╛рд╡реЗрдЬрд╝реАрдХрд░рдг

    рдЖрдзрд┐рдХрд╛рд░рд┐рдХ Intlayer рджрд╕реНрддрд╛рд╡реЗрдЬрд╝реАрдХрд░рдг рдореЗрдВ рдЖрдкрдХрд╛ рд╕реНрд╡рд╛рдЧрдд рд╣реИ! рдпрд╣рд╛рдБ, рдЖрдкрдХреЛ рдЕрдкрдиреЗ рд╕рднреА рдЕрдВрддрд░реНрд░рд╛рд╖реНрдЯреНрд░реАрдпрдХрд░рдг (i18n) рдЖрд╡рд╢реНрдпрдХрддрд╛рдУрдВ рдХреЗ рд▓рд┐рдП Intlayer рдХреЛ рдПрдХреАрдХреГрдд (integrate), рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдФрд░ рдорд╛рд╕реНрдЯрд░ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЖрд╡рд╢реНрдпрдХ рд╕рдм рдХреБрдЫ рдорд┐рд▓реЗрдЧрд╛, рдЪрд╛рд╣реЗ рдЖрдк Next.js, React, Vite, Express, рдпрд╛ рдХрд┐рд╕реА рдЕрдиреНрдп JavaScript рд╡рд╛рддрд╛рд╡рд░рдг рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░ рд░рд╣реЗ рд╣реЛрдВред

    рдкрд░рд┐рдЪрдп

    Intlayer рдХреНрдпрд╛ рд╣реИ?

    Intlayer рдПрдХ рдЕрдВрддрд░реНрд░рд╛рд╖реНрдЯреНрд░реАрдпрдХрд░рдг (internationalization) рд▓рд╛рдЗрдмреНрд░реЗрд░реА рд╣реИ рдЬрд┐рд╕реЗ рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ JavaScript рдбреЗрд╡рд▓рдкрд░реНрд╕ рдХреЗ рд▓рд┐рдП рдбрд┐рдЬрд╝рд╛рдЗрди рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред рдпрд╣ рдЖрдкрдХреЗ рдХреЛрдб рдореЗрдВ рдХрд╣реАрдВ рднреА рдЖрдкрдХреЗ рдХрдВрдЯреЗрдВрдЯ рдХреЛ рдбрд┐рдХреНрд▓реЗрдпрд░ рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИред рдпрд╣ рдмрд╣реБрднрд╛рд╖реА рдХрдВрдЯреЗрдВрдЯ рдХреЗ рдбрд┐рдХреНрд▓реЗрд░реЗрд╢рди рдХреЛ рдЖрдкрдХреЗ рдХреЛрдб рдореЗрдВ рдЖрд╕рд╛рдиреА рд╕реЗ рдПрдХреАрдХреГрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕рдВрд░рдЪрд┐рдд рд╢рдмреНрджрдХреЛрд╢реЛрдВ (structured dictionaries) рдореЗрдВ рдкрд░рд┐рд╡рд░реНрддрд┐рдд рдХрд░рддрд╛ рд╣реИред TypeScript рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ, Intlayer рдЖрдкрдХреЗ рд╡рд┐рдХрд╛рд╕ рдХреЛ рдордЬрдмреВрдд рдФрд░ рдЕрдзрд┐рдХ рдХреБрд╢рд▓ рдмрдирд╛рддрд╛ рд╣реИред

    Intlayer рдПрдХ рд╡реИрдХрд▓реНрдкрд┐рдХ рд╡рд┐рдЬрд╝реБрдЕрд▓ рдПрдбрд┐рдЯрд░ рднреА рдкреНрд░рджрд╛рди рдХрд░рддрд╛ рд╣реИ рдЬреЛ рдЖрдкрдХреЛ рдЖрд╕рд╛рдиреА рд╕реЗ рдЕрдкрдиреЗ рдХрдВрдЯреЗрдВрдЯ рдХреЛ рд╕рдВрдкрд╛рджрд┐рдд рдФрд░ рдкреНрд░рдмрдВрдзрд┐рдд рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИред рдпрд╣ рдПрдбрд┐рдЯрд░ рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ рдЙрди рдбреЗрд╡рд▓рдкрд░реНрд╕ рдХреЗ рд▓рд┐рдП рдЙрдкрдпреЛрдЧреА рд╣реИ рдЬреЛ рдХрдВрдЯреЗрдВрдЯ рдкреНрд░рдмрдВрдзрди рдХреЗ рд▓рд┐рдП рд╡рд┐рдЬрд╝реБрдЕрд▓ рдЗрдВрдЯрд░рдлрд╝реЗрд╕ рдкрд╕рдВрдж рдХрд░рддреЗ рд╣реИрдВ, рдпрд╛ рдЙрди рдЯреАрдореЛрдВ рдХреЗ рд▓рд┐рдП рдЬреЛ рдХреЛрдб рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЪрд┐рдВрддрд╛ рдХрд┐рдП рдмрд┐рдирд╛ рдХрдВрдЯреЗрдВрдЯ рдЙрддреНрдкрдиреНрди рдХрд░рддреЗ рд╣реИрдВред

    рдЙрдкрдпреЛрдЧ рдХрд╛ рдЙрджрд╛рд╣рд░рдг

    bash
    .
    тФФтФАтФА Components
        тФФтФАтФА MyComponent
            тФЬтФАтФА index.content.ts
            тФФтФАтФА index.tsx
    
    src/components/MyComponent/index.content.ts
    import { t, type Dictionary } from "intlayer";
    
    const componentContent = {
      key: "component-key",
      content: {
        myTranslatedContent: t({
          en: "Hello World",
          es: "Hola Mundo",
          fr: "Bonjour le monde",
          hi: "рдирдорд╕реНрддреЗ рджреБрдирд┐рдпрд╛",
        }),
      },
    } satisfies Dictionary;
    
    export default componentContent;
    
    src/components/MyComponent/index.tsx
    import type { FC } from "react";
    import { useIntlayer } from "react-intlayer";
    
    export const MyComponent: FC = () => {
      const { myTranslatedContent } = useIntlayer("component-key");
    
      return <span>{myTranslatedContent}</span>;
    };
    

    рд╡рд┐рдХрд▓реНрдкреЛрдВ рдХреЗ рд╕реНрдерд╛рди рдкрд░ Intlayer рдХреНрдпреЛрдВ?

    next-intl рдпрд╛ i18next рдЬреИрд╕реЗ рдореБрдЦреНрдп рд╕рдорд╛рдзрд╛рдиреЛрдВ рдХреА рддреБрд▓рдирд╛ рдореЗрдВ, Intlayer рдПрдХ рдРрд╕рд╛ рд╕рдорд╛рдзрд╛рди рд╣реИ рдЬреЛ рдПрдХреАрдХреГрдд рдЕрдиреБрдХреВрд▓рди (optimizations) рдХреЗ рд╕рд╛рде рдЖрддрд╛ рд╣реИ рдЬреИрд╕реЗ:

    рдЕрдкрдиреЗ рдкреГрд╖реНрдареЛрдВ рдореЗрдВ рдмрдбрд╝реЗ JSON рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЛ рд▓реЛрдб рдХрд░рдиреЗ рдХреЗ рдмрдЬрд╛рдп, рдХреЗрд╡рд▓ рдЖрд╡рд╢реНрдпрдХ рдХрдВрдЯреЗрдВрдЯ рдХреЛ рд▓реЛрдб рдХрд░реЗрдВред Intlayer рдЖрдкрдХреЗ рдмрдВрдбрд▓ рдФрд░ рдкреГрд╖реНрда рдХреЗ рдЖрдХрд╛рд░ рдХреЛ 50% рддрдХ рдХрдо рдХрд░рдиреЗ рдореЗрдВ рдорджрдж рдХрд░рддрд╛ рд╣реИред

    рдЕрдкрдиреЗ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреЗ рдХрдВрдЯреЗрдВрдЯ рдХреЛ рд╕реНрдХреЛрдк рдХрд░рдирд╛ рдмрдбрд╝реЗ рдкреИрдорд╛рдиреЗ рдХреЗ рдПрдкреНрд▓рд┐рдХреЗрд╢рдиреЛрдВ рдХреЗ рд▓рд┐рдП рд░рдЦрд░рдЦрд╛рд╡ рдХреЛ рдЖрд╕рд╛рди рдмрдирд╛рддрд╛ рд╣реИред рдЖрдк рдЕрдкрдиреЗ рд╕рдВрдкреВрд░реНрдг рдХрдВрдЯреЗрдВрдЯ рдХреЛрдбрдмреЗрд╕ рдХреА рд╕рдореАрдХреНрд╖рд╛ рдХрд░рдиреЗ рдХреЗ рдорд╛рдирд╕рд┐рдХ рдмреЛрдЭ рдХреЗ рдмрд┐рдирд╛ рдПрдХ рд╕рд┐рдВрдЧрд▓ рдлреАрдЪрд░ рдлрд╝реЛрд▓реНрдбрд░ рдХреЛ рдбреБрдкреНрд▓рд┐рдХреЗрдЯ рдпрд╛ рд╣рдЯрд╛ рд╕рдХрддреЗ рд╣реИрдВред рдЗрд╕рдХреЗ рдЕрддрд┐рд░рд┐рдХреНрдд, рдЖрдкрдХреЗ рдХрдВрдЯреЗрдВрдЯ рдХреА рд╕рдЯреАрдХрддрд╛ рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП Intlayer рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдЯрд╛рдЗрдк (fully typed) рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред

    рдХрдВрдЯреЗрдВрдЯ рдХрд╛ рд╕рд╣-рд╕реНрдерд╛рди (Co-locating) рдмрдбрд╝реЗ рднрд╛рд╖рд╛ рдореЙрдбрд▓ (LLMs) рджреНрд╡рд╛рд░рд╛ рдЖрд╡рд╢реНрдпрдХ рд╕рдВрджрд░реНрдн рдХреЛ рдХрдо рдХрд░рддрд╛ рд╣реИред Intlayer AI рдПрдЬреЗрдВрдЯреЛрдВ рдХреЗ рд▓рд┐рдП рдбреЗрд╡рд▓рдкрд░ рдЕрдиреБрднрд╡ (DX) рдХреЛ рдФрд░ рднреА рд╕реБрдЧрдо рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рд▓рд╛рдкрддрд╛ рдЕрдиреБрд╡рд╛рджреЛрдВ рдХрд╛ рдкрд░реАрдХреНрд╖рдг рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП CLI, LSP, MCP рдФрд░ agent skills рдЬреИрд╕реЗ рдЙрдкрдХрд░рдгреЛрдВ рдХреЗ рдПрдХ рд╕реВрдЯ рдХреЗ рд╕рд╛рде рдЖрддрд╛ рд╣реИред

    рдЕрдкрдиреЗ AI рдкреНрд░рджрд╛рддрд╛ рдХреА рд▓рд╛рдЧрдд рдкрд░ рдЕрдкрдиреА рдкрд╕рдВрдж рдХреЗ LLM рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдЕрдкрдиреЗ CI/CD рдкрд╛рдЗрдкрд▓рд╛рдЗрди рдореЗрдВ рдЕрдиреБрд╡рд╛рдж рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕реНрд╡рдЪрд╛рд▓рди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВред Intlayer рдХрдВрдЯреЗрдВрдЯ рдирд┐рд╖реНрдХрд░реНрд╖рдг рдХреЛ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдХрдВрдкрд╛рдЗрд▓рд░ (compiler) рдФрд░ рдкреГрд╖реНрдарднреВрдорд┐ рдореЗрдВ рдЕрдиреБрд╡рд╛рдж рдХрд░рдиреЗ рдореЗрдВ рдорджрдж рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рд╡реЗрдм рдкреНрд▓реЗрдЯрдлрд╝реЙрд░реНрдо рднреА рдкреНрд░рджрд╛рди рдХрд░рддрд╛ рд╣реИред

    рд╡рд┐рд╢рд╛рд▓ JSON рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЛ рдШрдЯрдХреЛрдВ (components) рд╕реЗ рдЬреЛрдбрд╝рдиреЗ рд╕реЗ рдкреНрд░рджрд░реНрд╢рди рдФрд░ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ (reactivity) рд╕рдВрдмрдВрдзреА рд╕рдорд╕реНрдпрд╛рдПрдВ рд╣реЛ рд╕рдХрддреА рд╣реИрдВред Intlayer рдирд┐рд░реНрдорд╛рдг рдХреЗ рд╕рдордп (build time) рдЖрдкрдХреЗ рдХрдВрдЯреЗрдВрдЯ рдХреЗ рд▓реЛрдбрд┐рдВрдЧ рдХреЛ рдЕрдиреБрдХреВрд▓рд┐рдд рдХрд░рддрд╛ рд╣реИред

    рдХреЗрд╡рд▓ рдПрдХ i18n рд╕рдорд╛рдзрд╛рди рд╕реЗ рдЕрдзрд┐рдХ, Intlayer рдЖрдкрдХреЗ рдмрд╣реБрднрд╛рд╖реА рдХрдВрдЯреЗрдВрдЯ рдХреЛ рд░реАрдпрд▓-рдЯрд╛рдЗрдо рдореЗрдВ рдкреНрд░рдмрдВрдзрд┐рдд рдХрд░рдиреЗ рдореЗрдВ рдорджрдж рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рд╕реЗрд▓реНрдл-рд╣реЛрд╕реНрдЯреЗрдб рд╡рд┐рдЬрд╝реБрдЕрд▓ рдПрдбрд┐рдЯрд░ рдФрд░ рдПрдХ рдкреВрд░реНрдг CMS рдкреНрд░рджрд╛рди рдХрд░рддрд╛ рд╣реИ, рдЬрд┐рд╕рд╕реЗ рдЕрдиреБрд╡рд╛рджрдХреЛрдВ, рдХреЙрдкреАрд░рд╛рдЗрдЯрд░реЛрдВ рдФрд░ рдЯреАрдо рдХреЗ рдЕрдиреНрдп рд╕рджрд╕реНрдпреЛрдВ рдХреЗ рд╕рд╛рде рд╕рд╣рдЬ рд╕рд╣рдпреЛрдЧ рд╕рдВрднрд╡ рд╣реЛ рдЬрд╛рддрд╛ рд╣реИред рдХрдВрдЯреЗрдВрдЯ рдХреЛ рд╕реНрдерд╛рдиреАрдп рдФрд░/рдпрд╛ рджреВрд░рд╕реНрде рд░реВрдк рд╕реЗ рд╕рдВрдЧреНрд░рд╣реАрдд рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред

    рдореБрдЦреНрдп рд╡рд┐рд╢реЗрд╖рддрд╛рдПрдБ

    Intlayer рдЖрдзреБрдирд┐рдХ рд╡реЗрдм рд╡рд┐рдХрд╛рд╕ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛рдУрдВ рдХреЛ рдкреВрд░рд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рддреИрдпрд╛рд░ рдХреА рдЧрдИ рд╡рд┐рднрд┐рдиреНрди рд╕реБрд╡рд┐рдзрд╛рдПрдБ рдкреНрд░рджрд╛рди рдХрд░рддрд╛ рд╣реИред рдиреАрдЪреЗ рд╡рд┐рд╕реНрддреГрдд рджрд╕реНрддрд╛рд╡реЗрдЬрд╝реАрдХрд░рдг рдХреЗ рд▓рд┐рдВрдХ рдХреЗ рд╕рд╛рде рдкреНрд░рдореБрдЦ рд╕реБрд╡рд┐рдзрд╛рдПрдБ рджреА рдЧрдИ рд╣реИрдВ:

    • рдЕрдВрддрд░реНрд░рд╛рд╖реНрдЯреНрд░реАрдпрдХрд░рдг рд╕рдорд░реНрдерди: рдЕрдВрддрд░реНрд░рд╛рд╖реНрдЯреНрд░реАрдпрдХрд░рдг рдХреЗ рд▓рд┐рдП рдЕрдВрддрд░реНрдирд┐рд╣рд┐рдд рд╕рдорд░реНрдерди рдХреЗ рд╕рд╛рде рдЕрдкрдиреЗ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреА рд╡реИрд╢реНрд╡рд┐рдХ рдкрд╣реБрдБрдЪ рдХреЛ рдмрдврд╝рд╛рдПрдБред
    • рд╡рд┐рдЬрд╝реБрдЕрд▓ рдПрдбрд┐рдЯрд░: Intlayer рдХреЗ рд▓рд┐рдП рдбрд┐рдЬрд╝рд╛рдЗрди рдХрд┐рдП рдЧрдП рдПрдбрд┐рдЯрд░ рдкреНрд▓рдЧрдЗрдиреНрд╕ рдХреЗ рд╕рд╛рде рдЕрдкрдиреЗ рд╡рд┐рдХрд╛рд╕ рд╡рд░реНрдХрдлрд╝реНрд▓реЛ рдореЗрдВ рд╕реБрдзрд╛рд░ рдХрд░реЗрдВред рд╡рд┐рдЬрд╝реБрдЕрд▓ рдПрдбрд┐рдЯрд░ рдЧрд╛рдЗрдб рджреЗрдЦреЗрдВред
    • рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдХрд╛ рд▓рдЪреАрд▓рд╛рдкрди: рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдЧрд╛рдЗрдб рдореЗрдВ рд╡рд┐рд╕реНрддреГрдд рд░реВрдк рд╕реЗ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рд╡рд┐рдХрд▓реНрдкреЛрдВ рдХреЗ рд╕рд╛рде рдЕрдкрдиреЗ рд╕реЗрдЯрдЕрдк рдХреЛ рдЕрдиреБрдХреВрд▓рд┐рдд рдХрд░реЗрдВред
    • рдЙрдиреНрдирдд CLI рдЙрдкрдХрд░рдг: Intlayer рдХреЗ рдХрдорд╛рдВрдб рд▓рд╛рдЗрди рдЗрдВрдЯрд░рдлрд╝реЗрд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдЕрдкрдиреЗ рдкреНрд░реЛрдЬреЗрдХреНрдЯреНрд╕ рдХреЛ рдХреБрд╢рд▓рддрд╛рдкреВрд░реНрд╡рдХ рдкреНрд░рдмрдВрдзрд┐рдд рдХрд░реЗрдВред CLI рдЙрдкрдХрд░рдг рджрд╕реНрддрд╛рд╡реЗрдЬрд╝реАрдХрд░рдг рдореЗрдВ рдХреНрд╖рдорддрд╛рдУрдВ рдХрд╛ рдЕрдиреНрд╡реЗрд╖рдг рдХрд░реЗрдВред

    рдореБрдЦреНрдп рдЕрд╡рдзрд╛рд░рдгрд╛рдПрдБ

    рд╢рдмреНрджрдХреЛрд╢ (Dictionary)

    рд╣рд░ рдЪреАрдЬрд╝ рдХреЛ рд╕реБрд╕рдВрдЧрдд рдФрд░ рдмрдирд╛рдП рд░рдЦрдиреЗ рдпреЛрдЧреНрдп рд░рдЦрдиреЗ рдХреЗ рд▓рд┐рдП рдЕрдкрдиреЗ рдмрд╣реБрднрд╛рд╖реА рдХрдВрдЯреЗрдВрдЯ рдХреЛ рдЕрдкрдиреЗ рдХреЛрдб рдХреЗ рдХрд░реАрдм рд╡реНрдпрд╡рд╕реНрдерд┐рдд рдХрд░реЗрдВред

    • рд╢реБрд░реБрдЖрдд (Get Started)
      Intlayer рдореЗрдВ рдЕрдкрдиреЗ рдХрдВрдЯреЗрдВрдЯ рдХреА рдШреЛрд╖рдгрд╛ рдХрд░рдиреЗ рдХреА рдореВрд▓ рдмрд╛рддреЗрдВ рд╕реАрдЦреЗрдВред

    • рдЕрдиреБрд╡рд╛рдж (Translation)
      рд╕рдордЭреЗрдВ рдХрд┐ рдЖрдкрдХреЗ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдореЗрдВ рдЕрдиреБрд╡рд╛рдж рдХреИрд╕реЗ рдЙрддреНрдкрдиреНрди, рд╕рдВрдЧреНрд░рд╣реАрдд рдФрд░ рдЙрдкрдпреЛрдЧ рдХрд┐рдП рдЬрд╛рддреЗ рд╣реИрдВред

    • рдЧрдгрдирд╛ (Enumeration)
      рд╡рд┐рднрд┐рдиреНрди рднрд╛рд╖рд╛рдУрдВ рдореЗрдВ рджреЛрд╣рд░рд╛рдП рдЧрдП рдпрд╛ рдирд┐рд╢реНрдЪрд┐рдд рдбреЗрдЯрд╛рд╕реЗрдЯ рдХреЛ рдЖрд╕рд╛рдиреА рд╕реЗ рдкреНрд░рдмрдВрдзрд┐рдд рдХрд░реЗрдВред

    • рд╕реНрдерд┐рддрд┐ (Condition)
      рдЧрддрд┐рд╢реАрд▓ рдХрдВрдЯреЗрдВрдЯ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП Intlayer рдореЗрдВ рд╕рд╢рд░реНрдд рддрд░реНрдХ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рд╕реАрдЦреЗрдВред

    • рд╕рдореНрдорд┐рд▓рди (Insertion)
      рд╕рдореНрдорд┐рд▓рди рдкреНрд▓реЗрд╕рд╣реЛрд▓реНрдбрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рд╕реНрдЯреНрд░рд┐рдВрдЧ рдореЗрдВ рдорд╛рди рдбрд╛рд▓рдиреЗ рдХрд╛ рддрд░реАрдХрд╛ рдЦреЛрдЬреЗрдВред

    • рдлрд╝рдВрдХреНрд╢рди рдкреНрд░рд╛рдкреНрдд рдХрд░рдирд╛ (Function Fetching)
      рджреЗрдЦреЗрдВ рдХрд┐ рдЕрдкрдиреЗ рдкреНрд░реЛрдЬреЗрдХреНрдЯ рдХреЗ рд╡рд░реНрдХрдлрд╝реНрд▓реЛ рд╕реЗ рдореЗрд▓ рдЦрд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд╕реНрдЯрдо рддрд░реНрдХ рдХреЗ рд╕рд╛рде рдХрдВрдЯреЗрдВрдЯ рдХреЛ рдЧрддрд┐рд╢реАрд▓ рд░реВрдк рд╕реЗ рдХреИрд╕реЗ рдкреНрд░рд╛рдкреНрдд рдХрд░реЗрдВред

    • рдорд╛рд░реНрдХрдбрд╛рдЙрди (Markdown)
      рд╕рдореГрджреНрдз рдХрдВрдЯреЗрдВрдЯ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП Intlayer рдореЗрдВ рдорд╛рд░реНрдХрдбрд╛рдЙрди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рд╕реАрдЦреЗрдВред

    • рдлрд╝рд╛рдЗрд▓ рдПрдореНрдмреЗрдбрд┐рдВрдЧ (File embeddings)
      рдЦреЛрдЬреЗрдВ рдХрд┐ рдХрдВрдЯреЗрдВрдЯ рдПрдбрд┐рдЯрд░ рдореЗрдВ рдЙрдирдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП Intlayer рдореЗрдВ рдмрд╛рд╣рд░реА рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЛ рдХреИрд╕реЗ рдПрдореНрдмреЗрдб рдХрд░реЗрдВред

    • рдиреЗрд╕реНрдЯрд┐рдВрдЧ (Nesting)
      рдЬрдЯрд┐рд▓ рд╕рдВрд░рдЪрдирд╛рдПрдВ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП Intlayer рдореЗрдВ рдХрдВрдЯреЗрдВрдЯ рдХреЛ рдиреЗрд╕реНрдЯ рдХрд░рдирд╛ рд╕рдордЭреЗрдВред

    рд╡рд╛рддрд╛рд╡рд░рдг рдФрд░ рдПрдХреАрдХрд░рдг

    рд╣рдордиреЗ рд▓рдЪреАрд▓реЗрдкрди рдХреЛ рдзреНрдпрд╛рди рдореЗрдВ рд░рдЦрддреЗ рд╣реБрдП Intlayer рдХрд╛ рдирд┐рд░реНрдорд╛рдг рдХрд┐рдпрд╛ рд╣реИ, рдЬреЛ рд▓реЛрдХрдкреНрд░рд┐рдп рдлреНрд░реЗрдорд╡рд░реНрдХ рдФрд░ рдмрд┐рд▓реНрдб рдЯреВрд▓реНрд╕ рдореЗрдВ рд╕рд╣рдЬ рдПрдХреАрдХрд░рдг рдХреА рдкреЗрд╢рдХрд╢ рдХрд░рддрд╛ рд╣реИ:

    рдкреНрд░рддреНрдпреЗрдХ рдПрдХреАрдХрд░рдг рдЧрд╛рдЗрдб рдореЗрдВ Intlayer рдХреА рд╕реБрд╡рд┐рдзрд╛рдУрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд╕рд░реНрд╡реЛрддреНрддрдо рдЕрднреНрдпрд╛рд╕ (best practices) рд╢рд╛рдорд┐рд▓ рд╣реИрдВ, рдЬреИрд╕реЗ рд╕рд░реНрд╡рд░-рд╕рд╛рдЗрдб рд░реЗрдВрдбрд░рд┐рдВрдЧ (SSR), рдбрд╛рдпрдирд╛рдорд┐рдХ рд░реВрдЯрд┐рдВрдЧ, рдпрд╛ рдХреНрд▓рд╛рдЗрдВрдЯ-рд╕рд╛рдЗрдб рд░реЗрдВрдбрд░рд┐рдВрдЧ, рддрд╛рдХрд┐ рдЖрдк рдПрдХ рддреЗрдЬрд╝, SEO-рдЕрдиреБрдХреВрд▓ рдФрд░ рдЙрдЪреНрдЪ рд╕реНрдХреЗрд▓реЗрдмрд▓ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдмрдирд╛рдП рд░рдЦ рд╕рдХреЗрдВред

    рдпреЛрдЧрджрд╛рди рдФрд░ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛

    рд╣рдо рдУрдкрди-рд╕реЛрд░реНрд╕ рдФрд░ рд╕рдореБрджрд╛рдп-рд╕рдВрдЪрд╛рд▓рд┐рдд (community-driven) рд╡рд┐рдХрд╛рд╕ рдХреА рд╢рдХреНрддрд┐ рдХреЛ рдорд╣рддреНрд╡ рджреЗрддреЗ рд╣реИрдВред рдпрджрд┐ рдЖрдк рд╕реБрдзрд╛рд░реЛрдВ рдХрд╛ рдкреНрд░рд╕реНрддрд╛рд╡ рджреЗрдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ, рдПрдХ рдирдИ рдЧрд╛рдЗрдб рдЬреЛрдбрд╝рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ, рдпрд╛ рд╣рдорд╛рд░реЗ рджрд╕реНрддрд╛рд╡реЗрдЬрд╝реЛрдВ рдореЗрдВ рдХрд┐рд╕реА рднреА рд╕рдорд╕реНрдпрд╛ рдХреЛ рдареАрдХ рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ, рддреЛ рдмреЗрдЭрд┐рдЭрдХ рдкреБрд▓ рдЕрдиреБрд░реЛрдз (Pull Request) рд╕рдмрдорд┐рдЯ рдХрд░реЗрдВ рдпрд╛ рд╣рдорд╛рд░реЗ GitHub рд░рд┐рдкреЙрдЬрд┐рдЯрд░реА рдкрд░ рдПрдХ рд╕рдорд╕реНрдпрд╛ (Issue) рдЦреЛрд▓реЗрдВред

    рдХреНрдпрд╛ рдЖрдк рдЕрдкрдиреЗ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХрд╛ рддреЗрдЬрд╝реА рд╕реЗ рдФрд░ рдЕрдзрд┐рдХ рдХреБрд╢рд▓рддрд╛ рд╕реЗ рдЕрдиреБрд╡рд╛рдж рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рддреИрдпрд╛рд░ рд╣реИрдВ? рдЖрдЬ рд╣реА Intlayer рдХрд╛ рдЙрдкрдпреЛрдЧ рд╢реБрд░реВ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╣рдорд╛рд░реЗ рджрд╕реНрддрд╛рд╡реЗрдЬрд╝реЛрдВ рдореЗрдВ рдЧреЛрддрд╛ рд▓рдЧрд╛рдПрдБред рдЕрдВрддрд░реНрд░рд╛рд╖реНрдЯреНрд░реАрдпрдХрд░рдг рдХреЗ рд▓рд┐рдП рдПрдХ рдордЬрдмреВрдд, рд╕реБрд╡реНрдпрд╡рд╕реНрдерд┐рдд рджреГрд╖реНрдЯрд┐рдХреЛрдг рдХрд╛ рдЕрдиреБрднрд╡ рдХрд░реЗрдВ рдЬреЛ рдЖрдкрдХреЗ рдХрдВрдЯреЗрдВрдЯ рдХреЛ рд╡реНрдпрд╡рд╕реНрдерд┐рдд рд░рдЦрддрд╛ рд╣реИ рдФрд░ рдЖрдкрдХреА рдЯреАрдо рдХреЛ рдЕрдзрд┐рдХ рдЙрддреНрдкрд╛рджрдХ рдмрдирд╛рддрд╛ рд╣реИред

    рдЕрдХреНрд╕рд░ рдкреВрдЫреЗ рдЬрд╛рдиреЗ рд╡рд╛рд▓реЗ рдкреНрд░рд╢реНрди

    Intlayer JavaScript рдФрд░ TypeScript рдЕрдиреБрдкреНрд░рдпреЛрдЧреЛрдВ рдХреЗ рд▓рд┐рдП рдПрдХ рдЕрдВрддрд░реНрд░рд╛рд╖реНрдЯреНрд░реАрдпрдХрд░рдг (i18n) рд▓рд╛рдЗрдмреНрд░реЗрд░реА рд╣реИред рдЖрдк рдШрдЯрдХ рдХреА рд╕рд╛рдордЧреНрд░реА рдХреЛ .content.ts рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рдареАрдХ рдШрдЯрдХ рдХреЗ рдмрдЧрд▓ рдореЗрдВ рдШреЛрд╖рд┐рдд рдХрд░рддреЗ рд╣реИрдВ, Intlayer рдЙрди рдШреЛрд╖рдгрд╛рдУрдВ рдХреЛ рдмрд┐рд▓реНрдб рд╕рдордп рдкрд░ рдЯрд╛рдЗрдк рдХрд┐рдП рдЧрдП рд╢рдмреНрджрдХреЛрд╢реЛрдВ рдореЗрдВ рд╕рдВрдХрд▓рд┐рдд рдХрд░рддрд╛ рд╣реИ, рдФрд░ рдЖрдкрдХреЗ рдШрдЯрдХ рдЙрдиреНрд╣реЗрдВ useIntlayer рдЬреИрд╕реЗ рд╣реБрдХ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдкрдврд╝рддреЗ рд╣реИрдВред рдЗрд╕рдореЗрдВ рдЕрдиреБрд╡рд╛рдж, рдмрд╣реБрд╡рдЪрди рдирд┐рдпрдо, рд▓рд┐рдВрдЧ, Markdown, рд▓реЛрдХреЗрд▓-рдЬрд╛рдЧрд░реВрдХ рд░реВрдЯрд┐рдВрдЧ, SEO рдореЗрдЯрд╛рдбреЗрдЯрд╛, AI-рд╕рд╣рд╛рдпрддрд╛ рдкреНрд░рд╛рдкреНрдд рдЕрдиреБрд╡рд╛рдж рдФрд░ рдЧреИрд░-рдбреЗрд╡рд▓рдкрд░реНрд╕ рдХреЗ рд▓рд┐рдП рд╡рд┐рдЬрд╝реБрдЕрд▓ рдПрдбрд┐рдЯрд░ рд╢рд╛рдорд┐рд▓ рд╣реИрдВред

    рдиреЗрдорд╕реНрдкреЗрд╕-рдЖрдзрд╛рд░рд┐рдд рд╕реЗрдЯрдЕрдкреЛрдВ рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рдмрд╣реБрдд рдХрдо, рдХреНрдпреЛрдВрдХрд┐ рдПрдХ рдкреГрд╖реНрда рдХрднреА рднреА рдЙрд╕ рдХреИрдЯрд▓реЙрдЧ рдХреЛ рдбрд╛рдЙрдирд▓реЛрдб рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИ рдЬрд┐рд╕реЗ рд╡рд╣ рд░реЗрдВрдбрд░ рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИред рд╕рд░реНрд╡рд░ рдкрд░ рд░реЗрдВрдбрд░ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдорд╛рд░реНрдХрдЕрдк рд╕рд░реНрд╡рд░ рдкрд░ рд╣реА рдЕрдкрдиреА рд╕рд╛рдордЧреНрд░реА рдХреЛ рд╣рд▓ рдХрд░рддрд╛ рд╣реИ, рдФрд░ рдмрд┐рд▓реНрдб-рдЯрд╛рдЗрдо рдХрдВрдкрд╛рдЗрд▓рд░ useIntlayer рдХреЙрд▓ рдХреЛ рдШрдЯрдХ рджреНрд╡рд╛рд░рд╛ рдЙрдкрдпреЛрдЧ рдХреА рдЬрд╛рдиреЗ рд╡рд╛рд▓реА рд╕рдЯреАрдХ рд╢рдмреНрджрдХреЛрд╢ рдкреНрд░рд╡рд┐рд╖реНрдЯрд┐рдпреЛрдВ рд╕реЗ рдмрджрд▓ рджреЗрддрд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдЕрдкреНрд░рдпреБрдХреНрдд рдХреБрдВрдЬрд┐рдпреЛрдВ рдФрд░ рднрд╛рд╖рд╛рдУрдВ рдХреЛ рд╣рдЯрд╛ рджрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдЧрддрд┐рд╢реАрд▓ рд╢рдмреНрджрдХреЛрд╢ рд╢реЗрд╖ рдХреЛ рдкреНрд░рддрд┐ рд▓реЛрдХреЗрд▓ рд╡рд┐рднрд╛рдЬрд┐рдд рдХрд░рддреЗ рд╣реИрдВред рдкрд╛рд░рдВрдкрд░рд┐рдХ рд╡рд┐рдХрд▓реНрдкреЛрдВ рдХреА рддреБрд▓рдирд╛ рдореЗрдВ, Intlayer рдмрдВрдбрд▓ рдФрд░ рдкреГрд╖реНрда рдЖрдХрд╛рд░ рдХреЛ 50% рддрдХ рдХрдо рдХрд░рддрд╛ рд╣реИред рдмрдВрдбрд▓ рдЕрдиреБрдХреВрд▓рди рдФрд░ рдмреЗрдВрдЪрдорд╛рд░реНрдХ рджреЗрдЦреЗрдВред

    рд╣рд╛рдБ, рдФрд░ рдЗрд╕рдХреЗ рджреЛ рд░рд╛рд╕реНрддреЗ рд╣реИрдВред рдЖрдк i18next рдорд╛рдЗрдЧреНрд░реЗрд╢рди рдЧрд╛рдЗрдб рдпрд╛ next-intl рдорд╛рдЗрдЧреНрд░реЗрд╢рди рдЧрд╛рдЗрдб рдХреЗ рд╕рд╛рде рд╕рд╛рдордЧреНрд░реА рдХреЛ рдзреАрд░реЗ-рдзреАрд░реЗ рд╕реНрдерд╛рдирд╛рдВрддрд░рд┐рдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рдпрд╛ рдЖрдк рдЕрдкрдиреЗ рд╡рд░реНрддрдорд╛рди API рдХреЛ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдмрдирд╛рдП рд░рдЦ рд╕рдХрддреЗ рд╣реИрдВ: рд╕рдВрдЧрддрддрд╛ рдПрдбреЗрдкреНрдЯрд░ i18next, react-i18next, next-intl, next-i18next, react-intl, use-intl, vue-i18n рдФрд░ Lingui рдХреЗ рд╕рдорд╛рди API рдкреНрд░рджрд╛рди рдХрд░рддреЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди Intlayer рд╢рдмреНрджрдХреЛрд╢реЛрдВ рджреНрд╡рд╛рд░рд╛ рд╕рдВрдЪрд╛рд▓рд┐рдд рд╣реЛрддреЗ рд╣реИрдВ, рдЬрд┐рд╕рд╕реЗ рдХреЗрд╡рд▓ рдЖрдпрд╛рдд рдмрджрд▓рддреЗ рд╣реИрдВ рдФрд░ рдШрдЯрдХ рдХреЛрдб рд╕рдорд╛рди рд░рд╣рддрд╛ рд╣реИред

    рд╣рд╛рдБред sync JSON plugin рдЖрдкрдХреА /messages/{locale}/{namespace}.json рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЛ рд╕рддреНрдп рдХрд╛ рд╕реНрд░реЛрдд рдмрдирд╛рдП рд░рдЦрддрд╛ рд╣реИ рдФрд░ рджреЛрдиреЛрдВ рджрд┐рд╢рд╛рдУрдВ рдореЗрдВ рдЙрдирд╕реЗ Intlayer dictionaries рдмрдирд╛рддрд╛ рд╣реИред sync PO plugin gettext catalogs рдХреЗ рд▓рд┐рдП рднреА рдРрд╕рд╛ рд╣реА рдХрд░рддрд╛ рд╣реИ, рдФрд░ per locale files рдЖрдкрдХреЛ locales рдХреЛ рдПрдХ рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рд╕рдореВрд╣реАрдХреГрдд рдХрд░рдиреЗ рдХреЗ рдмрдЬрд╛рдп рднрд╛рд╖рд╛ рдХреЗ рдЕрдиреБрд╕рд╛рд░ content рдХреЛ рд╡рд┐рднрд╛рдЬрд┐рдд рдХрд░рдиреЗ рджреЗрддреЗ рд╣реИрдВред

    рдирд╣реАрдВред npx intlayer extract рдЪрд▓рд╛рдПрдВ рдФрд░ Intlayer рдЖрдкрдХреА source files рдХреЛ рдкрдврд╝рддрд╛ рд╣реИ, user facing strings рдХреЛ рдирд┐рдХрд╛рд▓рддрд╛ рд╣реИ рдФрд░ рдкреНрд░рддреНрдпреЗрдХ рдХреЗ рдмрдЧрд▓ рдореЗрдВ рдПрдХ .content file рд▓рд┐рдЦрддрд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдЖрдк strings рдХреЛ рдПрдХ catalog рдореЗрдВ рдПрдХ-рдПрдХ рдХрд░рдХреЗ рдХреЙрдкреА рдХрд░рдиреЗ рдХреЗ рдмрдЬрд╛рдп рдПрдХ diff рдХреА рд╕рдореАрдХреНрд╖рд╛ рдХрд░рддреЗ рд╣реИрдВред extract command рджреЗрдЦреЗрдВред

    рдкреВрд░реА рддрд░рд╣ рд╕реЗ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рд╡рд░реНрдХрдлрд╝реНрд▓реЛ рдХреЗ рд▓рд┐рдП, Intlayer Compiler JSX, TSX, Vue рдФрд░ Svelte рдХреЛрдб рдкрд░ рдирд┐рд░реНрдорд╛рдг рд╕рдордп рдХреЗ рджреМрд░рд╛рди рднреА рдпрд╣реА рдХрд░рддрд╛ рд╣реИ, рдкреНрд░рддреНрдпреЗрдХ рдкрд░рд┐рд╡рд░реНрддрди рдкрд░ рд╢рдмреНрджрдХреЛрд╢ рдЙрддреНрдкрдиреНрди рдХрд░рддрд╛ рд╣реИ рдЬрд┐рд╕рд╕реЗ рдХреБрдВрдЬрд┐рдпреЛрдВ рдХреЛ рдореИрдиреНрдпреБрдЕрд▓ рд░реВрдк рд╕реЗ рдмрдирд╛рдП рд░рдЦрдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╕рдорд╛рдкреНрдд рд╣реЛ рдЬрд╛рддреА рд╣реИред

    рдкрд╛рдБрдЪ рдЙрдкрдХрд░рдг, рд╕рднреА рд╡реИрдХрд▓реНрдкрд┐рдХ:

    • VS Code extension: useIntlayer рдХреБрдВрдЬреА рд╕реЗ рдЙрд╕реЗ рдШреЛрд╖рд┐рдд рдХрд░рдиреЗ рд╡рд╛рд▓реА рд╕рд╛рдордЧреНрд░реА рдлрд╝рд╛рдЗрд▓ рдкрд░ рдЬрд╛рдПрдВ, рдШрдЯрдХреЛрдВ рд╕реЗ рд╕рд╛рдордЧреНрд░реА рдирд┐рдХрд╛рд▓реЗрдВ, рдФрд░ рдХрдорд╛рдВрдб рдкреИрд▓реЗрдЯ рдпрд╛ Intlayer рдЯреИрдм рд╕реЗ build, fill, test, push рдФрд░ pull рдЪрд▓рд╛рдПрдВред
    • LSP server: LSP рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рдиреЗ рд╡рд╛рд▓реЗ рдХрд┐рд╕реА рднреА рд╕рдВрдкрд╛рджрдХ рдореЗрдВ рд╕рдорд╛рди рд╕реБрд╡рд┐рдзрд╛, рдкрд░рд┐рднрд╛рд╖рд╛ рдкрд░ рдЬрд╛рдПрдВ, рдЕрдиреБрд╡рд╛рджрд┐рдд рдорд╛рди рдХрд╛ рдкреВрд░реНрд╡рд╛рд╡рд▓реЛрдХрди рджреЗрдЦреЗрдВ, рдФрд░ рдХреБрдВрдЬреА рдкреВрд░реНрдгрддрд╛ рдкреНрд░рд╛рдкреНрдд рдХрд░реЗрдВред i18next, react-i18next, next-intl рдФрд░ use-intl рдХреЙрд▓ рдХрд╛ рднреА рд╕рдорд░реНрдерди рдХрд░рддрд╛ рд╣реИред
    • MCP server: Cursor, VS Code, Claude Desktop, Claude Code рдФрд░ ChatGPT рдХреЗ рд▓рд┐рдП Intlayer рджрд╕реНрддрд╛рд╡реЗрдЬрд╝ рдФрд░ CLI рдкреНрд░рджрд╛рди рдХрд░рддрд╛ рд╣реИред
    • Agent skills: рдХреЗрдВрджреНрд░рд┐рдд рдХреМрд╢рд▓ рдЬреИрд╕реЗ intlayer-config, intlayer-cli рдФрд░ intlayer-contentред
    • ESLint plugin: no-raw-text рдирд┐рдпрдо рд╣рд╛рд░реНрдбрдХреЛрдбреЗрдб рд╕реНрдЯреНрд░рд┐рдВрдЧреНрд╕ рдХреЛ рдЪрд┐рд╣реНрдирд┐рдд рдХрд░рддрд╛ рд╣реИред