---
createdAt: 2024-08-13
updatedAt: 2026-05-12
title: কনফিগারেশন (Configuration)
description: আপনার অ্যাপ্লিকেশনের জন্য Intlayer কীভাবে কনফিগার করবেন তা শিখুন। আপনার প্রয়োজন অনুযায়ী Intlayer কাস্টমাইজ করতে উপলব্ধ বিভিন্ন সেটিংস এবং বিকল্পগুলি বুঝুন।
keywords:
  - কনফিগারেশন
  - সেটিংস
  - কাস্টমাইজেশন
  - Intlayer
  - বিকল্প
slugs:
  - doc
  - concept
  - configuration
history:
  - version: 8.9.4
    date: 2026-05-12
    changes: "LM Studio প্রদানকারীর জন্য সমর্থন যোগ করুন"
  - version: 8.7.0
    date: 2026-04-08
    changes: "বিল্ড কনফিগারেশনে `prune` এবং `minify` বিকল্প যোগ করা হয়েছে"
  - version: 8.7.0
    date: 2026-04-03
    changes: "`currentDomain` বিকল্প যোগ করা হয়েছে"
  - version: 8.4.0
    date: 2026-03-20
    changes: "'compiler.output' এবং 'dictionary.fill' এর জন্য প্রতিটি লোকালের জন্য অবজেক্ট নোটেশন যোগ করা হয়েছে"
  - version: 8.3.0
    date: 2026-03-11
    changes: "'baseDir' কে 'content' কনফিগারেশন থেকে 'system' কনফিগারেশনে স্থানান্তরিত করা হয়েছে"
  - version: 8.2.0
    date: 2026-03-09
    changes: "কম্পাইলার বিকল্পগুলি আপডেট করা হয়েছে, 'output' এবং 'noMetadata' এর জন্য সমর্থন যোগ করা হয়েছে"
  - version: 8.1.7
    date: 2026-02-25
    changes: "কম্পাইলার বিকল্পগুলি আপডেট করা হয়েছে"
  - version: 8.1.5
    date: 2026-02-23
    changes: "'build-only' কম্পাইলার বিকল্প এবং ডিকশনারি প্রিফিক্স যোগ করা হয়েছে"
  - version: 8.0.6
    date: 2026-02-12
    changes: "ওপেন রাউটার, আলিবাবা, আমাজন, গুগল ভার্টেক্স বেডরক, ফায়ারওয়ার্কস, গ্রোক, হাগিং ফেস এবং টুগেদার ডট এআই প্রোভাইডারদের জন্য সমর্থন যোগ করা হয়েছে"
  - version: 8.0.5
    date: 2026-02-06
    changes: "AI কনফিগারেশনে `dataSerialization` যোগ করা হয়েছে"
  - version: 8.0.0
    date: 2026-01-24
    changes: "অন্তর্নিহিত মেকানিজমের আরও ভালো বর্ণনার জন্য `live` ইম্পোর্ট মোড এর নাম পরিবর্তন করে `fetch` করা হয়েছে।"
  - version: 8.0.0
    date: 2026-01-22
    changes: "বিল্ড কনফিগারেশন `importMode` কে `dictionary` কনফিগারেশনে স্থানান্তরিত করা হয়েছে।"
  - version: 8.0.0
    date: 2026-01-22
    changes: "রাউটিং কনফিগারেশনে `rewrite` বিকল্প যোগ করা হয়েছে"
  - version: 8.0.0
    date: 2026-01-18
    changes: "সিস্টেম কনফিগারেশনকে কন্টেন্ট কনফিগারেশন থেকে আলাদা করা হয়েছে। অভ্যন্তরীণ পাথগুলিকে `system` প্রপার্টিতে স্থানান্তরিত করা হয়েছে। কন্টেন্ট ফাইলগুলিকে কোড ট্রান্সফরমেশন থেকে আলাদা করতে `codeDir` যোগ করা হয়েছে।"
  - version: 8.0.0
    date: 2026-01-18
    changes: "ডিকশনারি বিকল্প `location` এবং `schema` যোগ করা হয়েছে"
  - version: 7.5.1
    date: 2026-01-10
    changes: "JSON5 এবং JSONC ফাইল ফরম্যাটের জন্য সমর্থন যোগ করা হয়েছে"
  - version: 7.5.0
    date: 2025-12-17
    changes: "`buildMode` বিকল্প যোগ করা হয়েছে"
  - version: 7.0.0
    date: 2025-10-25
    changes: "`dictionary` কনফিগারেশন যোগ করা হয়েছে"
  - version: 7.0.0
    date: 2025-10-21
    changes: "`middleware` কে `routing` কনফিগারেশন দ্বারা প্রতিস্থাপিত করা হয়েছে"
  - version: 7.0.0
    date: 2025-10-12
    changes: "`formatCommand` বিকল্প যোগ করা হয়েছে"
  - version: 6.2.0
    date: 2025-10-12
    changes: "`excludedPath` বিকল্প আপডেট করা হয়েছে"
  - version: 6.0.2
    date: 2025-09-23
    changes: "`outputFormat` বিকল্প যোগ করা হয়েছে"
  - version: 6.0.0
    date: 2025-09-21
    changes: "`dictionaryOutput` এবং `i18nextResourcesDir` ফিল্ডগুলি সরানো হয়েছে"
  - version: 6.0.0
    date: 2025-09-16
    changes: "`live` ইম্পোর্ট মোড যোগ করা হয়েছে"
  - version: 6.0.0
    date: 2025-09-04
    changes: "`hotReload` ফিল্ডটি `liveSync` দ্বারা প্রতিস্থাপিত হয়েছে এবং `liveSyncPort`, `liveSyncURL` ফিল্ডগুলি যোগ করা হয়েছে"
  - version: 5.6.1
    date: 2025-07-25
    changes: "`activateDynamicImport` কে `importMode` বিকল্প দ্বারা প্রতিস্থাপিত করা হয়েছে"
  - version: 5.6.0
    date: 2025-07-13
    changes: "ডিফল্ট `contentDir` `['src']` থেকে পরিবর্তন করে `['.']` করা হয়েছে"
  - version: 5.5.11
    date: 2025-06-29
    changes: "`docs` কমান্ডগুলি যোগ করা হয়েছে"
---

# Intlayer কনফিগারেশন ডকুমেন্টেশন

## ওভারভিউ

Intlayer কনফিগারেশন ফাইলগুলি আপনাকে প্লাগইনের বিভিন্ন দিক কাস্টমাইজ করতে দেয়, যেমন আন্তর্জাতিকীকরণ (i18n), মিডলওয়্যার এবং কন্টেন্ট ম্যানেজমেন্ট। এই ডকুমেন্টটি কনফিগারেশনের প্রতিটি প্রপার্টির বিস্তারিত বর্ণনা প্রদান করে।

---

## সূচিপত্র

<TOC/>

---

## কনফিগারেশন ফাইল সমর্থন

Intlayer JSON, JS, MJS এবং TS কনফিগারেশন ফাইল ফরম্যাট গ্রহণ করে:

- `intlayer.config.ts`
- `intlayer.config.js`
- `intlayer.config.json`
- `intlayer.config.json5`
- `intlayer.config.jsonc`
- `intlayer.config.cjs`
- `intlayer.config.mjs`
- `.intlayerrc`

---

## কনফিগারেশন ফাইলের উদাহরণ

````typescript fileName="intlayer.config.ts" codeFormat="typescript"
import { Locales, type IntlayerConfig } from "intlayer";
import { nextjsRewrite } from "intlayer/routing";
import { z } from "zod";

/**
 * সকল উপলব্ধ বিকল্প সহ Intlayer কনফিগারেশন ফাইলের উদাহরণ।
 */
