Creation:2025-12-30Last update:2025-12-30

    Initialize Intlayer

    bash
    npx intlayer init

    The init command automatically sets up Intlayer in your project by configuring necessary files and settings. It's the recommended way to get started with Intlayer.

    Aliases:

    • npx intlayer init

    Arguments:

    • --project-root [projectRoot] - Optional. Specify the project root directory. If not provided, the command will search for the project root starting from the current working directory.
    • --no-gitignore - Optional. Skip the automatic update of the .gitignore file. If this flag is set, .intlayer will not be added to .gitignore.

    What it does:

    The init command performs the following setup tasks:

    1. Validates project structure - Ensures you're in a valid project directory with a package.json file
    2. Updates .gitignore - Adds .intlayer to your .gitignore file to exclude generated files from version control (can be skipped with --no-gitignore)
    3. Configures TypeScript - Updates all tsconfig.json files to include Intlayer type definitions (.intlayer/**/*.ts)
    4. Creates configuration file - Generates an intlayer.config.ts (for TypeScript projects) or intlayer.config.mjs (for JavaScript projects) with default settings
    5. Updates Vite config - If a Vite configuration file is detected, adds the vite-intlayer plugin import
    6. Updates Next.js config - If a Next.js configuration file is detected, adds the next-intlayer plugin import

    Examples:

    Basic initialization:

    bash
    npx intlayer init

    This will initialize Intlayer in the current directory, automatically detecting the project root.

    Initialize with custom project root:

    bash
    npx intlayer init --project-root ./my-project

    This will initialize Intlayer in the specified directory.

    Initialize without updating .gitignore:

    bash
    npx intlayer init --no-gitignore

    This will set up all configuration files but will not modify your .gitignore.

    Example output:

    bash
    npx intlayer initChecking Intlayer configuration...✓ Added .intlayer to .gitignore✓ Updated tsconfig.json to include intlayer types✓ Created intlayer.config.ts✓ Injected import into vite.config.ts✓ Intlayer init setup complete.

    Notes:

    • The command is idempotent - you can run it multiple times safely. It will skip steps that are already configured.
    • If a configuration file already exists, it won't be overwritten.
    • TypeScript config files without an include array (e.g., solution-style configs with references) are skipped.
    • The command will exit with an error if no package.json is found in the project root.