@intlayer/docs 5.8.1 → 6.0.0-canary.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/blog/ar/rag_powered_documentation_assistant.md +282 -0
- package/blog/de/rag_powered_documentation_assistant.md +282 -0
- package/blog/en/rag_powered_documentation_assistant.md +289 -0
- package/blog/en-GB/rag_powered_documentation_assistant.md +284 -0
- package/blog/es/rag_powered_documentation_assistant.md +308 -0
- package/blog/fr/rag_powered_documentation_assistant.md +308 -0
- package/blog/hi/rag_powered_documentation_assistant.md +284 -0
- package/blog/it/rag_powered_documentation_assistant.md +284 -0
- package/blog/ja/rag_powered_documentation_assistant.md +284 -0
- package/blog/ko/rag_powered_documentation_assistant.md +283 -0
- package/blog/pt/rag_powered_documentation_assistant.md +284 -0
- package/blog/ru/rag_powered_documentation_assistant.md +284 -0
- package/blog/tr/index.md +69 -0
- package/blog/tr/internationalization_and_SEO.md +273 -0
- package/blog/tr/intlayer_with_i18next.md +162 -0
- package/blog/tr/intlayer_with_next-i18next.md +367 -0
- package/blog/tr/intlayer_with_next-intl.md +392 -0
- package/blog/tr/intlayer_with_react-i18next.md +346 -0
- package/blog/tr/intlayer_with_react-intl.md +345 -0
- package/blog/tr/list_i18n_technologies/CMS/drupal.md +143 -0
- package/blog/tr/list_i18n_technologies/CMS/wix.md +167 -0
- package/blog/tr/list_i18n_technologies/CMS/wordpress.md +188 -0
- package/blog/tr/list_i18n_technologies/frameworks/angular.md +125 -0
- package/blog/tr/list_i18n_technologies/frameworks/flutter.md +150 -0
- package/blog/tr/list_i18n_technologies/frameworks/react-native.md +217 -0
- package/blog/tr/list_i18n_technologies/frameworks/react.md +155 -0
- package/blog/tr/list_i18n_technologies/frameworks/svelte.md +129 -0
- package/blog/tr/list_i18n_technologies/frameworks/vue.md +130 -0
- package/blog/tr/next-i18next_vs_next-intl_vs_intlayer.md +170 -0
- package/blog/tr/rag_powered_documentation_assistant.md +284 -0
- package/blog/tr/react-i18next_vs_react-intl_vs_intlayer.md +162 -0
- package/blog/tr/vue-i18n_vs_intlayer.md +276 -0
- package/blog/tr/what_is_internationalization.md +166 -0
- package/blog/zh/rag_powered_documentation_assistant.md +284 -0
- package/dist/cjs/generated/blog.entry.cjs +212 -0
- package/dist/cjs/generated/blog.entry.cjs.map +1 -1
- package/dist/cjs/generated/docs.entry.cjs +660 -132
- package/dist/cjs/generated/docs.entry.cjs.map +1 -1
- package/dist/cjs/generated/frequentQuestions.entry.cjs +84 -0
- package/dist/cjs/generated/frequentQuestions.entry.cjs.map +1 -1
- package/dist/cjs/generated/legal.entry.cjs +6 -0
- package/dist/cjs/generated/legal.entry.cjs.map +1 -1
- package/dist/esm/generated/blog.entry.mjs +212 -0
- package/dist/esm/generated/blog.entry.mjs.map +1 -1
- package/dist/esm/generated/docs.entry.mjs +660 -132
- package/dist/esm/generated/docs.entry.mjs.map +1 -1
- package/dist/esm/generated/frequentQuestions.entry.mjs +84 -0
- package/dist/esm/generated/frequentQuestions.entry.mjs.map +1 -1
- package/dist/esm/generated/legal.entry.mjs +6 -0
- package/dist/esm/generated/legal.entry.mjs.map +1 -1
- package/dist/types/generated/blog.entry.d.ts +1 -0
- package/dist/types/generated/blog.entry.d.ts.map +1 -1
- package/dist/types/generated/docs.entry.d.ts +5 -2
- package/dist/types/generated/docs.entry.d.ts.map +1 -1
- package/dist/types/generated/frequentQuestions.entry.d.ts.map +1 -1
- package/dist/types/generated/legal.entry.d.ts.map +1 -1
- package/docs/ar/autoFill.md +41 -40
- package/docs/ar/configuration.md +202 -199
- package/docs/ar/dictionary/content_file.md +1059 -0
- package/docs/ar/intlayer_CMS.md +4 -4
- package/docs/ar/intlayer_with_nestjs.md +271 -0
- package/docs/ar/intlayer_with_nextjs_page_router.md +1 -1
- package/docs/ar/intlayer_with_react_router_v7.md +533 -0
- package/docs/ar/intlayer_with_tanstack.md +465 -299
- package/docs/ar/intlayer_with_vite+preact.md +7 -7
- package/docs/ar/intlayer_with_vite+react.md +7 -7
- package/docs/ar/intlayer_with_vite+vue.md +9 -9
- package/docs/ar/packages/vite-intlayer/index.md +3 -3
- package/docs/ar/readme.md +261 -0
- package/docs/ar/testing.md +199 -0
- package/docs/de/autoFill.md +42 -19
- package/docs/de/configuration.md +155 -147
- package/docs/de/dictionary/content_file.md +1059 -0
- package/docs/de/intlayer_CMS.md +4 -5
- package/docs/de/intlayer_with_nestjs.md +270 -0
- package/docs/de/intlayer_with_nextjs_page_router.md +1 -1
- package/docs/de/intlayer_with_react_router_v7.md +537 -0
- package/docs/de/intlayer_with_tanstack.md +469 -302
- package/docs/de/intlayer_with_vite+preact.md +7 -7
- package/docs/de/intlayer_with_vite+react.md +7 -7
- package/docs/de/intlayer_with_vite+vue.md +9 -9
- package/docs/de/packages/vite-intlayer/index.md +3 -3
- package/docs/de/readme.md +261 -0
- package/docs/de/testing.md +200 -0
- package/docs/en/CI_CD.md +4 -6
- package/docs/en/autoFill.md +25 -5
- package/docs/en/configuration.md +45 -54
- package/docs/en/dictionary/content_file.md +1054 -0
- package/docs/en/intlayer_CMS.md +8 -7
- package/docs/en/intlayer_cli.md +112 -5
- package/docs/en/intlayer_with_nestjs.md +268 -0
- package/docs/en/intlayer_with_nextjs_page_router.md +1 -1
- package/docs/en/intlayer_with_react_router_v7.md +531 -0
- package/docs/en/intlayer_with_tanstack.md +463 -294
- package/docs/en/intlayer_with_vite+preact.md +8 -8
- package/docs/en/intlayer_with_vite+react.md +8 -8
- package/docs/en/intlayer_with_vite+vue.md +8 -8
- package/docs/en/packages/intlayer/getLocalizedUrl.md +102 -25
- package/docs/en/packages/vite-intlayer/index.md +3 -3
- package/docs/en/readme.md +261 -0
- package/docs/en/testing.md +200 -0
- package/docs/en-GB/autoFill.md +29 -6
- package/docs/en-GB/configuration.md +79 -71
- package/docs/en-GB/dictionary/content_file.md +1084 -0
- package/docs/en-GB/intlayer_CMS.md +4 -5
- package/docs/en-GB/intlayer_with_nestjs.md +268 -0
- package/docs/en-GB/intlayer_with_nextjs_page_router.md +1 -1
- package/docs/en-GB/intlayer_with_react_router_v7.md +533 -0
- package/docs/en-GB/intlayer_with_tanstack.md +466 -299
- package/docs/en-GB/intlayer_with_vite+preact.md +7 -7
- package/docs/en-GB/intlayer_with_vite+react.md +7 -7
- package/docs/en-GB/intlayer_with_vite+vue.md +9 -9
- package/docs/en-GB/packages/vite-intlayer/index.md +3 -3
- package/docs/en-GB/readme.md +261 -0
- package/docs/en-GB/testing.md +200 -0
- package/docs/es/autoFill.md +45 -23
- package/docs/es/configuration.md +171 -167
- package/docs/es/dictionary/content_file.md +1088 -0
- package/docs/es/intlayer_CMS.md +4 -5
- package/docs/es/intlayer_with_nestjs.md +268 -0
- package/docs/es/intlayer_with_nextjs_page_router.md +1 -1
- package/docs/es/intlayer_with_react_router_v7.md +533 -0
- package/docs/es/intlayer_with_tanstack.md +469 -280
- package/docs/es/intlayer_with_vite+preact.md +7 -7
- package/docs/es/intlayer_with_vite+react.md +7 -7
- package/docs/es/intlayer_with_vite+vue.md +9 -9
- package/docs/es/packages/vite-intlayer/index.md +3 -3
- package/docs/es/readme.md +261 -0
- package/docs/es/testing.md +200 -0
- package/docs/fr/autoFill.md +47 -24
- package/docs/fr/configuration.md +213 -198
- package/docs/fr/dictionary/content_file.md +1054 -0
- package/docs/fr/intlayer_CMS.md +4 -5
- package/docs/fr/intlayer_with_nestjs.md +268 -0
- package/docs/fr/intlayer_with_nextjs_page_router.md +1 -1
- package/docs/fr/intlayer_with_react_router_v7.md +549 -0
- package/docs/fr/intlayer_with_tanstack.md +465 -279
- package/docs/fr/intlayer_with_vite+preact.md +7 -7
- package/docs/fr/intlayer_with_vite+react.md +7 -7
- package/docs/fr/intlayer_with_vite+vue.md +9 -9
- package/docs/fr/packages/vite-intlayer/index.md +3 -3
- package/docs/fr/readme.md +261 -0
- package/docs/fr/testing.md +200 -0
- package/docs/hi/autoFill.md +47 -25
- package/docs/hi/configuration.md +194 -189
- package/docs/hi/dictionary/content_file.md +1056 -0
- package/docs/hi/intlayer_CMS.md +4 -5
- package/docs/hi/intlayer_with_nestjs.md +269 -0
- package/docs/hi/intlayer_with_nextjs_page_router.md +1 -1
- package/docs/hi/intlayer_with_react_router_v7.md +533 -0
- package/docs/hi/intlayer_with_tanstack.md +467 -282
- package/docs/hi/intlayer_with_vite+preact.md +7 -7
- package/docs/hi/intlayer_with_vite+react.md +7 -7
- package/docs/hi/intlayer_with_vite+vue.md +9 -9
- package/docs/hi/packages/vite-intlayer/index.md +3 -3
- package/docs/hi/readme.md +261 -0
- package/docs/hi/testing.md +200 -0
- package/docs/it/autoFill.md +46 -24
- package/docs/it/configuration.md +169 -161
- package/docs/it/dictionary/content_file.md +1061 -0
- package/docs/it/intlayer_CMS.md +4 -5
- package/docs/it/intlayer_with_nestjs.md +268 -0
- package/docs/it/intlayer_with_nextjs_page_router.md +1 -1
- package/docs/it/intlayer_with_react_router_v7.md +535 -0
- package/docs/it/intlayer_with_tanstack.md +467 -301
- package/docs/it/intlayer_with_vite+preact.md +7 -7
- package/docs/it/intlayer_with_vite+react.md +7 -7
- package/docs/it/intlayer_with_vite+vue.md +9 -9
- package/docs/it/packages/vite-intlayer/index.md +3 -3
- package/docs/it/readme.md +261 -0
- package/docs/it/testing.md +200 -0
- package/docs/ja/autoFill.md +45 -23
- package/docs/ja/configuration.md +243 -204
- package/docs/ja/dictionary/content_file.md +1064 -0
- package/docs/ja/intlayer_CMS.md +4 -5
- package/docs/ja/intlayer_with_nestjs.md +268 -0
- package/docs/ja/intlayer_with_nextjs_page_router.md +1 -1
- package/docs/ja/intlayer_with_react_router_v7.md +534 -0
- package/docs/ja/intlayer_with_tanstack.md +467 -303
- package/docs/ja/intlayer_with_vite+preact.md +7 -7
- package/docs/ja/intlayer_with_vite+react.md +7 -7
- package/docs/ja/intlayer_with_vite+vue.md +9 -9
- package/docs/ja/packages/vite-intlayer/index.md +3 -3
- package/docs/ja/readme.md +263 -0
- package/docs/ja/testing.md +200 -0
- package/docs/ko/autoFill.md +39 -16
- package/docs/ko/configuration.md +217 -197
- package/docs/ko/dictionary/content_file.md +1060 -0
- package/docs/ko/intlayer_CMS.md +4 -5
- package/docs/ko/intlayer_with_nestjs.md +268 -0
- package/docs/ko/intlayer_with_nextjs_page_router.md +1 -1
- package/docs/ko/intlayer_with_react_router_v7.md +540 -0
- package/docs/ko/intlayer_with_tanstack.md +466 -302
- package/docs/ko/intlayer_with_vite+preact.md +7 -7
- package/docs/ko/intlayer_with_vite+react.md +7 -7
- package/docs/ko/intlayer_with_vite+vue.md +9 -9
- package/docs/ko/packages/vite-intlayer/index.md +3 -3
- package/docs/ko/readme.md +261 -0
- package/docs/ko/testing.md +200 -0
- package/docs/pt/autoFill.md +39 -15
- package/docs/pt/configuration.md +165 -147
- package/docs/pt/dictionary/content_file.md +1062 -0
- package/docs/pt/intlayer_CMS.md +4 -5
- package/docs/pt/intlayer_with_nestjs.md +271 -0
- package/docs/pt/intlayer_with_nextjs_page_router.md +1 -1
- package/docs/pt/intlayer_with_react_router_v7.md +535 -0
- package/docs/pt/intlayer_with_tanstack.md +469 -300
- package/docs/pt/intlayer_with_vite+preact.md +7 -7
- package/docs/pt/intlayer_with_vite+react.md +7 -7
- package/docs/pt/intlayer_with_vite+vue.md +9 -9
- package/docs/pt/packages/vite-intlayer/index.md +3 -3
- package/docs/pt/readme.md +261 -0
- package/docs/pt/testing.md +200 -0
- package/docs/ru/autoFill.md +52 -30
- package/docs/ru/configuration.md +164 -117
- package/docs/ru/dictionary/content_file.md +1064 -0
- package/docs/ru/intlayer_CMS.md +4 -4
- package/docs/ru/intlayer_with_nestjs.md +270 -0
- package/docs/ru/intlayer_with_nextjs_page_router.md +1 -1
- package/docs/ru/intlayer_with_react_router_v7.md +534 -0
- package/docs/ru/intlayer_with_tanstack.md +470 -305
- package/docs/ru/intlayer_with_vite+preact.md +7 -7
- package/docs/ru/intlayer_with_vite+react.md +7 -7
- package/docs/ru/intlayer_with_vite+vue.md +9 -9
- package/docs/ru/packages/vite-intlayer/index.md +3 -3
- package/docs/ru/readme.md +261 -0
- package/docs/ru/testing.md +202 -0
- package/docs/tr/CI_CD.md +198 -0
- package/docs/tr/autoFill.md +201 -0
- package/docs/tr/configuration.md +585 -0
- package/docs/tr/dictionary/condition.md +243 -0
- package/docs/tr/dictionary/content_file.md +1055 -0
- package/docs/tr/dictionary/enumeration.md +251 -0
- package/docs/tr/dictionary/file.md +228 -0
- package/docs/tr/dictionary/function_fetching.md +218 -0
- package/docs/tr/dictionary/gender.md +279 -0
- package/docs/tr/dictionary/insertion.md +191 -0
- package/docs/tr/dictionary/markdown.md +385 -0
- package/docs/tr/dictionary/nesting.md +279 -0
- package/docs/tr/dictionary/translation.md +315 -0
- package/docs/tr/formatters.md +618 -0
- package/docs/tr/how_works_intlayer.md +254 -0
- package/docs/tr/index.md +168 -0
- package/docs/tr/interest_of_intlayer.md +288 -0
- package/docs/tr/intlayer_CMS.md +347 -0
- package/docs/tr/intlayer_cli.md +570 -0
- package/docs/tr/intlayer_visual_editor.md +269 -0
- package/docs/tr/intlayer_with_angular.md +694 -0
- package/docs/tr/intlayer_with_create_react_app.md +1218 -0
- package/docs/tr/intlayer_with_express.md +415 -0
- package/docs/tr/intlayer_with_lynx+react.md +511 -0
- package/docs/tr/intlayer_with_nestjs.md +268 -0
- package/docs/tr/intlayer_with_nextjs_14.md +1029 -0
- package/docs/tr/intlayer_with_nextjs_15.md +1506 -0
- package/docs/tr/intlayer_with_nextjs_page_router.md +1484 -0
- package/docs/tr/intlayer_with_nuxt.md +773 -0
- package/docs/tr/intlayer_with_react_native+expo.md +660 -0
- package/docs/tr/intlayer_with_react_router_v7.md +531 -0
- package/docs/tr/intlayer_with_tanstack.md +452 -0
- package/docs/tr/intlayer_with_vite+preact.md +1673 -0
- package/docs/tr/intlayer_with_vite+react.md +1632 -0
- package/docs/tr/intlayer_with_vite+solid.md +288 -0
- package/docs/tr/intlayer_with_vite+svelte.md +288 -0
- package/docs/tr/intlayer_with_vite+vue.md +1042 -0
- package/docs/tr/introduction.md +209 -0
- package/docs/tr/locale_mapper.md +244 -0
- package/docs/tr/mcp_server.md +207 -0
- package/docs/tr/packages/@intlayer/api/index.md +58 -0
- package/docs/tr/packages/@intlayer/chokidar/index.md +57 -0
- package/docs/tr/packages/@intlayer/cli/index.md +47 -0
- package/docs/tr/packages/@intlayer/config/index.md +142 -0
- package/docs/tr/packages/@intlayer/core/index.md +51 -0
- package/docs/tr/packages/@intlayer/design-system/index.md +47 -0
- package/docs/tr/packages/@intlayer/dictionary-entry/index.md +53 -0
- package/docs/tr/packages/@intlayer/editor/index.md +47 -0
- package/docs/tr/packages/@intlayer/editor-react/index.md +47 -0
- package/docs/tr/packages/@intlayer/webpack/index.md +61 -0
- package/docs/tr/packages/angular-intlayer/index.md +59 -0
- package/docs/tr/packages/express-intlayer/index.md +258 -0
- package/docs/tr/packages/express-intlayer/t.md +459 -0
- package/docs/tr/packages/intlayer/getConfiguration.md +151 -0
- package/docs/tr/packages/intlayer/getEnumeration.md +165 -0
- package/docs/tr/packages/intlayer/getHTMLTextDir.md +127 -0
- package/docs/tr/packages/intlayer/getLocaleLang.md +87 -0
- package/docs/tr/packages/intlayer/getLocaleName.md +124 -0
- package/docs/tr/packages/intlayer/getLocalizedUrl.md +324 -0
- package/docs/tr/packages/intlayer/getMultilingualUrls.md +225 -0
- package/docs/tr/packages/intlayer/getPathWithoutLocale.md +81 -0
- package/docs/tr/packages/intlayer/getTranslation.md +196 -0
- package/docs/tr/packages/intlayer/getTranslationContent.md +195 -0
- package/docs/tr/packages/intlayer/index.md +505 -0
- package/docs/tr/packages/intlayer-cli/index.md +71 -0
- package/docs/tr/packages/intlayer-editor/index.md +139 -0
- package/docs/tr/packages/lynx-intlayer/index.md +85 -0
- package/docs/tr/packages/next-intlayer/index.md +154 -0
- package/docs/tr/packages/next-intlayer/t.md +354 -0
- package/docs/tr/packages/next-intlayer/useDictionary.md +270 -0
- package/docs/tr/packages/next-intlayer/useIntlayer.md +265 -0
- package/docs/tr/packages/next-intlayer/useLocale.md +133 -0
- package/docs/tr/packages/nuxt-intlayer/index.md +59 -0
- package/docs/tr/packages/preact-intlayer/index.md +55 -0
- package/docs/tr/packages/react-intlayer/index.md +148 -0
- package/docs/tr/packages/react-intlayer/t.md +304 -0
- package/docs/tr/packages/react-intlayer/useDictionary.md +554 -0
- package/docs/tr/packages/react-intlayer/useI18n.md +478 -0
- package/docs/tr/packages/react-intlayer/useIntlayer.md +253 -0
- package/docs/tr/packages/react-intlayer/useLocale.md +212 -0
- package/docs/tr/packages/react-native-intlayer/index.md +85 -0
- package/docs/tr/packages/react-scripts-intlayer/index.md +82 -0
- package/docs/tr/packages/solid-intlayer/index.md +56 -0
- package/docs/tr/packages/svelte-intlayer/index.md +55 -0
- package/docs/tr/packages/vite-intlayer/index.md +82 -0
- package/docs/tr/packages/vue-intlayer/index.md +59 -0
- package/docs/tr/per_locale_file.md +321 -0
- package/docs/tr/readme.md +261 -0
- package/docs/tr/roadmap.md +338 -0
- package/docs/tr/testing.md +200 -0
- package/docs/tr/vs_code_extension.md +154 -0
- package/docs/zh/autoFill.md +40 -18
- package/docs/zh/configuration.md +245 -226
- package/docs/zh/dictionary/content_file.md +1064 -0
- package/docs/zh/intlayer_CMS.md +4 -5
- package/docs/zh/intlayer_with_nestjs.md +268 -0
- package/docs/zh/intlayer_with_nextjs_page_router.md +1 -1
- package/docs/zh/intlayer_with_react_router_v7.md +535 -0
- package/docs/zh/intlayer_with_tanstack.md +468 -278
- package/docs/zh/intlayer_with_vite+preact.md +7 -7
- package/docs/zh/intlayer_with_vite+react.md +7 -7
- package/docs/zh/intlayer_with_vite+vue.md +7 -7
- package/docs/zh/packages/vite-intlayer/index.md +3 -3
- package/docs/zh/readme.md +261 -0
- package/docs/zh/testing.md +198 -0
- package/frequent_questions/tr/SSR_Next_no_[locale].md +105 -0
- package/frequent_questions/tr/array_as_content_declaration.md +72 -0
- package/frequent_questions/tr/build_dictionaries.md +59 -0
- package/frequent_questions/tr/build_error_CI_CD.md +75 -0
- package/frequent_questions/tr/customized_locale_list.md +65 -0
- package/frequent_questions/tr/domain_routing.md +114 -0
- package/frequent_questions/tr/esbuild_error.md +30 -0
- package/frequent_questions/tr/get_locale_cookie.md +142 -0
- package/frequent_questions/tr/intlayer_command_undefined.md +156 -0
- package/frequent_questions/tr/locale_incorect_in_url.md +74 -0
- package/frequent_questions/tr/static_rendering.md +45 -0
- package/frequent_questions/tr/translated_path_url.md +56 -0
- package/frequent_questions/tr/unknown_command.md +98 -0
- package/legal/tr/privacy_notice.md +83 -0
- package/legal/tr/terms_of_service.md +55 -0
- package/package.json +12 -12
- package/src/generated/blog.entry.ts +212 -0
- package/src/generated/docs.entry.ts +663 -135
- package/src/generated/frequentQuestions.entry.ts +85 -1
- package/src/generated/legal.entry.ts +7 -1
- package/docs/ar/dictionary/content_extention_customization.md +0 -100
- package/docs/ar/dictionary/get_started.md +0 -527
- package/docs/de/dictionary/content_extention_customization.md +0 -100
- package/docs/de/dictionary/get_started.md +0 -531
- package/docs/en/dictionary/content_extention_customization.md +0 -102
- package/docs/en/dictionary/get_started.md +0 -529
- package/docs/en-GB/dictionary/content_extention_customization.md +0 -100
- package/docs/en-GB/dictionary/get_started.md +0 -591
- package/docs/es/dictionary/content_extention_customization.md +0 -100
- package/docs/es/dictionary/get_started.md +0 -527
- package/docs/fr/dictionary/content_extention_customization.md +0 -100
- package/docs/fr/dictionary/get_started.md +0 -527
- package/docs/hi/dictionary/content_extention_customization.md +0 -100
- package/docs/hi/dictionary/get_started.md +0 -527
- package/docs/it/dictionary/content_extention_customization.md +0 -113
- package/docs/it/dictionary/get_started.md +0 -573
- package/docs/ja/dictionary/content_extention_customization.md +0 -113
- package/docs/ja/dictionary/get_started.md +0 -576
- package/docs/ko/dictionary/content_extention_customization.md +0 -100
- package/docs/ko/dictionary/get_started.md +0 -530
- package/docs/pt/dictionary/content_extention_customization.md +0 -100
- package/docs/pt/dictionary/get_started.md +0 -532
- package/docs/ru/dictionary/content_extention_customization.md +0 -100
- package/docs/ru/dictionary/get_started.md +0 -575
- package/docs/zh/dictionary/content_extention_customization.md +0 -117
- package/docs/zh/dictionary/get_started.md +0 -533
|
@@ -1048,38 +1048,38 @@ const App = () => (
|
|
|
1048
1048
|
module.exports = App;
|
|
1049
1049
|
```
|
|
1050
1050
|
|
|
1051
|
-
In parallel, you can also use the `
|
|
1051
|
+
In parallel, you can also use the `intlayerMiddlewarePlugin` to add server-side routing to your application. This plugin will automatically detect the current locale based on the URL and set the appropriate locale cookie. If no locale is specified, the plugin will determine the most appropriate locale based on the user's browser language preferences. If no locale is detected, it will redirect to the default locale.
|
|
1052
1052
|
|
|
1053
1053
|
```typescript {3,7} fileName="vite.config.ts" codeFormat="typescript"
|
|
1054
1054
|
import { defineConfig } from "vite";
|
|
1055
1055
|
import preact from "@preact/preset-vite";
|
|
1056
|
-
import { intlayerPlugin,
|
|
1056
|
+
import { intlayerPlugin, intlayerMiddlewarePlugin } from "vite-intlayer";
|
|
1057
1057
|
|
|
1058
1058
|
// https://vitejs.dev/config/
|
|
1059
1059
|
export default defineConfig({
|
|
1060
|
-
plugins: [preact(), intlayerPlugin(),
|
|
1060
|
+
plugins: [preact(), intlayerPlugin(), intlayerMiddlewarePlugin()],
|
|
1061
1061
|
});
|
|
1062
1062
|
```
|
|
1063
1063
|
|
|
1064
1064
|
```javascript {3,7} fileName="vite.config.mjs" codeFormat="esm"
|
|
1065
1065
|
import { defineConfig } from "vite";
|
|
1066
1066
|
import preact from "@preact/preset-vite";
|
|
1067
|
-
import { intlayerPlugin,
|
|
1067
|
+
import { intlayerPlugin, intlayerMiddlewarePlugin } from "vite-intlayer";
|
|
1068
1068
|
|
|
1069
1069
|
// https://vitejs.dev/config/
|
|
1070
1070
|
export default defineConfig({
|
|
1071
|
-
plugins: [preact(), intlayerPlugin(),
|
|
1071
|
+
plugins: [preact(), intlayerPlugin(), intlayerMiddlewarePlugin()],
|
|
1072
1072
|
});
|
|
1073
1073
|
```
|
|
1074
1074
|
|
|
1075
1075
|
```javascript {3,7} fileName="vite.config.cjs" codeFormat="commonjs"
|
|
1076
1076
|
const { defineConfig } = require("vite");
|
|
1077
1077
|
const preact = require("@preact/preset-vite");
|
|
1078
|
-
const { intlayerPlugin,
|
|
1078
|
+
const { intlayerPlugin, intlayerMiddlewarePlugin } = require("vite-intlayer");
|
|
1079
1079
|
|
|
1080
1080
|
// https://vitejs.dev/config/
|
|
1081
1081
|
module.exports = defineConfig({
|
|
1082
|
-
plugins: [preact(), intlayerPlugin(),
|
|
1082
|
+
plugins: [preact(), intlayerPlugin(), intlayerMiddlewarePlugin()],
|
|
1083
1083
|
});
|
|
1084
1084
|
```
|
|
1085
1085
|
|
|
@@ -1037,38 +1037,38 @@ const App = () => (
|
|
|
1037
1037
|
);
|
|
1038
1038
|
```
|
|
1039
1039
|
|
|
1040
|
-
In parallel, you can also use the `
|
|
1040
|
+
In parallel, you can also use the `intlayerMiddlewarePlugin` to add server-side routing to your application. This plugin will automatically detect the current locale based on the URL and set the appropriate locale cookie. If no locale is specified, the plugin will determine the most appropriate locale based on the user's browser language preferences. If no locale is detected, it will redirect to the default locale.
|
|
1041
1041
|
|
|
1042
1042
|
```typescript {3,7} fileName="vite.config.ts" codeFormat="typescript"
|
|
1043
1043
|
import { defineConfig } from "vite";
|
|
1044
1044
|
import react from "@vitejs/plugin-react-swc";
|
|
1045
|
-
import { intlayerPlugin,
|
|
1045
|
+
import { intlayerPlugin, intlayerMiddlewarePlugin } from "vite-intlayer";
|
|
1046
1046
|
|
|
1047
1047
|
// https://vitejs.dev/config/
|
|
1048
1048
|
export default defineConfig({
|
|
1049
|
-
plugins: [react(), intlayerPlugin(),
|
|
1049
|
+
plugins: [react(), intlayerPlugin(), intlayerMiddlewarePlugin()],
|
|
1050
1050
|
});
|
|
1051
1051
|
```
|
|
1052
1052
|
|
|
1053
1053
|
```javascript {3,7} fileName="vite.config.mjs" codeFormat="esm"
|
|
1054
1054
|
import { defineConfig } from "vite";
|
|
1055
1055
|
import react from "@vitejs/plugin-react-swc";
|
|
1056
|
-
import { intlayerPlugin,
|
|
1056
|
+
import { intlayerPlugin, intlayerMiddlewarePlugin } from "vite-intlayer";
|
|
1057
1057
|
|
|
1058
1058
|
// https://vitejs.dev/config/
|
|
1059
1059
|
export default defineConfig({
|
|
1060
|
-
plugins: [react(), intlayerPlugin(),
|
|
1060
|
+
plugins: [react(), intlayerPlugin(), intlayerMiddlewarePlugin()],
|
|
1061
1061
|
});
|
|
1062
1062
|
```
|
|
1063
1063
|
|
|
1064
1064
|
```javascript {3,7} fileName="vite.config.cjs" codeFormat="commonjs"
|
|
1065
1065
|
const { defineConfig } = require("vite");
|
|
1066
1066
|
const react = require("@vitejs/plugin-react-swc");
|
|
1067
|
-
const { intlayerPlugin,
|
|
1067
|
+
const { intlayerPlugin, intlayerMiddlewarePlugin } = require("vite-intlayer");
|
|
1068
1068
|
|
|
1069
1069
|
// https://vitejs.dev/config/
|
|
1070
1070
|
module.exports = defineConfig({
|
|
1071
|
-
plugins: [react(), intlayerPlugin(),
|
|
1071
|
+
plugins: [react(), intlayerPlugin(), intlayerMiddlewarePlugin()],
|
|
1072
1072
|
});
|
|
1073
1073
|
```
|
|
1074
1074
|
|
|
@@ -672,38 +672,38 @@ import LocaleSwitcher from "@components/LocaleSwitcher.vue";
|
|
|
672
672
|
</template>
|
|
673
673
|
```
|
|
674
674
|
|
|
675
|
-
In parallel, you can also use the `
|
|
675
|
+
In parallel, you can also use the `intlayerMiddlewarePlugin` to add server-side routing to your application. This plugin will automatically detect the current locale based on the URL and set the appropriate locale cookie. If no locale is specified, the plugin will determine the most appropriate locale based on the user's browser language preferences. If no locale is detected, it will redirect to the default locale.
|
|
676
676
|
|
|
677
677
|
```typescript {3,7} fileName="vite.config.ts" codeFormat="typescript"
|
|
678
678
|
import { defineConfig } from "vite";
|
|
679
679
|
import vue from "@vitejs/plugin-vue";
|
|
680
|
-
import { intlayerPlugin,
|
|
680
|
+
import { intlayerPlugin, intlayerMiddlewarePlugin } from "vite-intlayer";
|
|
681
681
|
|
|
682
682
|
// https://vitejs.dev/config/
|
|
683
683
|
export default defineConfig({
|
|
684
|
-
plugins: [vue(), intlayerPlugin(),
|
|
684
|
+
plugins: [vue(), intlayerPlugin(), intlayerMiddlewarePlugin()],
|
|
685
685
|
});
|
|
686
686
|
```
|
|
687
687
|
|
|
688
688
|
```javascript {3,7} fileName="vite.config.mjs" codeFormat="esm"
|
|
689
689
|
import { defineConfig } from "vite";
|
|
690
690
|
import vue from "@vitejs/plugin-vue";
|
|
691
|
-
import { intlayerPlugin,
|
|
691
|
+
import { intlayerPlugin, intlayerMiddlewarePlugin } from "vite-intlayer";
|
|
692
692
|
|
|
693
693
|
// https://vitejs.dev/config/
|
|
694
694
|
export default defineConfig({
|
|
695
|
-
plugins: [vue(), intlayerPlugin(),
|
|
695
|
+
plugins: [vue(), intlayerPlugin(), intlayerMiddlewarePlugin()],
|
|
696
696
|
});
|
|
697
697
|
```
|
|
698
698
|
|
|
699
699
|
```javascript {3,7} fileName="vite.config.cjs" codeFormat="commonjs"
|
|
700
700
|
const { defineConfig } = require("vite");
|
|
701
701
|
const vue = require("@vitejs/plugin-vue");
|
|
702
|
-
const { intlayerPlugin,
|
|
702
|
+
const { intlayerPlugin, intlayerMiddlewarePlugin } = require("vite-intlayer");
|
|
703
703
|
|
|
704
704
|
// https://vitejs.dev/config/
|
|
705
705
|
module.exports = defineConfig({
|
|
706
|
-
plugins: [vue(), intlayerPlugin(),
|
|
706
|
+
plugins: [vue(), intlayerPlugin(), intlayerMiddlewarePlugin()],
|
|
707
707
|
});
|
|
708
708
|
```
|
|
709
709
|
|
|
@@ -722,9 +722,9 @@ To automatically update the URL when the user changes the language, you can modi
|
|
|
722
722
|
</div>
|
|
723
723
|
const { defineConfig } = require("vite"); const vue =
|
|
724
724
|
require("@vitejs/plugin-vue"); const { intlayerPlugin,
|
|
725
|
-
|
|
725
|
+
intlayerMiddlewarePlugin } = require("vite-intlayer"); //
|
|
726
726
|
https://vitejs.dev/config/ module.exports = defineConfig({ plugins: [vue(),
|
|
727
|
-
intlayerPlugin(),
|
|
727
|
+
intlayerPlugin(), intlayerMiddlewarePlugin()], });
|
|
728
728
|
</template>
|
|
729
729
|
```
|
|
730
730
|
|
|
@@ -53,17 +53,17 @@ See an example of how to include the plugins into your Vite configuration.
|
|
|
53
53
|
|
|
54
54
|
```typescript fileName="vite.config.ts"
|
|
55
55
|
import { defineConfig } from "vite";
|
|
56
|
-
import { intlayerPlugin,
|
|
56
|
+
import { intlayerPlugin, intlayerMiddlewarePlugin } from "vite-intlayer";
|
|
57
57
|
|
|
58
58
|
// https://vitejs.dev/config/
|
|
59
59
|
export default defineConfig({
|
|
60
|
-
plugins: [intlayerPlugin(),
|
|
60
|
+
plugins: [intlayerPlugin(), intlayerMiddlewarePlugin()],
|
|
61
61
|
});
|
|
62
62
|
```
|
|
63
63
|
|
|
64
64
|
> The `intlayerPlugin()` Vite plugin is used to integrate Intlayer with Vite. It ensures the building of content declaration files and monitors them in development mode. It defines Intlayer environment variables within the Vite application. Additionally, it provides aliases to optimise performance.
|
|
65
65
|
|
|
66
|
-
> The `
|
|
66
|
+
> The `intlayerMiddlewarePlugin()` adds server-side routing to your application. This plugin will automatically detect the current locale based on the URL and set the appropriate locale cookie. If no locale is specified, the plugin will determine the most appropriate locale based on the user's browser language preferences. If no locale is detected, it will redirect to the default locale.
|
|
67
67
|
|
|
68
68
|
## Mastering the internationalisation of your Vite application
|
|
69
69
|
|
|
@@ -0,0 +1,261 @@
|
|
|
1
|
+
<p align="center">
|
|
2
|
+
<a href="https://intlayer.org">
|
|
3
|
+
<img src="https://raw.githubusercontent.com/aymericzip/intlayer/main/docs/assets/cover.png" width="60%" alt="Intlayer Logo" />
|
|
4
|
+
</a>
|
|
5
|
+
</p>
|
|
6
|
+
|
|
7
|
+
<h1 align="center">
|
|
8
|
+
<strong> Intlayer : an Open-source, flexible i18n toolkit with AI-powered translation & CMS.</strong>
|
|
9
|
+
</h1>
|
|
10
|
+
|
|
11
|
+
<br />
|
|
12
|
+
|
|
13
|
+
<p align="center">
|
|
14
|
+
<a href="https://intlayer.org/doc/concept/content">Docs</a> •
|
|
15
|
+
<a href="https://intlayer.org/doc/environment/nextjs">Next.js</a> •
|
|
16
|
+
<a href="https://intlayer.org/doc/environment/vite-and-react">React + Vite</a> •
|
|
17
|
+
<a href="https://intlayer.org/doc/concept/cms">CMS</a> •
|
|
18
|
+
<a href="https://discord.gg/7uxamYVeCk">Discord</a>
|
|
19
|
+
</p>
|
|
20
|
+
<p align="center" style="margin-top:15px;">
|
|
21
|
+
<a href="https://www.npmjs.com/package/intlayer" target="_blank"><img src="https://img.shields.io/npm/v/intlayer?style=for-the-badge&labelColor=FFFFFF&color=000000&logoColor=FFFFFF" alt="npm version" height="24"/>
|
|
22
|
+
</a>
|
|
23
|
+
<a href="https://github.com/aymericzip/intlayer/stargazers" target="_blank"><img src="https://img.shields.io/github/stars/aymericzip/intlayer?style=for-the-badge&labelColor=000000&color=FFFFFF&logo=github&logoColor=FFD700" alt="GitHub Stars" height="24"/>
|
|
24
|
+
</a>
|
|
25
|
+
<a href="https://www.npmjs.org/package/intlayer" target="_blank"><img src="https://img.shields.io/npm/dm/intlayer?style=for-the-badge&labelColor=000000&color=FFFFFF&logoColor=000000" alt="monthly downloads" height="24"/>
|
|
26
|
+
</a>
|
|
27
|
+
<a href="https://github.com/aymericzip/intlayer/blob/main/LICENSE"><img src="https://img.shields.io/github/license/aymericzip/intlayer?style=for-the-badge&labelColor=000000&color=FFFFFF&logoColor=000000" alt="licence"/>
|
|
28
|
+
</a>
|
|
29
|
+
<a href="https://github.com/aymericzip/intlayer/commits/main"><img src="https://img.shields.io/github/last-commit/aymericzip/intlayer?style=for-the-badge&labelColor=000000&color=FFFFFF&logoColor=000000" alt="last commit"/>
|
|
30
|
+
</a>
|
|
31
|
+
</p>
|
|
32
|
+
|
|
33
|
+

|
|
34
|
+
|
|
35
|
+
<a href="https://intlayer.org/doc/concept/content">
|
|
36
|
+
<img src="https://img.shields.io/badge/Get_Started-FFFFFF?style=for-the-badge&logo=rocket&logoColor=black" />
|
|
37
|
+
</a>
|
|
38
|
+
|
|
39
|
+
## What is Intlayer?
|
|
40
|
+
|
|
41
|
+
Most i18n libraries are either too complex, too rigid, or not designed for modern frameworks.
|
|
42
|
+
|
|
43
|
+
Intlayer is a **modern i18n solution** for web and mobile applications.
|
|
44
|
+
It is framework-agnostic, **AI-powered**, and includes a free **CMS & visual editor**.
|
|
45
|
+
|
|
46
|
+
With **per-locale content files**, **TypeScript autocompletion**, **tree-shakable dictionaries**, and **CI/CD integration**, Intlayer makes internationalisation **faster, cleaner, and smarter**.
|
|
47
|
+
|
|
48
|
+
## Key benefits of Intlayer:
|
|
49
|
+
|
|
50
|
+
| Feature | Description |
|
|
51
|
+
| --------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
|
52
|
+
| <img src="https://github.com/aymericzip/intlayer/blob/main/docs/assets/frameworks.png?raw=true" alt="Feature" width="700"> | **Cross-Framework Support**<br><br>Intlayer is compatible with all major frameworks and libraries, including Next.js, React, Vite, Vue.js, Nuxt, Preact, Express, and more. |
|
|
53
|
+
| <img src="https://github.com/aymericzip/intlayer/blob/main/docs/assets/javascript_content_management.png?raw=true" alt="Feature" width="700"> | **JavaScript-Powered Content Management**<br><br>Harness the flexibility of JavaScript to define and manage your content efficiently. <br><br> - [Content declaration](https://intlayer.org/doc/concept/content) |
|
|
54
|
+
| <img src="https://github.com/aymericzip/intlayer/blob/main/docs/assets/per_locale_content_declaration_file.png?raw=true" alt="Feature" width="700"> | **Per-Locale Content Declaration File**<br><br>Accelerate your development by declaring your content once, prior to auto-generation.<br><br> - [Per-Locale Content Declaration File](https://intlayer.org/doc/concept/per-locale-file) |
|
|
55
|
+
| <img src="https://github.com/aymericzip/intlayer/blob/main/docs/assets/autocompletion.png?raw=true" alt="Feature" width="700"> | **Type-Safe Environment**<br><br>Utilise TypeScript to ensure your content definitions and code are error-free, while also benefiting from IDE autocompletion.<br><br> - [TypeScript configuration](https://intlayer.org/doc/environment/vite-and-react#configure-typescript) |
|
|
56
|
+
| <img src="https://github.com/aymericzip/intlayer/blob/main/docs/assets/config_file.png?raw=true" alt="Feature" width="700"> | **Simplified Setup**<br><br>Get up and running quickly with minimal configuration. Adjust settings for internationalisation, routing, AI, build, and content handling with ease. <br><br> - [Explore Next.js integration](https://intlayer.org/doc/environment/nextjs) |
|
|
57
|
+
| <img src="https://github.com/aymericzip/intlayer/blob/main/docs/assets/content_retrieval.png?raw=true" alt="Feature" width="700"> | **Simplified Content Retrieval**<br><br>No need to call your `t` function for each piece of content. Retrieve all your content directly using a single hook.<br><br> - [React integration](https://intlayer.org/doc/environment/create-react-app) |
|
|
58
|
+
| <img src="https://github.com/aymericzip/intlayer/blob/main/docs/assets/server_component.png?raw=true" alt="Feature" width="700"> | **Consistent Server Component Implementation**<br><br>Perfectly suited for Next.js server components, use the same implementation for both client and server components, no need to pass your `t` function across each server component. <br><br> - [Server Components](https://intlayer.org/doc/environment/nextjs#step-7-utilize-content-in-your-code) |
|
|
59
|
+
| <img src="https://github.com/aymericzip/intlayer/blob/main/docs/assets/file_tree.png?raw=true" alt="Feature" width="700"> | **Organised Codebase**<br><br>Keep your codebase more organised: 1 component = 1 dictionary in the same folder. Translations close to their respective components enhance maintainability and clarity. <br><br> - [How Intlayer works](https://intlayer.org/doc/concept/how-works-intlayer) |
|
|
60
|
+
| <img src="https://github.com/aymericzip/intlayer/blob/main/docs/assets/url_routing.png?raw=true" alt="Feature" width="700"> | **Enhanced Routing**<br><br>Full support for app routing, adapting seamlessly to complex application structures, for Next.js, React, Vite, Vue.js, etc.<br><br> - [Explore Next.js integration](https://intlayer.org/doc/environment/nextjs) |
|
|
61
|
+
| <img src="https://github.com/aymericzip/intlayer/blob/main/docs/assets/markdown.png?raw=true" alt="Feature" width="700"> | **Markdown Support**<br><br>Import and interpret locale files and remote Markdown for multilingual content such as privacy policies, documentation, etc. Interpret and make Markdown metadata accessible in your code.<br><br> - [Content files](https://intlayer.org/doc/concept/content/file) |
|
|
62
|
+
| <img src="https://github.com/aymericzip/intlayer/blob/main/docs/assets/visual_editor.png?raw=true" alt="Feature" width="700"> | **Free Visual Editor & CMS**<br><br>A free visual editor and CMS are available for content writers, removing the need for a localisation platform. Keep your content synchronised using Git, or externalise it totally or partially with the CMS.<br><br> - [Intlayer Editor](https://intlayer.org/doc/concept/editor) <br> - [Intlayer CMS](https://intlayer.org/doc/concept/cms) |
|
|
63
|
+
| <img src="https://github.com/aymericzip/intlayer/blob/main/docs/assets/bundle.png?raw=true" alt="Feature" width="700"> | **Tree-shakable Content**<br><br>Tree-shakable content, reducing the size of the final bundle. Loads content per component, excluding any unused content from your bundle. Supports lazy loading to enhance app loading efficiency. <br><br> - [App build optimisation](https://intlayer.org/doc/concept/how-works-intlayer#app-build-optimization) |
|
|
64
|
+
| <img src="https://github.com/aymericzip/intlayer/blob/main/docs/assets/static_rendering.png?raw=true" alt="Feature" width="700"> | **Static Rendering**<br><br>Does not block Static Rendering. <br><br> - [Next.js integration](https://intlayer.org/doc/environment/nextjs) |
|
|
65
|
+
| <img src="https://github.com/aymericzip/intlayer/blob/main/docs/assets/AI_translation.png?raw=true" alt="Feature" width="700"> | **AI-Powered Translation**<br><br>Transform your website into 231 languages with just one click using Intlayer's advanced AI-powered translation tools with your own AI provider / API key. <br><br> - [CI/CD integration](https://intlayer.org/doc/concept/ci-cd) <br> - [Intlayer CLI](https://intlayer.org/doc/concept/cli) <br> - [Auto fill](https://intlayer.org/doc/concept/auto-fill) |
|
|
66
|
+
| <img src="https://github.com/aymericzip/intlayer/blob/main/docs/assets/mcp.png?raw=true" alt="Feature" width="700"> | **MCP Server Integration**<br><br>Provides an MCP (Model Context Protocol) server for IDE automation, enabling seamless content management and i18n workflows directly within your development environment. <br><br> - [MCP Server](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en-GB/mcp_server.md) |
|
|
67
|
+
| <img src="https://github.com/aymericzip/intlayer/blob/main/docs/assets/vscode_extension.png?raw=true" alt="Feature" width="700"> | **VSCode Extension**<br><br>Intlayer provides a VSCode extension to help you manage your content and translations, building your dictionaries, translating your content, and more. <br><br> - [VSCode Extension](https://intlayer.org/doc/vs-code-extension) |
|
|
68
|
+
| <img src="https://github.com/aymericzip/intlayer/blob/main/docs/assets/interoperability.png?raw=true" alt="Feature" width="700"> | **Interoperability**<br><br>Enables interoperability with react-i18next, next-i18next, next-intl, and react-intl. <br><br> - [Intlayer and react-intl](https://intlayer.org/blog/intlayer-with-react-intl) <br> - [Intlayer and next-intl](https://intlayer.org/blog/intlayer-with-next-intl) <br> - [Intlayer and next-i18next](https://intlayer.org/blog/intlayer-with-next-i18next) |
|
|
69
|
+
|
|
70
|
+
---
|
|
71
|
+
|
|
72
|
+
## 📦 Installation
|
|
73
|
+
|
|
74
|
+
Start your journey with Intlayer today and experience a smoother, more powerful approach to internationalisation.
|
|
75
|
+
|
|
76
|
+
<a href="https://intlayer.org/doc/concept/content">
|
|
77
|
+
<img src="https://img.shields.io/badge/Get_Started-FFFFFF?style=for-the-badge&logo=rocket&logoColor=black" />
|
|
78
|
+
</a>
|
|
79
|
+
|
|
80
|
+
```bash
|
|
81
|
+
npm install intlayer react-intlayer
|
|
82
|
+
```
|
|
83
|
+
|
|
84
|
+
⚡ Quick Start (Next.js)
|
|
85
|
+
|
|
86
|
+
```ts
|
|
87
|
+
// intlayer.config.ts
|
|
88
|
+
import { Locales, type IntlayerConfig } from "intlayer";
|
|
89
|
+
|
|
90
|
+
const config: IntlayerConfig = {
|
|
91
|
+
internationalization: {
|
|
92
|
+
locales: [Locales.ENGLISH, Locales.FRENCH, Locales.SPANISH],
|
|
93
|
+
defaultLocale: Locales.ENGLISH,
|
|
94
|
+
},
|
|
95
|
+
};
|
|
96
|
+
|
|
97
|
+
export default config;
|
|
98
|
+
```
|
|
99
|
+
|
|
100
|
+
```tsx
|
|
101
|
+
// app/page.tsx
|
|
102
|
+
import { useIntlayer } from "react-intlayer";
|
|
103
|
+
|
|
104
|
+
const Component = () => {
|
|
105
|
+
const { title } = useIntlayer("home");
|
|
106
|
+
|
|
107
|
+
return <h1>{title}</h1>;
|
|
108
|
+
};
|
|
109
|
+
```
|
|
110
|
+
|
|
111
|
+
<a href="https://intlayer.org/doc/environment/nextjs"> Get the full guide → </a>
|
|
112
|
+
|
|
113
|
+
## 🎥 Live tutorial on YouTube
|
|
114
|
+
|
|
115
|
+
[](https://youtu.be/e_PPG7PTqGU?si=GyU_KpVhr61razRw)
|
|
116
|
+
|
|
117
|
+
<a href="https://intlayer.org/doc/concept/content">
|
|
118
|
+
<img src="https://img.shields.io/badge/Get_Started-FFFFFF?style=for-the-badge&logo=rocket&logoColor=black" />
|
|
119
|
+
</a>
|
|
120
|
+
|
|
121
|
+
## Table of Contents
|
|
122
|
+
|
|
123
|
+
Explore our comprehensive documentation to get started with Intlayer and learn how to integrate it into your projects.
|
|
124
|
+
|
|
125
|
+
<details open>
|
|
126
|
+
<summary style="font-size:16px; font-weight:bold;">📘 Get Started</summary>
|
|
127
|
+
<ul>
|
|
128
|
+
<li><a href="https://intlayer.org/doc/why">Why Intlayer?</a></li>
|
|
129
|
+
<li><a href="https://intlayer.org/doc">Introduction</a></li>
|
|
130
|
+
</ul>
|
|
131
|
+
</details>
|
|
132
|
+
|
|
133
|
+
<details>
|
|
134
|
+
<summary style="font-size:16px; font-weight:bold;">⚙️ Concept</summary>
|
|
135
|
+
<ul>
|
|
136
|
+
<li><a href="https://intlayer.org/doc/concept/how-works-intlayer">How Intlayer Works</a></li>
|
|
137
|
+
<li><a href="https://intlayer.org/doc/concept/configuration">Configuration</a></li>
|
|
138
|
+
<li><a href="https://intlayer.org/doc/concept/ai">AI provider</a></li>
|
|
139
|
+
<li><a href="https://intlayer.org/doc/concept/cli">Intlayer CLI</a></li>
|
|
140
|
+
<li><a href="https://intlayer.org/doc/concept/editor">Intlayer Editor</a></li>
|
|
141
|
+
<li><a href="https://intlayer.org/doc/concept/cms">Intlayer CMS</a></li>
|
|
142
|
+
<li><a href="https://intlayer.org/doc/concept/content">Dictionary</a>
|
|
143
|
+
<ul>
|
|
144
|
+
<li><a href="https://intlayer.org/doc/concept/content/per-locale-file">Per-Locale Content Declaration File</a></li>
|
|
145
|
+
<li><a href="https://intlayer.org/doc/concept/content/translation">Translation</a></li>
|
|
146
|
+
<li><a href="https://intlayer.org/doc/concept/content/enumeration">Enumeration</a></li>
|
|
147
|
+
<li><a href="https://intlayer.org/doc/concept/content/condition">Condition</a></li>
|
|
148
|
+
<li><a href="https://intlayer.org/doc/concept/content/nesting">Nesting</a></li>
|
|
149
|
+
<li><a href="https://intlayer.org/doc/concept/content/markdown">Markdown</a></li>
|
|
150
|
+
<li><a href="https://intlayer.org/doc/concept/content/function-fetching">Function Fetching</a></li>
|
|
151
|
+
<li><a href="https://intlayer.org/doc/concept/content/insertion">Insertion</a></li>
|
|
152
|
+
<li><a href="https://intlayer.org/doc/concept/content/file">File</a></li>
|
|
153
|
+
</ul>
|
|
154
|
+
</li>
|
|
155
|
+
</ul>
|
|
156
|
+
</details>
|
|
157
|
+
|
|
158
|
+
<details open>
|
|
159
|
+
<summary style="font-size:16px; font-weight:bold;">🌐 Environment</summary>
|
|
160
|
+
<ul>
|
|
161
|
+
<li><a href="https://intlayer.org/doc/environment/nextjs">Intlayer with Next.js 15</a>
|
|
162
|
+
<ul>
|
|
163
|
+
<li><a href="https://intlayer.org/doc/environment/nextjs/14">Next.js 14 (App Router)</a></li>
|
|
164
|
+
<li><a href="https://intlayer.org/doc/environment/nextjs/next-with-Page-Router">Next.js Page Router</a></li>
|
|
165
|
+
</ul>
|
|
166
|
+
</li>
|
|
167
|
+
<li><a href="https://intlayer.org/doc/environment/create-react-app">React CRA</a></li>
|
|
168
|
+
<li><a href="https://intlayer.org/doc/environment/vite-and-react">Vite + React</a>
|
|
169
|
+
<ul>
|
|
170
|
+
<li><a href="https://intlayer.org/doc/environment/vite-and-react/react-router-v7">React-router-v7</a></li>
|
|
171
|
+
<li><a href="https://intlayer.org/doc/environment/vite-and-react/tanstack-start">Tanstack start</a></li>
|
|
172
|
+
</ul>
|
|
173
|
+
</li>
|
|
174
|
+
<li><a href="https://intlayer.org/doc/environment/react-native-and-expo">React Native</a></li>
|
|
175
|
+
<li><a href="https://intlayer.org/doc/environment/lynx-and-react">Lynx + React</a></li>
|
|
176
|
+
<li><a href="https://intlayer.org/doc/environment/vite-and-svelte">Vite + Svelte</a></li>
|
|
177
|
+
<li><a href="https://intlayer.org/doc/environment/vite-and-preact">Vite + Preact</a></li>
|
|
178
|
+
<li><a href="https://intlayer.org/doc/environment/vite-and-vue">Vite + Vue</a></li>
|
|
179
|
+
<li><a href="https://intlayer.org/doc/environment/vite-and-nuxt">Vite + Nuxt</a></li>
|
|
180
|
+
<li><a href="https://intlayer.org/doc/environment/vite-and-solid">Vite + Solid</a></li>
|
|
181
|
+
<li><a href="https://intlayer.org/doc/environment/angular">Angular</a></li>
|
|
182
|
+
<li><a href="https://intlayer.org/doc/environment/express">Express</a></li>
|
|
183
|
+
<li><a href="https://intlayer.org/doc/environment/nest">NestJS</a></li>
|
|
184
|
+
</ul>
|
|
185
|
+
</details>
|
|
186
|
+
|
|
187
|
+
<details>
|
|
188
|
+
<summary style="font-size:16px; font-weight:bold;">📰 Blog</summary>
|
|
189
|
+
<ul>
|
|
190
|
+
<li><a href="https://github.com/aymericzip/intlayer/blob/main/docs/blog/en/what_is_internationalization.md">What is i18n</a></li>
|
|
191
|
+
<li><a href="https://intlayer.org/blog/SEO-and-i18n">i18n and SEO</a></li>
|
|
192
|
+
<li><a href="https://intlayer.org/blog/intlayer-with-next-i18next">Intlayer and i18next</a></li>
|
|
193
|
+
<li><a href="https://intlayer.org/blog/intlayer-with-react-i18next">Intlayer and react-intl</a></li>
|
|
194
|
+
<li><a href="https://intlayer.org/blog/intlayer-with-next-intl">Intlayer and next-intl</a></li>
|
|
195
|
+
</ul>
|
|
196
|
+
</details>
|
|
197
|
+
|
|
198
|
+
## 🌐 Readme in other languages
|
|
199
|
+
|
|
200
|
+
[English](https://github.com/aymericzip/intlayer/blob/main/readme.md) •
|
|
201
|
+
[简体中文](https://github.com/aymericzip/intlayer/blob/main/docs/docs/zh/readme.md) •
|
|
202
|
+
[Русский](https://github.com/aymericzip/intlayer/blob/main/docs/docs/ru/readme.md) •
|
|
203
|
+
[日本語](https://github.com/aymericzip/intlayer/blob/main/docs/docs/ja/readme.md) •
|
|
204
|
+
[Français](https://github.com/aymericzip/intlayer/blob/main/docs/docs/fr/readme.md) •
|
|
205
|
+
[한국어](https://github.com/aymericzip/intlayer/blob/main/docs/docs/ko/readme.md) •
|
|
206
|
+
[Español](https://github.com/aymericzip/intlayer/blob/main/docs/docs/es/readme.md) •
|
|
207
|
+
[Deutsch](https://github.com/aymericzip/intlayer/blob/main/docs/docs/de/readme.md) •
|
|
208
|
+
[العربية](https://github.com/aymericzip/intlayer/blob/main/docs/docs/ar/readme.md) •
|
|
209
|
+
[Italiano](https://github.com/aymericzip/intlayer/blob/main/docs/docs/it/readme.md) •
|
|
210
|
+
[English (UK)](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en-GB/readme.md) •
|
|
211
|
+
[Português](https://github.com/aymericzip/intlayer/blob/main/docs/docs/pt/readme.md) •
|
|
212
|
+
[हिन्दी](https://github.com/aymericzip/intlayer/blob/main/docs/docs/hi/readme.md)
|
|
213
|
+
[Türkçe](https://github.com/aymericzip/intlayer/blob/main/docs/docs/tr/readme.md)
|
|
214
|
+
|
|
215
|
+
## 🤝 Community
|
|
216
|
+
|
|
217
|
+
Intlayer is built with and for the community and we’d love your input!
|
|
218
|
+
|
|
219
|
+
- Have a suggestion? [Open an issue](https://github.com/aymericzip/intlayer/issues)
|
|
220
|
+
- Found a bug or improvement? [Submit a PR](https://github.com/aymericzip/intlayer/pulls)
|
|
221
|
+
- Need help or want to connect? [Join our Discord](https://discord.gg/7uxamYVeCk)
|
|
222
|
+
|
|
223
|
+
You can also follow us on:
|
|
224
|
+
|
|
225
|
+
<div>
|
|
226
|
+
<br/>
|
|
227
|
+
<p align="center">
|
|
228
|
+
<a href="https://discord.gg/528mBV4N" target="blank"><img align="center"
|
|
229
|
+
src="https://img.shields.io/badge/discord-5865F2.svg?style=for-the-badge&logo=discord&logoColor=white"
|
|
230
|
+
alt="Intlayer Discord" height="30"/></a>
|
|
231
|
+
<a href="https://www.linkedin.com/company/intlayerorg" target="blank"><img align="center"
|
|
232
|
+
src="https://img.shields.io/badge/linkedin-%231DA1F2.svg?style=for-the-badge&logo=linkedin&logoColor=white"
|
|
233
|
+
alt="Intlayer LinkedIn" height="30"/></a>
|
|
234
|
+
<a href="https://www.facebook.com/intlayer" target="blank"><img align="center"
|
|
235
|
+
src="https://img.shields.io/badge/facebook-4267B2.svg?style=for-the-badge&logo=facebook&logoColor=white"
|
|
236
|
+
alt="Intlayer Facebook" height="30"/></a>
|
|
237
|
+
<a href="https://www.instagram.com/intlayer/" target="blank"><img align="center"
|
|
238
|
+
src="https://img.shields.io/badge/instagram-%23E4405F.svg?style=for-the-badge&logo=Instagram&logoColor=white"
|
|
239
|
+
alt="Intlayer Instagram" height="30"/></a>
|
|
240
|
+
<a href="https://x.com/Intlayer183096" target="blank"><img align="center"
|
|
241
|
+
src="https://img.shields.io/badge/x-1DA1F2.svg?style=for-the-badge&logo=x&logoColor=white"
|
|
242
|
+
alt="Intlayer X" height="30"/></a>
|
|
243
|
+
<a href="https://www.youtube.com/@intlayer" target="blank"><img align="center"
|
|
244
|
+
src="https://img.shields.io/badge/youtube-FF0000.svg?style=for-the-badge&logo=youtube&logoColor=white"
|
|
245
|
+
alt="Intlayer YouTube" height="30"/></a>
|
|
246
|
+
<a href="https://www.tiktok.com/@intlayer" target="blank"><img align="center"
|
|
247
|
+
src="https://img.shields.io/badge/tiktok-000000.svg?style=for-the-badge&logo=tiktok&logoColor=white"
|
|
248
|
+
alt="Intlayer TikTok" height="30"/></a>
|
|
249
|
+
<br>
|
|
250
|
+
</p>
|
|
251
|
+
</div>
|
|
252
|
+
|
|
253
|
+
### Contribution
|
|
254
|
+
|
|
255
|
+
For more detailed guidelines on contributing to this project, please refer to the [`CONTRIBUTING.md`](https://github.com/aymericzip/intlayer/blob/main/CONTRIBUTING.md) file. It contains essential information on our development process, commit message conventions, and release procedures. Your contributions are valuable to us, and we appreciate your efforts in making this project better!
|
|
256
|
+
|
|
257
|
+
### Thank You for the Support
|
|
258
|
+
|
|
259
|
+
If you like Intlayer, give us a ⭐ on GitHub. It helps others discover the project!
|
|
260
|
+
|
|
261
|
+
[](https://star-history.com/#aymericzip/intlayer&Date)
|