const config: IntlayerConfig = {
  /**
   * আন্তর্জাতিকীকরণ সেটিংস কনফিগারেশন।
   */
  internationalization: {
    /**
     * অ্যাপ্লিকেশনে সমর্থিত লোকালের তালিকা।
     * ডিফল্ট: [Locales.ENGLISH]
     */
    locales: [Locales.ENGLISH, Locales.FRENCH, Locales.SPANISH],

    /**
     * প্রয়োজনীয় লোকালের তালিকা যা প্রতিটি ডিকশনারিতে সংজ্ঞায়িত করা আবশ্যক।
     * যদি খালি থাকে, তবে `strict` মোডে সকল লোকাল প্রয়োজনীয়।
     * ডিফল্ট: []
     */
    requiredLocales: [Locales.ENGLISH],

    /**
     * আন্তর্জাতিকীকৃত কন্টেন্টের জন্য কঠোরতার স্তর।
     * - "strict": কোনো ঘোষিত লোকাল অনুপস্থিত থাকলে বা ঘোষিত না থাকলে ত্রুটি প্রদর্শন করে।
     * - "inclusive": কোনো ঘোষিত লোকাল অনুপস্থিত থাকলে সতর্কতা প্রদান করে।
     * - "loose": যেকোনো বিদ্যমান লোকাল গ্রহণ করে।
     * ডিফল্ট: "inclusive"
     */
    strictMode: "inclusive",

    /**
     * অনুরোধকৃত লোকাল না পাওয়া গেলে ফলব্যাক হিসেবে ব্যবহৃত ডিফল্ট লোকাল।
     * ডিফল্ট: Locales.ENGLISH
     */
    defaultLocale: Locales.ENGLISH,
  },

  /**
   * ডিকশনারি অপারেশন এবং অনুপস্থিত কন্টেন্টের আচরণ নিয়ন্ত্রণকারী সেটিংস।
   */
  dictionary: {
    /**
     * ডিকশনারি কীভাবে ইম্পোর্ট করা হয় তা নিয়ন্ত্রণ করে।
     * - "static": বিল্ডের সময় স্ট্যাটিক ইম্পোর্ট।
     * - "dynamic": Suspense ব্যবহার করে ডাইনামিক ইম্পোর্ট।
     * - "fetch": লাইভ সিঙ্ক API এর মাধ্যমে ডাইনামিক ফেচিং।
     * ডিফল্ট: "static"
     */
    importMode: "static",

    /**
     * AI ব্যবহার করে অনুপস্থিত অনুবাদগুলি স্বয়ংক্রিয়ভাবে পূরণ করার কৌশল।
     * একটি বুলিয়ান বা পূরণকৃত কন্টেন্ট সংরক্ষণের জন্য একটি পাথ প্যাটার্ন হতে পারে।
     * ডিফল্ট: true
     */
    fill: true,

    /**
     * ডিকশনারি ফাইলের ভৌত অবস্থান।
     * - "local": স্থানীয় ফাইল সিস্টেমে সংরক্ষিত।
     * - "remote": Intlayer CMS-এ সংরক্ষিত।
     * - "hybrid": স্থানীয় এবং Intlayer CMS উভয় স্থানেই সংরক্ষিত।
     * - "plugin" (বা যেকোনো কাস্টম স্ট্রিং): কোনো প্লাগইন বা কাস্টম সোর্স দ্বারা সরবরাহকৃত।
     * ডিফল্ট: "local"
     */
    location: "local",

    /**
     * কন্টেন্ট স্বয়ংক্রিয়ভাবে ট্রান্সফর্ম করা হবে কি না (যেমন মার্কডাউন থেকে HTML)।
     * ডিফল্ট: false
     */
    contentAutoTransformation: false,
  },

  /**
   * রাউটিং এবং মিডলওয়্যার কনফিগারেশন।
   */
  routing: {
    /**
     * প্রতি-লোকাল রাউটিং কৌশল।
     * - "prefix-no-default": ডিফল্ট ব্যতীত সব লোকালের জন্য প্রিফিক্স (যেমন /dashboard, /fr/dashboard)।
     * - "prefix-all": সব লোকালের জন্য প্রিফিক্স (যেমন /en/dashboard, /fr/dashboard)।
     * - "no-prefix": URL-এ কোনো লোকাল থাকবে না।
     * - "search-params": ?locale=... ব্যবহার করুন
     * ডিফল্ট: "prefix-no-default"
     */
    mode: "prefix-no-default",

    /**
     * ব্যবহারকারীর নির্বাচিত লোকাল কোথায় সংরক্ষণ করা হবে।
     * বিকল্পসমূহ: 'cookie', 'localStorage', 'sessionStorage', 'header' অথবা এগুলোর অ্যারে।
     * ডিফল্ট: ['cookie', 'header']
     */
    storage: ["cookie", "header"],

    /**
     * অ্যাপ্লিকেশন URL-এর বেস পাথ।
     * ডিফল্ট: ""
     */
    basePath: "",

    /**
     * নির্দিষ্ট লোকালের পাথের জন্য কাস্টম URL রিরাইট নিয়ম।
     */
    rewrite: nextjsRewrite({
      "/[locale]/about": {
        en: "/[locale]/about",
        fr: "/[locale]/a-propos",
      },
    }),

    /**
     * ডোমেইন-ভিত্তিক রাউটিং এর জন্য লোকালগুলিকে ডোমেইন হোস্টনামের সাথে ম্যাপ করে।
     * এই লোকালগুলির জন্য URL গুলি পরম (যেমন https://intlayer.cn/) হবে।
     * ডোমেইনটি লোকালকে নির্দেশ করে, তাই পাথে কোনো লোকাল প্রিফিক্স যোগ করা হয় না।
     * ডিফল্ট: undefined
     */
    domains: {
      en: "intlayer.org",
      zh: "intlayer.cn",
    },
  },

  /**
   * কন্টেন্ট ফাইল অনুসন্ধান এবং প্রক্রিয়াকরণের সেটিংস।
   */
  content: {
    /**
     * ডিকশনারি স্ক্যান করার জন্য ফাইল এক্সটেনশন।
     * ডিফল্ট: ['.content.ts', '.content.js', '.content.json', ইত্যাদি]
     */
    fileExtensions: [".content.ts", ".content.js", ".content.json"],

    /**
     * ডাইরেক্টরি যেখানে .content ফাইলগুলি অবস্থিত।
     * ডিফল্ট: ["."]
     */
    contentDir: ["src"],

    /**
     * সোর্স কোড ডাইরেক্টরি।
     * বিল্ড অপ্টিমাইজেশন এবং কোড ট্রান্সফরমেশনের জন্য ব্যবহৃত হয়।
     * ডিফল্ট: ["."]
     */
    codeDir: ["src"],

    /**
     * স্ক্যানিং থেকে বাদ দেওয়া প্যাটার্ন।
     * ডিফল্ট: ['node_modules', '.intlayer', ইত্যাদি]
     */
    excludedPath: ["node_modules"],

    /**
     * ডেভেলপমেন্টের সময় পরিবর্তনগুলি ট্র্যাক করা এবং ডিকশনারি পুনরায় তৈরি করা হবে কি না।
     * ডিফল্ট: ডেভেলপমেন্ট মোডে true
     */
    watch: true,

    /**
     * নতুন তৈরি / আপডেট করা .content ফাইলগুলি ফরম্যাট করার কমান্ড।
     */
    formatCommand: 'npx prettier --write "{{file}}"',
  },

  /**
   * ভিজ্যুয়াল এডিটর কনফিগারেশন।
   */
  editor: {
    /**
     * ভিজ্যুয়াল এডিটর সক্রিয় কি না।
     * ডিফল্ট: false
     */
    enabled: true,

    /**
     * অরিজিন ভ্যালিডেশনের জন্য আপনার অ্যাপ্লিকেশনের URL।
     * ডিফল্ট: ""
     */
    applicationURL: "http://localhost:3000",

    /**
     * স্থানীয় এডিটর সার্ভারের পোর্ট।
     * ডিফল্ট: 8000
     */
    port: 8000,

    /**
     * এডিটরের জন্য পাবলিক URL।
     * ডিফল্ট: "http://localhost:8000"
     */
    editorURL: "http://localhost:8000",

    /**
     * Intlayer CMS-এর URL।
     * ডিফল্ট: "https://app.intlayer.org"
     */
    cmsURL: "https://app.intlayer.org",

    /**
     * ব্যাকএন্ড API সার্ভারের URL।
     * ডিফল্ট: "https://back.intlayer.org"
     */
    backendURL: "https://back.intlayer.org",

    /**
     * রিয়েল-টাইম কন্টেন্ট সিঙ্ক সক্রিয় করা হবে কি না।
     * ডিফল্ট: false
     */
    liveSync: true,
  },

  /**
   * AI ব্যবহার করে অনুবাদ এবং জেনারেশনের সেটিংস।
   */
  ai: {
    /**
     * ব্যবহৃত AI প্রোভাইডার।
     * বিকল্পসমূহ: 'openai', 'anthropic', 'mistral', 'deepseek', 'gemini', 'ollama', 'openrouter', 'alibaba', 'fireworks', 'groq', 'huggingface', 'bedrock', 'googlevertex', 'togetherai', 'lmstudio'
     * ডিফল্ট: 'openai'
     */
    provider: "openai",

    /**
     * নির্বাচিত প্রোভাইডারের ব্যবহৃত মডেল।
     */
    model: "gpt-4o",

    /**
     * প্রোভাইডারের API কী।
     */
    apiKey: process.env.OPENAI_API_KEY,

    /**
     * অনুবাদ তৈরির সময় AI-কে গাইড করার জন্য গ্লোবাল কনটেক্সট।
     */
    applicationContext: "এটি একটি ভ্রমণ বুকিং অ্যাপ্লিকেশন।",

    /**
     * AI API-এর জন্য বেস URL।
     */
    baseURL: "http://localhost:3000",

    /**
     * ডেটা সিরিয়ালাইজেশন
     *
     * বিকল্পসমূহ:
     * - "json": ডিফল্ট, নির্ভরযোগ্য; বেশি টোকেন ব্যবহার করে।
     * - "toon": দ্রুততর, কম টোকেন, JSON-এর তুলনায় কম স্থিতিশীল।
     *
     * ডিফল্ট: "json"
     */
    dataSerialization: "json",
  },

  /**
   * বিল্ড এবং অপ্টিমাইজেশন সেটিংস।
   */
  build: {
    /**
     * বিল্ড এক্সিকিউশন মোড।
     * - "auto": অ্যাপ্লিকেশন বিল্ডের সময় স্বয়ংক্রিয় বিল্ড।
     * - "manual": স্পষ্ট বিল্ড কমান্ডের প্রয়োজন।
     * ডিফল্ট: "auto"
     */
    mode: "auto",

    /**
     * অব্যবহৃত ডিকশনারি সরিয়ে অ্যাপ্লিকেশন বান্ডেল অপ্টিমাইজ করা হবে কি না।
     * ডিফল্ট: প্রোডাকশনে true
     */
    optimize: true,

    /**
     * বান্ডেলের আকার কমাতে ডিকশনারিগুলো মিনিফাই করা হবে কি না।
     * ডিফল্ট: true
     */
    minify: true,

    /**
     * ডিকশনারিতে অব্যবহৃত কীগুলো মুছে ফেলা হবে কি না।
     * ডিফল্ট: true
     */
    prune: true,

    /**
     * জেনারেট করা ডিকশনারি ফাইলের আউটপুট ফরম্যাট।
     * ডিফল্ট: ['cjs', 'esm']
     */
    outputFormat: ["cjs", "esm"],

    /**
     * বিল্ডের সময় TypeScript টাইপ চেক করা হবে কি না।
     * ডিফল্ট: false
     */
    checkTypes: false,
  },

  /**
   * লগার কনফিগারেশন।
   */
  log: {
    /**
     * লগ লেভেল।
     * - "default": স্ট্যান্ডার্ড লগিং।
     * - "verbose": বিস্তারিত ডিবাগ লগিং।
     * - "disabled": কোনো লগিং নেই।
     * ডিফল্ট: "default"
     */
    mode: "default",

    /**
     * লগে সকল মেসেজের জন্য প্রিফিক্স।
     * ডিফল্ট: "[intlayer]"
     */
    prefix: "[intlayer]",
  },

  /**
   * সিস্টেম কনফিগারেশন (উন্নত ব্যবহারের জন্য)
   */
  system: {
    /**
     * লোকালাইজড ডিকশনারি সংরক্ষণের ডাইরেক্টরি।
     */
    dictionariesDir: ".intlayer/dictionary",

    /**
     * মডিউল অগমেন্টেশনের (module augmentation) জন্য ডাইরেক্টরি।
     */
    moduleAugmentationDir: ".intlayer/types",

    /**
     * আনমার্জড ডিকশনারি সংরক্ষণের ডাইরেক্টরি।
     */
    unmergedDictionariesDir: ".intlayer/unmerged_dictionary",

    /**
     * ডিকশনারি টাইপ সংরক্ষণের ডাইরেক্টরি।
     */
    typesDir: ".intlayer/types",

    /**
     * যেখানে অ্যাপ্লিকেশনের প্রধান ফাইলগুলি রাখা হয়।
     */
    mainDir: ".intlayer/main",

    /**
     * যেখানে কম্পাইল করা কনফিগারেশন ফাইলগুলি রাখা হয়।
     */
    configDir: ".intlayer/config",

    /**
     * ক্যাশ ফাইলের ডাইরেক্টরি।
     */
    cacheDir: ".intlayer/cache",
  },

  /**
   * কম্পাইলার কনফিগারেশন (উন্নত ব্যবহারের জন্য)
   */
  compiler: {
    /**
     * কম্পাইলার সক্রিয় কি না।
     *
     * - false: কম্পাইলার নিষ্ক্রিয় করুন।
     * - true: কম্পাইলার সক্রিয় করুন।
     * - "build-only": দ্রুত স্টার্টআপের জন্য ডেভেলপমেন্টের সময় কম্পাইলার বাদ দিন।
     *
     * ডিফল্ট: false
     */
    enabled: true,

    /**
     * আউটপুট ফাইলের পাথ নির্ধারণ করে। `outputDir` কে প্রতিস্থাপন করে।
     *
     * - `./` দিয়ে শুরু হওয়া পাথগুলি কম্পোনেন্ট ডাইরেক্টরির সাপেক্ষে সমাধান করা হয়।
     * - `/` দিয়ে শুরু হওয়া পাথগুলি প্রজেক্ট বেস ডাইরেক্টরির (`baseDir`) সাপেক্ষে সমাধান করা হয়।
     *
     * - পাথে `{{locale}}` ভেরিয়েবলের উপস্থিতি প্রতি লোকালের জন্য আলাদা ডিকশনারি জেনারেশন সক্রিয় করে।
     *
     * উদাহরণ:
     * ```ts
     * {
     *   // কম্পোনেন্টের পাশে বহুভাষিক .content.ts ফাইল তৈরি করুন
     *   output: ({ fileName, extension }) => `./${fileName}${extension}`,
     *
     *   // output: './{{fileName}}{{extension}}', // টেমপ্লেট স্ট্রিং এর মাধ্যমে সমতুল্য
     * }
     * ```
     *
     * ```ts
     * {
     *   // প্রজেক্ট বেসে লোকাল অনুযায়ী কেন্দ্রিয় JSON তৈরি করুন
     *   output: ({ key, locale }) => `/locales/${locale}/${key}.content.json`,
     *
     *   // output: '/locales/{{locale}}/{{key}}.content.json', // টেমপ্লেট স্ট্রিং এর মাধ্যমে সমতুল্য
     * }
     * ```
     *
     * ভেরিয়েবলের তালিকা:
     *   - `fileName`: ফাইলের নাম।
     *   - `key`: কন্টেন্ট কি।
     *   - `locale`: কন্টেন্ট লোকাল।
     *   - `extension`: ফাইল এক্সটেন্সন।
     *   - `componentFileName`: কম্পোনেন্ট ফাইলের নাম।
     *   - `componentExtension`: কম্পোনেন্ট ফাইল এক্সটেন্সন।
     *   - `format`: ডিকশনারি ফরম্যাট।
     *   - `componentFormat`: কম্পোনেন্ট ডিকশনারি ফরম্যাট।
     *   - `componentDirPath`: কম্পোনেন্ট ডাইরেক্টরির পাথ।
     */
    output: ({ locale, key }) => `compiler/${locale}/${key}.json`,

    /**
     * কম্পোনেন্টগুলি ট্রান্সফর্ম করার পর সেভ করা হবে কি না।
     * এইভাবে, অ্যাপ্লিকেশন ট্রান্সফর্ম করার জন্য কম্পাইলার একবার চালানো যেতে পারে এবং তারপর সরানো যেতে পারে।
     */
    saveComponents: false,

    /**
     * জেনারেট করা ফাইলে কেবল কন্টেন্ট রাখুন। প্রতি লোকাল i18next ফরম্যাট বা ICU MessageFormat JSON আউটপুট এর জন্য দরকারী।
     */
    noMetadata: false,

    /**
     * ডিকশনারি কি প্রিফিক্স
     */
    dictionaryKeyPrefix: "", // এক্সট্রাক্ট করা ডিকশনারি কি গুলোর জন্য ঐচ্ছিক প্রিফিক্স যোগ করুন
  },

  /**
   * ডিকশনারি কন্টেন্ট ভ্যালিডেশনের জন্য কাস্টম স্কিমা।
   */
  schemas: {
    "my-schema": z.object({
      title: z.string(),
    }),
  },

  /**
   * প্লাগইনস কনফিগারেশন।
   */
  plugins: [],
};

export default config;
````

---

## কনফিগারেশন রেফারেন্স গাইড

নিচে Intlayer-এ উপলব্ধ বিভিন্ন কনফিগারেশন প্যারামিটারের বিবরণ দেওয়া হলো।

---

### আন্তর্জাতিকীকরণ কনফিগারেশন (Internationalization)

আন্তর্জাতিকীকরণ সংক্রান্ত সেটিংস সংজ্ঞায়িত করে, যার মধ্যে উপলব্ধ লোকাল এবং ডিফল্ট লোকাল অন্তর্ভুক্ত।

| ফিল্ড             | বর্ণনা                                                                                   | টাইপ       | ডিফল্ট              | উদাহরণ               | মন্তব্য                                                                                                                                                                                                                                                                                                             |
| ----------------- | ---------------------------------------------------------------------------------------- | ---------- | ------------------- | -------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `locales`         | অ্যাপ্লিকেশনে সমর্থিত লোকালের তালিকা।                                                    | `string[]` | `[Locales.ENGLISH]` | `['en', 'fr', 'es']` |                                                                                                                                                                                                                                                                                                                     |
| `requiredLocales` | অ্যাপ্লিকেশনে প্রয়োজনীয় লোকালের তালিকা।                                                | `string[]` | `[]`                | `[]`                 | • যদি খালি থাকে, তবে `strict` মোডে সকল লোকাল প্রয়োজনীয়।<br/>• নিশ্চিত করুন যে প্রয়োজনীয় লোকালগুলোও `locales` ফিল্ডে সংজ্ঞায়িত আছে।                                                                                                                                                                             |
| `strictMode`      | TypeScript ব্যবহার করে আন্তর্জাতিকীকৃত কন্টেন্টের একটি শক্তিশালী বাস্তবায়ন নিশ্চিত করে। | `string`   | `'inclusive'`       |                      | • যদি `"strict"`: প্রতিটি ঘোষিত লোকালের সংজ্ঞা `t` ফাংশনের জন্য আবশ্যক - কোনোটি অনুপস্থিত থাকলে বা ঘোষিত না থাকলে ত্রুটি প্রদর্শন করে।<br/>• যদি `"inclusive"`: অনুপস্থিত লোকালের জন্য সতর্কতা প্রদান করে কিন্তু বিদ্যমান অঘোষিত লোকাল ব্যবহারের অনুমতি দেয়।<br/>• যদি `"loose"`: যেকোনো বিদ্যমান লোকাল গ্রহণ করে। |
| `defaultLocale`   | অনুরোধকৃত লোকাল না পাওয়া গেলে ফলব্যাক হিসেবে ব্যবহৃত ডিফল্ট লোকাল।                      | `string`   | `Locales.ENGLISH`   | `'en'`               | URL, কুকি বা হেডারে লোকাল নির্দিষ্ট না থাকলে এটি লোকাল নির্ধারণে ব্যবহৃত হয়।                                                                                                                                                                                                                                       |

---

### এডিটর কনফিগারেশন (Editor)

ভিজ্যুয়াল এডিটরের সেটিংস সংজ্ঞায়িত করে, যার মধ্যে সার্ভার পোর্ট এবং সক্ষমতা স্থিতি অন্তর্ভুক্ত।

| ফিল্ড                        | বর্ণনা                                                                                                                                                                           | টাইপ                              | ডিফল্ট                              | উদাহরণ                                                                                          | মন্তব্য                                                                                                                                                                                                                                          |
| ---------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------- | ----------------------------------- | ----------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `applicationURL`             | আপনার অ্যাপ্লিকেশনের URL।                                                                                                                                                        | `string`                          | `undefined`                         | `'http://localhost:3000'` <br/> `'https://example.com'` <br/> `process.env.INTLAYER_EDITOR_URL` | • নিরাপত্তা জনিত কারণে এডিটরের অরিজিন সীমাবদ্ধ করতে ব্যবহৃত হয়।<br/>• যদি `'*'` সেট করা হয়, তবে এডিটর যেকোনো অরিজিন থেকে অ্যাক্সেসযোগ্য।                                                                                                       |
| `port`                       | ভিজ্যুয়াল এডিটর সার্ভারের পোর্ট।                                                                                                                                                | `number`                          | `8000`                              |                                                                                                 |                                                                                                                                                                                                                                                  |
| `editorURL`                  | এডিটর সার্ভারের URL।                                                                                                                                                             | `string`                          | `'http://localhost:8000'`           | `'http://localhost:3000'` <br/> `'https://example.com'` <br/> `process.env.INTLAYER_EDITOR_URL` | • অ্যাপ্লিকেশনের সাথে যোগাযোগ করতে পারে এমন অরিজিনগুলো সীমাবদ্ধ করতে ব্যবহৃত হয়।<br/>• যদি `'*'` সেট করা হয়, তবে এটি যেকোনো অরিজিন থেকে অ্যাক্সেসযোগ্য।<br/>• পোর্ট পরিবর্তন করা হলে বা এডিটর অন্য ডোমেইনে হোস্ট করা হলে এটি সেট করা প্রয়োজন। |
| `cmsURL`                     | Intlayer CMS-এর URL।                                                                                                                                                             | `string`                          | `'https://app.intlayer.org'`        | `'https://app.intlayer.org'`                                                                    |                                                                                                                                                                                                                                                  |
| `backendURL`                 | ব্যাকএন্ড সার্ভারের URL।                                                                                                                                                         | `string`                          | `https://back.intlayer.org`         | `http://localhost:4000`                                                                         |                                                                                                                                                                                                                                                  |
| `enabled`                    | অ্যাপ্লিকেশনটি ভিজ্যুয়াল এডিটরের সাথে যোগাযোগ করবে কি না।                                                                                                                       | `boolean`                         | `false`                             | `process.env.NODE_ENV !== 'production'`                                                         | • যদি `false` হয়, তবে এডিটর অ্যাপ্লিকেশনের সাথে যোগাযোগ করতে পারবে না।<br/>• নির্দিষ্ট এনভায়রনমেন্টের জন্য এটি নিষ্ক্রিয় করা নিরাপত্তা বৃদ্ধি করে।                                                                                            |
| `clientId`                   | intlayer প্যাকেজগুলোকে oAuth2 এর মাধ্যমে ব্যাকএন্ডে প্রমাণীকরণের অনুমতি দেয়। আপনার অ্যাক্সেস টোকেন পেতে [intlayer.org/project](https://app.intlayer.org/project) পরিদর্শন করুন। | `string` &#124; <br/> `undefined` | `undefined`                         |                                                                                                 | এটি গোপন রাখতে হবে; এনভায়রনমেন্ট ভেরিয়েবল ব্যবহার করুন।                                                                                                                                                                                        |
| `clientSecret`               | intlayer প্যাকেজগুলোকে oAuth2 এর মাধ্যমে ব্যাকএন্ডে প্রমাণীকরণের অনুমতি দেয়। আপনার অ্যাক্সেস টোকেন পেতে [intlayer.org/project](https://app.intlayer.org/project) পরিদর্শন করুন। | `string` &#124; <br/> `undefined` | `undefined`                         |                                                                                                 | এটি গোপন রাখতে হবে; এনভায়রনমেন্ট ভেরিয়েবল ব্যবহার করুন।                                                                                                                                                                                        |
| `dictionaryPriorityStrategy` | স্থানীয় এবং দূরবর্তী উভয় ডিকশনারি উপস্থিত থাকলে ডিকশনারি অগ্রাধিকার কৌশল।                                                                                                      | `string`                          | `'local_first'`                     | `'distant_first'`                                                                               | • `'distant_first'`: স্থানীয় ডিকশনারির চেয়ে দূরবর্তী ডিকশনারিকে অগ্রাধিকার দেয়।<br/>• `'local_first'`: দূরবর্তী ডিকশনারির চেয়ে স্থানীয় ডিকশনারিকে অগ্রাধিকার দেয়।                                                                          |
| `liveSync`                   | CMS <br/> ভিজ্যুয়াল এডিটর <br/> ব্যাকএন্ড সার্ভারে পরিবর্তন শনাক্ত হলে অ্যাপ্লিকেশন সার্ভার কন্টেন্ট তাৎক্ষণিকভাবে পুনরায় লোড করবে কি না।                                      | `boolean`                         | `true`                              | `true`                                                                                          | • ডিকশনারি যোগ/আপডেট হলে অ্যাপ্লিকেশন পেজ কন্টেন্ট রিফ্রেশ করে।<br/>• লাইভ সিঙ্ক অন্য সার্ভার থেকে কন্টেন্ট গ্রহণ করে, যা পারফরম্যান্সে সামান্য প্রভাব ফেলতে পারে।<br/>• উভয়কেই একই মেশিনে হোস্ট করার পরামর্শ দেওয়া হয়।                       |
| `liveSyncPort`               | লাইভ সিঙ্ক সার্ভারের পোর্ট।                                                                                                                                                      | `number`                          | `4000`                              | `4000`                                                                                          |                                                                                                                                                                                                                                                  |
| `liveSyncURL`                | লাইভ সিঙ্ক সার্ভারের URL।                                                                                                                                                        | `string`                          | `'http://localhost:{liveSyncPort}'` | `'https://example.com'`                                                                         | ডিফল্টভাবে localhost-এ পয়েন্ট করে; দূরবর্তী লাইভ সিঙ্ক সার্ভারে পয়েন্ট করার জন্য পরিবর্তন করা যেতে পারে।                                                                                                                                       |

---

### রাউটিং কনফিগারেশন (Routing)

URL কাঠামো, লোকাল স্টোরেজ এবং মিডলওয়্যার ম্যানেজমেন্ট সহ রাউটিং আচরণ নিয়ন্ত্রণকারী সেটিংস।

| ফিল্ড      | বর্ণনা                                                                                                                                                                                                          | টাইপ                                                                                                                                                                                                         | ডিফল্ট                 | উদাহরণ                                                                                                                                                                                            | মন্তব্য                                                                                                                                                                                                                                                                              |
| ---------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ---------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| `mode`     | লোকাল ম্যানেজমেন্টের জন্য URL রাউটিং মোড।                                                                                                                                                                       | `'prefix-no-default'` &#124; <br/> `'prefix-all'` &#124; <br/> `'no-prefix'` &#124; <br/> `'search-params'`                                                                                                  | `'prefix-no-default'`  | `'prefix-no-default'`: `/dashboard` (en) অথবা `/fr/dashboard` (fr)। `'prefix-all'`: `/en/dashboard` । `'no-prefix'`: লোকাল অন্য উপায়ে ম্যানেজ করা হয়। `'search-params'`: `/dashboard?locale=fr` | এটি কুকি ম্যানেজমেন্ট বা লোকাল স্টোরেজকে প্রভাবিত করে না।                                                                                                                                                                                                                            |
| `storage`  | ক্লায়েন্টে লোকাল স্টোরেজের কনফিগারেশন।                                                                                                                                                                         | `false` &#124; <br/> `'cookie'` &#124; <br/> `'localStorage'` &#124; <br/> `'sessionStorage'` &#124; <br/> `'header'` &#124; <br/> `CookiesAttributes` &#124; <br/> `StorageAttributes` &#124; <br/> `Array` | `['cookie', 'header']` | `'localStorage'` <br/> `[{ type: 'cookie', name: 'custom-locale', secure: true }]`                                                                                                                | নিচে স্টোরেজ প্যারামিটার টেবিল দেখুন।                                                                                                                                                                                                                                                |
| `basePath` | অ্যাপ্লিকেশন URL-এর জন্য বেস পাথ।                                                                                                                                                                               | `string`                                                                                                                                                                                                     | `''`                   | `'/my-app'`                                                                                                                                                                                       | যদি অ্যাপ্লিকেশনটি `https://example.com/my-app` ঠিকানায় চলে, তবে basePath হলো `'/my-app'` এবং URL গুলো হয় `https://example.com/my-app/en` ।                                                                                                                                        |
| `rewrite`  | কাস্টম URL রিরাইট নিয়ম যা নির্দিষ্ট পাথের জন্য ডিফল্ট রাউটিং মোডকে ওভাররাইড করে। ডাইনামিক প্যারামিটার `[param]` সমর্থন করে।                                                                                    | `Record<string, StrictModeLocaleMap<string>>`                                                                                                                                                                | `undefined`            | উদাহরণ নিচে দেখুন                                                                                                                                                                                 | • রিরাইট নিয়মের অগ্রাধিকার `mode`-এর চেয়ে বেশি।<br/>• Next.js এবং Vite-এর সাথে কাজ করে।<br/>• `getLocalizedUrl()` স্বয়ংক্রিয়ভাবে যথাযথ নিয়ম প্রয়োগ করে।<br/>• [কাস্টম URL রিরাইট](https://github.com/aymericzip/intlayer/blob/main/docs/docs/en/custom_url_rewrites.md) দেখুন। |
| `domains`  | ডোমেইন-ভিত্তিক রাউটিং এর জন্য লোকালগুলিকে ডোমেইন হোস্টনামের সাথে ম্যাপ করে। সেট করা হলে, সেই লোকালের জন্য URL গুলি এই ডোমেইনটিকে বেস (পরম URL) হিসেবে ব্যবহার করে এবং পাথে কোনো লোকাল প্রিফিক্স যোগ করা হয় না। | `Partial<Record<Locale, string>>`                                                                                                                                                                            | `undefined`            | `{ zh: 'intlayer.zh', fr: 'intlayer.org' }`                                                                                                                                                       | • হোস্টনামে অন্তর্ভুক্ত না থাকলে ডিফল্ট প্রোটোকল হলো `https://` ।<br/>• ডোমেইন নিজেই লোকালকে শনাক্ত করে, তাই `/zh/` প্রিফিক্স যোগ করা হয় না।<br/>• `getLocalizedUrl('/', 'zh')` রিটার্ন করে `https://intlayer.zh/` ।                                                                |

**`rewrite` উদাহরণ**:

```typescript
routing: {
  mode: "prefix-no-default", // ফলব্যাক কৌশল
  rewrite: nextjsRewrite({
    "/about": {
      en: "/about",
      fr: "/a-propos",
    },
    "/product/[slug]": {
      en: "/product/[slug]",
      fr: "/produit/[slug]",
    },
    "/blog/[category]/[id]": {
      en: "/blog/[category]/[id]",
      fr: "/journal/[category]/[id]",
    },
  }),
}
```

#### স্টোরেজ প্যারামিটার (Storage)

| মান                | মন্তব্য                                                                                                                                                                                                   | বর্ণনা                                                                             |
| ------------------ | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------- |
| `'cookie'`         | • GDPR বাস্তবায়নের জন্য যথাযথ ব্যবহারকারীর সম্মতি নিশ্চিত করুন।<br/>• `CookiesAttributes` (`{ type: 'cookie', name: 'custom-locale', secure: true, httpOnly: false }`) এর মাধ্যমে কনফিগারযোগ্য।          | লোকাল কুকিতে সংরক্ষণ করে - ক্লায়েন্ট এবং সার্ভার উভয় স্থান থেকেই অ্যাক্সেসযোগ্য। |
| `'localStorage'`   | • স্পষ্টভাবে মুছে না ফেলা পর্যন্ত এটি শেষ হয় না।<br/>• Intlayer Proxy এটি অ্যাক্সেস করতে পারে না।<br/>• `StorageAttributes` (`{ type: 'localStorage', name: 'custom-locale' }`) এর মাধ্যমে কনফিগারযোগ্য। | কোনো সময়সীমা ছাড়াই ব্রাউজারে লোকাল সংরক্ষণ করে - কেবল ক্লায়েন্ট-সাইড।           |
| `'sessionStorage'` | • ট্যাব/উইন্ডো বন্ধ করলে মুছে যায়।<br/>• Intlayer Proxy এটি অ্যাক্সেস করতে পারে না।<br/>• `StorageAttributes` (`{ type: 'sessionStorage', name: 'custom-locale' }`) এর মাধ্যমে কনফিগারযোগ্য।             | পেজ সেশনের মেয়াদের জন্য লোকাল সংরক্ষণ করে - কেবল ক্লায়েন্ট-সাইড।                 |
| `'header'`         | • API কলের জন্য দরকারী।<br/>• ক্লায়েন্ট-সাইড এটি অ্যাক্সেস করতে পারে না।<br/>• `StorageAttributes` (`{ type: 'header', name: 'custom-locale' }`) এর মাধ্যমে কনফিগারযোগ্য।                                | HTTP হেডারের মাধ্যমে লোকাল সংরক্ষণ বা পাস করে - কেবল সার্ভার-সাইড।                 |

#### কুকি বৈশিষ্ট্য (Cookies Attributes)

কুকিতে স্টোরেজ ব্যবহার করার সময় অতিরিক্ত বৈশিষ্ট্য সেট করা যেতে পারে:

| ফিল্ড      | বর্ণনা                                              | টাইপ                                                  |
| ---------- | --------------------------------------------------- | ----------------------------------------------------- |
| `name`     | কুকির নাম। ডিফল্ট: `'INTLAYER_LOCALE'`              | `string`                                              |
| `domain`   | কুকি ডোমেইন। ডিফল্ট: `undefined`                    | `string`                                              |
| `path`     | কুকি পাথ। ডিফল্ট: `undefined`                       | `string`                                              |
| `secure`   | HTTPS প্রয়োজন। ডিফল্ট: `undefined`                 | `boolean`                                             |
| `httpOnly` | HTTP-only ফ্ল্যাগ। ডিফল্ট: `undefined`              | `boolean`                                             |
| `sameSite` | SameSite পলিসি।                                     | `'strict'` &#124; <br/> `'lax'` &#124; <br/> `'none'` |
| `expires`  | মেয়াদের তারিখ বা দিনের সংখ্যা। ডিফল্ট: `undefined` | `Date` &#124; <br/> `number`                          |

#### স্টোরেজ বৈশিষ্ট্য (Storage Attributes)

localStorage বা sessionStorage ব্যবহার করার সময়:

| ফিল্ড  | বর্ণনা                                                | টাইপ                                             |
| ------ | ----------------------------------------------------- | ------------------------------------------------ |
| `type` | স্টোরেজ টাইপ।                                         | `'localStorage'` &#124; <br/> `'sessionStorage'` |
| `name` | স্টোরেজে কী (key)-এর নাম। ডিফল্ট: `'INTLAYER_LOCALE'` | `string`                                         |

#### কনফিগারেশন উদাহরণ

নতুন v7 রাউটিং কাঠামোর জন্য এখানে কিছু সাধারণ কনফিগারেশন উদাহরণ দেওয়া হলো:

**বেসিক কনফিগারেশন (ডিফল্ট)**:

```typescript
import { Locales, type IntlayerConfig } from "intlayer";
// intlayer.config.ts
const config: IntlayerConfig = {
  internationalization: {
    locales: ["en", "fr", "es"],
    defaultLocale: "en",
  },
  routing: {
    mode: "prefix-no-default",
    storage: "localStorage",
    basePath: "",
  },
};

export default config;
```

**GDPR সম্মতির সাথে কনফিগারেশন**:

```typescript
import { Locales, type IntlayerConfig } from "intlayer";
// intlayer.config.ts
const config: IntlayerConfig = {
  internationalization: {
    locales: ["en", "fr", "es"],
    defaultLocale: "en",
  },
  routing: {
    mode: "prefix-no-default",
    storage: [
      {
        type: "localStorage",
        name: "user-locale",
      },
      {
        type: "cookie",
        name: "user-locale",
        secure: true,
        sameSite: "strict",
        httpOnly: false,
      },
    ],
    basePath: "",
  },
};

export default config;
```

**সার্চ প্যারামিটার (Search Params) মোড**:

```typescript
import { Locales, type IntlayerConfig } from "intlayer";
// intlayer.config.ts
const config: IntlayerConfig = {
  internationalization: {
    locales: ["en", "fr", "es"],
    defaultLocale: "en",
  },
  routing: {
    mode: "search-params",
    storage: "localStorage",
    basePath: "",
  },
};

export default config;
```

**কাস্টম স্টোরেজ সহ নো-প্রিফিক্স মোড**:

```typescript
import { Locales, type IntlayerConfig } from "intlayer";
// intlayer.config.ts
const config: IntlayerConfig = {
  internationalization: {
    locales: ["en", "fr", "es"],
    defaultLocale: "en",
  },
  routing: {
    mode: "no-prefix",
    storage: {
      type: "sessionStorage",
      name: "app-locale",
    },
    basePath: "/my-app",
  },
};

export default config;
```

**ডাইনামিক পাথের সাথে কাস্টম URL রিরাইট**:

```typescript
// intlayer.config.ts
import { nextjsRewrite } from "intlayer/routing";

const config: IntlayerConfig = {
  internationalization: {
    locales: ["en", "fr"],
    defaultLocale: "en",
  },
  routing: {
    mode: "prefix-no-default", // রিরাইট না করা পাথের জন্য ফলব্যাক
    storage: "cookie",
    rewrite: nextjsRewrite({
      "/about": {
        en: "/about",
        fr: "/a-propos",
      },
      "/product/[slug]": {
        en: "/product/[slug]",
        fr: "/produit/[slug]",
      },
      "/blog/[category]/[id]": {
        en: "/blog/[category]/[id]",
        fr: "/journal/[category]/[id]",
      },
    }),
  },
};

export default config;
```

---

### কন্টেন্ট কনফিগারেশন (Content)

অ্যাপ্লিকেশনে কন্টেন্ট কীভাবে ম্যানেজ করা হয়, ডাইরেক্টরি নাম, ফাইল এক্সটেনশন এবং প্রাপ্ত কনফিগারেশন সহ সেটিংস।

| ফিল্ড            | বর্ণনা                                                                                                                   | টাইপ       | ডিফল্ট                                                                                                                                                                    | উদাহরণ                                                                                                                                                                                | মন্তব্য                                                                                                                                                             |
| ---------------- | ------------------------------------------------------------------------------------------------------------------------ | ---------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `watch`          | নির্দেশ করে যে ডিকশনারি পুনরায় তৈরির জন্য কন্টেন্ট ডিক্লারেশন ফাইলে পরিবর্তনগুলো Intlayer দ্বারা ট্র্যাক করা হবে কি না। | `boolean`  | `true`                                                                                                                                                                    |                                                                                                                                                                                       |                                                                                                                                                                     |
| `fileExtensions` | ডিকশনারি কম্পাইল করার সময় স্ক্যান করার জন্য ফাইল এক্সটেনশন।                                                             | `string[]` | `['.content.ts', '.content.js', '.content.cjs', '.content.mjs', '.content.json', '.content.json5', '.content.jsonc', '.content.tsx', '.content.jsx']`                     | `['.data.ts', '.data.js', '.data.json']`                                                                                                                                              | কাস্টমাইজেশন সংঘর্ষ এড়াতে সাহায্য করতে পারে।                                                                                                                       |
| `contentDir`     | ডাইরেক্টরির পাথ যেখানে কন্টেন্ট ডেফিনিশন ফাইলগুলো (`.content.*`) রাখা হয়।                                               | `string[]` | `['.']`                                                                                                                                                                   | `['src', '../../ui-library', require.resolve("@my-package/content"), '@my-package/content']`                                                                                          | কন্টেন্ট ফাইল ট্র্যাকিং এবং ডিকশনারি পুনরায় তৈরির জন্য ব্যবহৃত হয়।                                                                                                |
| `codeDir`        | পাথ ডাইরেক্টরি যেখানে কোড রাখা হয়, বেস ডাইরেক্টরির সাপেক্ষে।                                                            | `string[]` | `['.']`                                                                                                                                                                   | `['src', '../../ui-library']`                                                                                                                                                         | • ট্রান্সফরমেশন (অপ্রয়োজনীয় অংশ সরানো, অপ্টিমাইজেশন) এর জন্য কোড ফাইল ট্র্যাকিং এর জন্য ব্যবহৃত হয়।<br/>• `contentDir` থেকে আলাদা করলে পারফরম্যান্স বাড়তে পারে। |
| `excludedPath`   | কন্টেন্ট স্ক্যানিং থেকে বাদ দেওয়া ডাইরেক্টরি।                                                                           | `string[]` | `['**/node_modules/**', '**/dist/**', '**/build/**', '**/.intlayer/**', '**/.next/**', '**/.nuxt/**', '**/.expo/**', '**/.vercel/**', '**/.turbo/**', '**/.tanstack/**']` |                                                                                                                                                                                       | বর্তমানে ব্যবহৃত হচ্ছে না; ভবিষ্যতের জন্য পরিকল্পিত।                                                                                                                |
| `formatCommand`  | Intlayer দ্বারা স্থানীয়ভাবে কন্টেন্ট ফাইল লেখার সময় সেগুলো ফরম্যাট করার কমান্ড।                                        | `string`   | `undefined`                                                                                                                                                               | `'npx prettier --write "{{file}}" --log-level silent'` (Prettier), `'npx biome format "{{file}}" --write --log-level none'` (Biome), `'npx eslint --fix "{{file}}" --quiet'` (ESLint) | • `{{file}}` ফাইল পাথ দ্বারা প্রতিস্থাপিত হবে।<br/>• সংজ্ঞায়িত না থাকলে, Intlayer স্বয়ংক্রিয়ভাবে নির্ধারণ করে (prettier, biome, eslint পরীক্ষা করে)।             |

---

### ডিকশনারি কনফিগারেশন (Dictionary)

ডিকশনারি অপারেশন নিয়ন্ত্রণকারী প্যারামিটারসমূহ, যার মধ্যে অটো-ফিল আচরণ এবং কন্টেন্ট জেনারেশন অন্তর্ভুক্ত।

| ফিল্ড                       | বর্ণনা                                                                                                                                             | টাইপ                                                                                                            | ডিফল্ট       | উদাহরণ                                                                                      | মন্তব্য                                                                                                                                                                                                                                                                                                                                                                                                         |
| --------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------- | ------------ | ------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `fill`                      | অটো-ফিল (AI অনুবাদ) আউটপুট ফাইলগুলো কীভাবে জেনারেট হয় তা নিয়ন্ত্রণ করে।                                                                          | `boolean` &#124; <br/> `FilePathPattern` &#124; <br/> `Partial<Record<Locale, boolean &#124; FilePathPattern>>` | `true`       | `{ en: '/locales/en/{{key}}.json', fr: ({ key }) => '/locales/fr/${key}.json', es: false }` | • `true`: ডিফল্ট পাথ (সোর্সের মতো একই ফাইল)।<br/>• `false`: নিষ্ক্রিয় করুন।<br/>• টেমপ্লেট স্ট্রিং/ফাংশন প্রতি লোকাল ফাইল জেনারেট করে।<br/>• প্রতি লোকাল অবজেক্ট: প্রতিটি লোকাল তার নিজস্ব টেমপ্লেটের সাথে মিল রাখে; `false` সেই লোকালটি বাদ দেয়।<br/>• `{{locale}}` এর অন্তর্ভুক্তি প্রতি লোকাল জেনারেট সক্রিয় করে।<br/>• ডিকশনারি লেভেলে `fill` সর্বদা এই গ্লোবাল সেটিংসের চেয়ে অগ্রাধিকার পায়।          |
| `description`               | এডিটর এবং CMS-কে ডিকশনারির উদ্দেশ্য বুঝতে সাহায্য করে। AI ব্যবহার করে অনুবাদ জেনারেট করার জন্য কনটেক্সট হিসেবেও ব্যবহৃত হয়।                       | `string`                                                                                                        | `undefined`  | `'User profile section'`                                                                    |                                                                                                                                                                                                                                                                                                                                                                                                                 |
| `locale`                    | ডিকশনারিকে একটি নির্দিষ্ট লোকাল ফরম্যাটে রূপান্তর করে। প্রতিটি ঘোষিত ফিল্ড একটি অনুবাদ নোড হয়ে ওঠে। অনুপস্থিত থাকলে, ডিকশনারিকে বহুভাষিক ধরা হয়। | `LocalesValues`                                                                                                 | `undefined`  | `'en'`                                                                                      | যদি ডিকশনারিটি একাধিক অনুবাদের পরিবর্তে একটি নির্দিষ্ট লোকালের জন্য হয়, তবে এটি ব্যবহার করুন।                                                                                                                                                                                                                                                                                                                  |
| `contentAutoTransformation` | কন্টেন্ট স্ট্রিংগুলোকে স্বয়ংক্রিয়ভাবে টাইপ করা নোডে রূপান্তর করে (মার্কডাউন, HTML অথবা ইনসারশন)।                                                 | `boolean` &#124; <br/> `{ markdown?: boolean; html?: boolean; insertion?: boolean }`                            | `false`      | `true`                                                                                      | • মার্কডাউন : `### Title` → `md('### Title')` ।<br/>• HTML : `<div>Title</div>` → `html('<div>Title</div>')` ।<br/>• ইনসারশন : `Hello {{name}}` → `insert('Hello {{name}}')` ।                                                                                                                                                                                                                                  |
| `location`                  | ডিকশনারি ফাইলগুলো কোথায় সংরক্ষিত এবং সেগুলো CMS এর সাথে কীভাবে সিঙ্ক করা হয় তা নির্দেশ করে।                                                      | `'local'` &#124; <br/> `'remote'` &#124; <br/> `'hybrid'` &#124; <br/> `'plugin'` &#124; <br/> `string`         | `'local'`    | `'hybrid'`                                                                                  | • `'local'`: কেবল স্থানীয় ম্যানেজমেন্ট।<br/>• `'remote'`: কেবল দূরবর্তী ম্যানেজমেন্ট (CMS)।<br/>• `'hybrid'`: স্থানীয় এবং দূরবর্তী উভয় ম্যানেজমেন্ট।<br/>• `'plugin'` বা কাস্টম স্ট্রিং: প্লাগইন বা কাস্টম সোর্স দ্বারা ম্যানেজমেন্ট।                                                                                                                                                                        |
| `importMode`                | ডিকশনারি কীভাবে ইম্পোর্ট করা হয় তা নিয়ন্ত্রণ করে।                                                                                                | `'static'` &#124; <br/> `'dynamic'` &#124; <br/> `'fetch'`                                                      | `'static'`   | `'dynamic'`                                                                                 | • `'static'`: স্ট্যাটিক ইম্পোর্ট।<br/>• `'dynamic'`: Suspense এর মাধ্যমে ডাইনামিক ইম্পোর্ট।<br/>• `'fetch'`: লাইভ সিঙ্ক API এর মাধ্যমে ফেচ; ব্যর্থ হলে `'dynamic'` এ ফলব্যাক।<br/>• `@intlayer/babel` এবং `@intlayer/swc` প্লাগইন প্রয়োজন।<br/>• কি (keys) গুলো স্ট্যাটিক্যালি ঘোষিত হতে হবে।<br/>• `optimize` বন্ধ থাকলে এটি উপেক্ষা করা হয়।<br/>• `getIntlayer`, `getDictionary` ইত্যাদিকে প্রভাবিত করে না। |
| `priority`                  | ডিকশনারি অগ্রাধিকার। ডিকশনারিগুলোর মধ্যে সংঘর্ষ সমাধানের সময় উচ্চতর মান নিম্নতর মানের ওপর বিজয়ী হয়।                                             | `number`                                                                                                        | `undefined`  | `1`                                                                                         |                                                                                                                                                                                                                                                                                                                                                                                                                 |
| `live`                      | অপ্রচলিত - `importMode: 'fetch'` ব্যবহার করুন। ডিকশনারি কন্টেন্ট লাইভ সিঙ্ক API এর মাধ্যমে ডাইনামিকভাবে ফেচ করা হবে কি না তা নির্দেশ করা হতো।      | `boolean`                                                                                                       | `undefined`  |                                                                                             | v8.0.0-এ এর নাম পরিবর্তন করে `importMode: 'fetch'` করা হয়েছে।                                                                                                                                                                                                                                                                                                                                                  |
| `schema`                    | JSON স্কিমা ভ্যালিডেশনের জন্য Intlayer দ্বারা স্বয়ংক্রিয়ভাবে জেনারেট করা।                                                                        | `'https://intlayer.org/schema.json'`                                                                            | অটো-জেনারেশন |                                                                                             | ম্যানুয়ালি এডিট করবেন না।                                                                                                                                                                                                                                                                                                                                                                                      |
| `title`                     | এডিটর এবং CMS-এ ডিকশনারি শনাক্ত করতে সাহায্য করে।                                                                                                  | `string`                                                                                                        | `undefined`  | `'User Profile'`                                                                            |                                                                                                                                                                                                                                                                                                                                                                                                                 |
| `tags`                      | ডিকশনারি শ্রেণীবদ্ধ করে এবং এডিটর ও AI এর জন্য কনটেক্সট বা নির্দেশনা প্রদান করে।                                                                   | `string[]`                                                                                                      | `undefined`  | `['user', 'profile']`                                                                       |                                                                                                                                                                                                                                                                                                                                                                                                                 |
| `version`                   | দূরবর্তী ডিকশনারির সংস্করণ; বর্তমানে ব্যবহৃত সংস্করণটি ট্র্যাক করতে সাহায্য করে।                                                                   | `string`                                                                                                        | `undefined`  | `'1.0.0'`                                                                                   | • CMS-এ ম্যানেজ করা হয়।<br/>• স্থানীয়ভাবে এডিট করবেন না।                                                                                                                                                                                                                                                                                                                                                      |

**`fill` উদাহরণ**:

```ts
dictionary: {
  fill: {
    en: "/locales/en/{{key}}.content.json",
    fr: ({ key }) => `/locales/fr/${key}.content.json`,
    es: false,
  },
};
```

---

### লগার কনফিগারেশন (Log)

Intlayer লগ আউটপুট কাস্টমাইজ করার প্যারামিটারসমূহ।

| ফিল্ড    | বর্ণনা                          | টাইপ                                                           | ডিফল্ট          | উদাহরণ           | মন্তব্য                                                                                          |
| -------- | ------------------------------- | -------------------------------------------------------------- | --------------- | ---------------- | ------------------------------------------------------------------------------------------------ |
| `mode`   | লগার মোড নির্দেশ করে।           | `'default'` &#124; <br/> `'verbose'` &#124; <br/> `'disabled'` | `'default'`     | `'verbose'`      | • `'verbose'`: ডিবাগিং এর জন্য আরও তথ্য লগ করে।<br/>• `'disabled'`: লগার সম্পূর্ণ বন্ধ করে দেয়। |
| `prefix` | লগে সকল মেসেজের জন্য প্রিফিক্স। | `string`                                                       | `'[intlayer] '` | `'[my prefix] '` |                                                                                                  |

---

### AI কনফিগারেশন (AI)

প্রোভাইডার, মডেল এবং API কী সহ Intlayer-এর AI বৈশিষ্ট্য নিয়ন্ত্রণকারী সেটিংস।

আপনি যদি অ্যাক্সেস কী সহ [Intlayer Dashboard](https://app.intlayer.org/project)-এ রেজিস্টার করেন তবে এই কনফিগারেশনটি ঐচ্ছিক। Intlayer স্বয়ংক্রিয়ভাবে আপনার প্রয়োজন অনুযায়ী সবচেয়ে সাশ্রয়ী এবং দক্ষ AI সমাধান ম্যানেজ করবে। ডিফল্ট বিকল্পগুলো ব্যবহার করা দীর্ঘমেয়াদী সবচেয়ে ভালো সমর্থনের নিশ্চয়তা দেয় কারণ Intlayer-কে ক্রমাগত আপডেট করা হয় লেটেস্ট মডেলগুলো ব্যবহারের জন্য।

আপনি যদি আপনার নিজস্ব API কী বা কোনো নির্দিষ্ট মডেল ব্যবহার করতে পছন্দ করেন, তবে আপনি নিজের AI কনফিগারেশন সংজ্ঞায়িত করতে পারেন।
এই AI কনফিগারেশনটি আপনার Intlayer এনভায়রনমেন্টে গ্লোবালি ব্যবহৃত হবে। CLI কমান্ডগুলো `fill` এর মতো কমান্ডের জন্য ডিফল্টভাবে এই সেটিংস ব্যবহার করবে, সেইসাথে SDK, ভিজ্যুয়াল এডিটর এবং CMS-ও। আপনি কমান্ড প্যারামিটারের মাধ্যমে নির্দিষ্ট ক্ষেত্রে এই ডিফল্ট মানগুলো ওভাররাইড করতে পারেন।

Intlayer সর্বোচ্চ নমনীয়তার জন্য একাধিক AI প্রোভাইডার সমর্থন করে। বর্তমানে সমর্থিত প্রোভাইডারগুলো হলো:

- **OpenAI** (ডিফল্ট)
- **Anthropic Claude**
- **Mistral AI**
- **DeepSeek**
- **Google Gemini**
- **Google AI Studio**
- **Google Vertex**
- **Meta Llama**
- **Ollama**
- **OpenRouter**
- **Alibaba Cloud**
- **Fireworks**
- **Hugging Face**
- **Groq**
- **Amazon Bedrock**
- **Together.ai**
- **LM Studio**

| ফিল্ড                | বর্ণনা                                                                                                                                     | টাইপ                                                                                                                                                                                                                                                                                                                                                                                                                     | ডিফল্ট      | উদাহরণ                                                        | মন্তব্য                                                                                                                                                                                 |
| -------------------- | ------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ----------- | ------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `provider`           | Intlayer AI বৈশিষ্ট্যের জন্য ব্যবহৃত প্রোভাইডার।                                                                                           | `'openai'` &#124; <br/> `'anthropic'` &#124; <br/> `'mistral'` &#124; <br/> `'deepseek'` &#124; <br/> `'gemini'` &#124; <br/> `'ollama'` &#124; <br/> `'openrouter'` &#124; <br/> `'alibaba'` &#124; <br/> `'fireworks'` &#124; <br/> `'groq'` &#124; <br/> `'huggingface'` &#124; <br/> `'bedrock'` &#124; <br/> `'googleaistudio'` &#124; <br/> `'googlevertex'` &#124; <br/> `'togetherai'` &#124; <br/> `'lmstudio'` | `undefined` | `'anthropic'`                                                 | বিভিন্ন প্রোভাইডারের জন্য আলাদা আলাদা API কী প্রয়োজন এবং তাদের দামও আলাদা।                                                                                                             |
| `model`              | AI বৈশিষ্ট্যের জন্য ব্যবহৃত মডেল।                                                                                                          | `string`                                                                                                                                                                                                                                                                                                                                                                                                                 | নেই         | `'gpt-4o-2024-11-20'`                                         | নির্দিষ্ট মডেল প্রোভাইডারের ওপর নির্ভর করে।                                                                                                                                             |
| `temperature`        | AI রেসপন্সের র্যান্ডমনেস নিয়ন্ত্রণ করে।                                                                                                   | `number`                                                                                                                                                                                                                                                                                                                                                                                                                 | নেই         | `0.1`                                                         | উচ্চ টেম্পারেচার = আরও সৃজনশীল এবং কম নির্ভরযোগ্য।                                                                                                                                      |
| `apiKey`             | নির্বাচিত প্রোভাইডারের জন্য আপনার API কী।                                                                                                  | `string`                                                                                                                                                                                                                                                                                                                                                                                                                 | নেই         | `process.env.OPENAI_API_KEY`                                  | এটি গোপন রাখতে হবে; এনভায়রনমেন্ট ভেরিয়েবল ব্যবহার করুন।                                                                                                                               |
| `applicationContext` | AI-কে আরও নির্ভুল অনুবাদ তৈরিতে সাহায্য করার জন্য আপনার অ্যাপ্লিকেশন সম্পর্কে অতিরিক্ত কনটেক্সট (ডোমেইন, টার্গেট অডিয়েন্স, টোন, পরিভাষা)। | `string`                                                                                                                                                                                                                                                                                                                                                                                                                 | নেই         | `'আমার নিজস্ব অ্যাপ্লিকেশন কনটেক্সট'`                         | নিয়ম যোগ করার জন্য ব্যবহৃত হতে পারে (যেমন: `"আপনাদের URL গুলো রূপান্তর করা উচিত নয়"` )।                                                                                               |
| `baseURL`            | AI API-এর জন্য বেস URL।                                                                                                                    | `string`                                                                                                                                                                                                                                                                                                                                                                                                                 | নেই         | `'https://api.openai.com/v1'` <br/> `'http://localhost:5000'` | স্থানীয় বা কাস্টম AI API এন্ডপয়েন্টে পয়েন্ট করতে পারে।                                                                                                                               |
| `dataSerialization`  | AI বৈশিষ্ট্যের জন্য ডেটা সিরিয়ালাইজেশন ফরম্যাট।                                                                                           | `'json'` &#124; <br/> `'toon'`                                                                                                                                                                                                                                                                                                                                                                                           | `undefined` | `'toon'`                                                      | • `'json'`: ডিফল্ট, নির্ভরযোগ্য; বেশি টোকেন ব্যবহার করে।<br/>• `'toon'`: কম টোকেন, কম স্থিতিশীল।<br/>• অতিরিক্ত প্যারামিটার হিসেবে মডেলকে কনটেক্সট পাস করা হয় (রিজনিং এফোর্ট ইত্যাদি)। |

---

### বিল্ড কনফিগারেশন (Build)

Intlayer কীভাবে আপনার অ্যাপ্লিকেশনের আন্তর্জাতিকীকরণকে অপ্টিমাইজ এবং কম্পাইল করে তা নিয়ন্ত্রণকারী প্যারামিটারসমূহ।

বিল্ড অপশনগুলো `@intlayer/babel` এবং `@intlayer/swc` প্লাগইনের ওপর প্রয়োগ করা হয়।

> ডেভেলপমেন্ট মোডে, Intlayer ডেভেলপমেন্ট প্রক্রিয়া সহজ করতে ডিকশনারির স্ট্যাটিক ইম্পোর্ট ব্যবহার করে।

> অপ্টিমাইজেশন চলাকালীন, Intlayer কোড স্প্লিটিং (chunking) অপ্টিমাইজ করার জন্য ডিকশনারি কলগুলো প্রতিস্থাপন করবে যাতে ফলাফল বান্ডেলটি কেবল সেই ডিকশনারিগুলোই ইম্পোর্ট করে যা বাস্তবে ব্যবহৃত হয়।

| ফিল্ড             | বর্ণনা                                                                     | টাইপ                             | ডিফল্ট                                                                                                                                                                            | উদাহরণ                                                                        | মন্তব্য                                                                                                                                                                                                                                                                                                        |
| ----------------- | -------------------------------------------------------------------------- | -------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `mode`            | বিল্ড মোড নিয়ন্ত্রণ করে।                                                  | `'auto'` &#124; <br/> `'manual'` | `'auto'`                                                                                                                                                                          | `'manual'`                                                                    | • `'auto'`: অ্যাপ্লিকেশন বিল্ডের সময় বিল্ড স্বয়ংক্রিয়ভাবে শুরু হয়।<br/>• `'manual'`: কেবল একটি স্পষ্ট বিল্ড কমান্ডের মাধ্যমে কার্যকর হয়।<br/>• ডিকশনারি বিল্ড বন্ধ করার জন্য ব্যবহার করা যেতে পারে (যেমন Node.js এনভায়রনমেন্টে চলা এড়াতে)।                                                              |
| `optimize`        | বিল্ড অপ্টিমাইজেশন করা হবে কি না তা নিয়ন্ত্রণ করে।                        | `boolean`                        | `undefined`                                                                                                                                                                       | `process.env.NODE_ENV === 'production'`                                       | • সংজ্ঞায়িত না থাকলে, ফ্রেমওয়ার্ক বিল্ড (Vite/Next.js) এর সময় অপ্টিমাইজেশন শুরু হয়।<br/>• `true` দেব মোডেও অপ্টিমাইজেশন বাধ্য করে।<br/>• `false` এটি বন্ধ করে দেয়।<br/>• চালু থাকলে, চাকিং অপ্টিমাইজেশনের জন্য ডিকশনারি কল প্রতিস্থাপন করে।<br/>• `@intlayer/babel` এবং `@intlayer/swc` প্লাগইন প্রয়োজন। |
| `minify`          | বান্ডেলের আকার কমাতে ডিকশনারিগুলো মিনিফাই করা উচিত কি না তা নির্দিষ্ট করে। | `boolean`                        | `false`                                                                                                                                                                           |                                                                               | • বান্ডেল সংকুচিত করা উচিত কি না তা নির্দিষ্ট করে।<br/>• ডিফল্ট: প্রোডাকশনে `true`।<br/>• `optimize` নিষ্ক্রিয় থাকলে এই বিকল্পটি উপেক্ষা করা হবে।<br/>• `editor.enabled` সত্য হলে এই বিকল্পটি উপেক্ষা করা হবে।                                                                                                |
| `prune`           | ডিকশনারিতে অব্যবহৃত কীগুলো মুছে ফেলা উচিত কি না তা নির্দিষ্ট করে।          | `boolean`                        | `true`                                                                                                                                                                            |                                                                               | • বান্ডেলটি পরিষ্কার করা উচিত কি না তা নির্দিষ্ট করে।<br/>• ডিফল্ট: প্রোডাকশনে `true`।<br/>• `optimize` নিষ্ক্রিয় থাকলে এই বিকল্পটি উপেক্ষা করা হবে।                                                                                                                                                          |
| `checkTypes`      | বিল্ডের সময় TypeScript টাইপ চেক করে ত্রুটি লগ করবে কি না তা নির্দেশ করে।  | `boolean`                        | `false`                                                                                                                                                                           |                                                                               | বিল্ড প্রক্রিয়া ধীর করে দিতে পারে।                                                                                                                                                                                                                                                                            |
| `outputFormat`    | ডিকশনারির আউটপুট ফরম্যাট নিয়ন্ত্রণ করে।                                   | `('esm' &#124; 'cjs')[]`         | `['esm', 'cjs']`                                                                                                                                                                  | `['cjs']`                                                                     |                                                                                                                                                                                                                                                                                                                |
| `traversePattern` | অপ্টিমাইজেশন চলাকালীন স্ক্যান করার ফাইলগুলো নির্ধারণ করে এমন প্যাটার্ন।    | `string[]`                       | `['**/*.{tsx,ts,js,mjs,cjs,jsx,vue,svelte,svte}', '!**/node_modules/**', '!**/dist/**', '!**/.intlayer/**', '!**/*.config.*', '!**/*.test.*', '!**/*.spec.*', '!**/*.stories.*']` | `['src/**/*.{ts,tsx}', '../ui-library/**/*.{ts,tsx}', '!**/node_modules/**']` | • বিল্ড পারফরম্যান্স বাড়াতে রিলেভেন্ট ফাইলে অপ্টিমাইজেশন সীমাবদ্ধ করুন।<br/>• `optimize` বন্ধ থাকলে উপেক্ষা করা হয়।<br/>• গ্লোব প্যাটার্ন ব্যবহার করে।                                                                                                                                                       |

---

### সিস্টেম কনফিগারেশন (System)

এই সেটিংসগুলো উন্নত ব্যবহারকারী এবং Intlayer-এর অভ্যন্তরীণ কনফিগারেশনের জন্য।

| ফিল্ড                     | বর্ণনা                                    | টাইপ     | ডিফল্ট                            | উদাহরণ | মন্তব্য |
| ------------------------- | ----------------------------------------- | -------- | --------------------------------- | ------ | ------- |
| `dictionariesDir`         | কম্পাইল করা ডিকশনারির ডাইরেক্টরি।         | `string` | `'.intlayer/dictionary'`          |        |         |
| `moduleAugmentationDir`   | TypeScript মডিউল অগমেন্টেশনের ডাইরেক্টরি। | `string` | `'.intlayer/types'`               |        |         |
| `unmergedDictionariesDir` | আনমার্জড ডিকশনারি সংরক্ষণের ডাইরেক্টরি।   | `string` | `'.intlayer/unmerged_dictionary'` |        |         |
| `typesDir`                | জেনারেট করা টাইপের ডাইরেক্টরি।            | `string` | `'.intlayer/types'`               |        |         |
| `mainDir`                 | Intlayer-এর প্রধান ফাইলের ডাইরেক্টরি।     | `string` | `'.intlayer/main'`                |        |         |
| `configDir`               | কম্পাইল করা কনফিগারেশন ফাইলের ডাইরেক্টরি। | `string` | `'.intlayer/config'`              |        |         |
| `cacheDir`                | ক্যাশ ফাইলের ডাইরেক্টরি।                  | `string` | `'.intlayer/cache'`               |        |         |

---

### কম্পাইলার কনফিগারেশন (Compiler)

Intlayer কম্পাইলার নিয়ন্ত্রণকারী সেটিংস, যা সরাসরি আপনার কম্পোনেন্ট থেকে ডিকশনারি সংগ্রহ করে।

| ফিল্ড                 | বর্ণনা                                                                                                                                                                                                                                                                                                                    | টাইপ                                                                                                            | ডিফল্ট      | উদাহরণ                                                                                                                                                   | মন্তব্য                                                                                                                                                                                                        |
| --------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------------------------------------------- | ----------- | -------------------------------------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `enabled`             | ডিকশনারি সংগ্রহের জন্য কম্পাইলার সক্রিয় থাকবে কি না তা নির্দেশ করে।                                                                                                                                                                                                                                                      | `boolean` &#124; <br/> `'build-only'`                                                                           | `true`      | `'build-only'`                                                                                                                                           | `'build-only'` দ্রুত বিল্ডের জন্য ডেভেলপমেন্ট চলাকালীন কম্পাইলার এড়িয়ে যায়; কেবল বিল্ড কমান্ডের সময় চলে।                                                                                                   |
| `dictionaryKeyPrefix` | সংগৃহীত ডিকশনারি কি (key) গুলোর জন্য প্রিফিক্স।                                                                                                                                                                                                                                                                           | `string`                                                                                                        | `''`        | `'my-prefix-'`                                                                                                                                           | সংঘর্ষ এড়াতে জেনারেট করা কি-এর সাথে (ফাইলের নামের ওপর ভিত্তি করে) যোগ করা হয়।                                                                                                                                |
| `saveComponents`      | কম্পোনেন্টগুলো ট্রান্সফর্মের পর সেগুলো সেভ করা হবে কি না।                                                                                                                                                                                                                                                                 | `boolean`                                                                                                       | `false`     |                                                                                                                                                          | • `true` হলে মূল ফাইলগুলো ট্রান্সফর্ম করা সংস্করণ দিয়ে ওভাররাইট করা হয়।<br/>• কম্পাইলার একবার চালানোর পর সরানো যেতে পারে।                                                                                    |
| `output`              | আউটপুট ফাইলের পাথ নির্ধারণ করে। `outputDir` কে প্রতিস্থাপন করে। টেমপ্লেট ভেরিয়েবল সমর্থন করে: `{{fileName}}`, <br/> `{{key}}`, <br/> `{{locale}}`, <br/> `{{extension}}`, <br/> `{{componentFileName}}`, <br/> `{{componentExtension}}`, <br/> `{{format}}`, <br/> `{{componentFormat}}`, <br/> `{{componentDirPath}}` । | `boolean` &#124; <br/> `FilePathPattern` &#124; <br/> `Partial<Record<Locale, boolean &#124; FilePathPattern>>` | `undefined` | `'./{{fileName}}{{extension}}'` <br/> `'/locales/{{locale}}/{{key}}.json'` <br/> `{ en: ({ key }) => './locales/en/${key}.json', fr: '...', es: false }` | • `./` পাথগুলো কম্পোনেন্ট ডাইরেক্টরির সাপেক্ষে সমাধান করা হয়।<br/>• `/` পাথগুলো প্রজেক্ট বেসের সাপেক্ষে।<br/>• `{{locale}}` প্রতি লোকাল জেনারেট অন্তর্ভুক্ত করে।<br/>• প্রতি লোকাল অবজেক্ট নোটেশন সমর্থন করে। |
| `noMetadata`          | `true` হলে কম্পাইলার আউটপুট থেকে ডিকশনারি মেটাডেটা (কি, কন্টেন্ট র‍্যাপার) সরিয়ে ফেলে।                                                                                                                                                                                                                                   | `boolean`                                                                                                       | `false`     | `false` → `{"key":"my-key","content":{"key":"value"}}` <br/> `true` → `{"key":"value"}`                                                                  | • i18next ফরম্যাট বা ICU MessageFormat JSON আউটপুটের জন্য দরকারী।<br/>• `loadJSON` প্লাগইনের সাথে ভালো কাজ করে।                                                                                                |
| `dictionaryKeyPrefix` | ডিকশনারি কি প্রিফিক্স                                                                                                                                                                                                                                                                                                     | `string`                                                                                                        | `''`        |                                                                                                                                                          | এক্সট্রাক্ট করা ডিকশনারি কি গুলোর জন্য ঐচ্ছিক প্রিফিক্স যোগ করুন                                                                                                                                               |

---

### কাস্টম স্কিমা (Custom Schemas)

| ফিল্ড     | বর্ণনা                                                                           | টাইপ                        |
| --------- | -------------------------------------------------------------------------------- | --------------------------- |
| `schemas` | আপনার ডিকশনারির গঠন ভ্যালিডেশন করার জন্য Zod স্কিমা সংজ্ঞায়িত করার অনুমতি দেয়। | `Record<string, ZodSchema>` |

---

### প্লাগইনস (Plugins)

| ফিল্ড     | বর্ণনা                                           | টাইপ               |
| --------- | ------------------------------------------------ | ------------------ |
| `plugins` | অন্তর্ভুক্ত করার জন্য Intlayer প্লাগইনের তালিকা। | `IntlayerPlugin[]` |
