lvcn.json

Configuration for your project.

The lvcn.json file holds configuration for your project.

We use it to understand how your project is set up and how to generate components customized for your project.

Note: The lvcn.json file is only required if you're using the CLI to add components to your project. If you're copying and pasting component source manually, you don't need this file.

You can create a lvcn.json file in your project by running the following command:

npx lovdacn@latest init

(Note: You can also use the shortened lvcn alias, e.g., npx lvcn@latest init.)

See the CLI section for more information.

$schema

You can see the JSON Schema for lvcn.json at lovdacn.vercel.app/schema.json.

{
  "$schema": "https://lovdacn.vercel.app/schema.json"
}

style

The visual style for your components. This cannot be changed after initialization without re-adding components.

{
  "style": "nova"
}

Available styles:

StyleRadiusDescription
default0.5remClassic rounded system
new-york0.5remCompact, refined, shadcn-compatible
luma0.75remSoft rounded corners
lyra0.125remNearly sharp, minimal
maia1remLarge rounded corners
mira1.5remPill controls, rounded containers
nova0.125remSharp corners, bold
rhea1.5remPill controls variant
sera0Zero radius, brutalist
vega0.625remBalanced, medium radius

styleEngine

The styling runtime used by your Expo project.

{
  "styleEngine": "nativewind"
}
EngineDescription
nativewindClassic Tailwind utility runtime for React Native. Compatible with react-native-reusables.
uniwindTailwind v4-style runtime using @theme tokens in CSS.

tsx

Whether your project uses TypeScript. Defaults to true.

{
  "tsx": true
}

tailwind

Configuration to help the CLI understand how Tailwind CSS is set up in your project.

tailwind.config

Path to your tailwind.config.js file (NativeWind projects only). Uniwind projects don't use a config file — styles are defined in CSS via @theme.

{
  "tailwind": {
    "config": "tailwind.config.js"
  }
}

tailwind.css

Path to the CSS file that imports Tailwind CSS.

{
  "tailwind": {
    "css": "./src/global.css"
  }
}

tailwind.baseColor

The base color palette for generating theme tokens.

{
  "tailwind": {
    "baseColor": "zinc"
  }
}

Available base colors: zinc, slate, stone, gray, neutral, taupe, mauve, olive, mist.

aliases

Import aliases used by the CLI when writing component source into your project.

The CLI uses these paths to generate the correct import statements when adding components.

{
  "aliases": {
    "components": "@/components",
    "utils": "@/lib/utils",
    "ui": "@/components/ui"
  }
}

aliases.components

Import alias for your components directory.

{
  "aliases": {
    "components": "@/components"
  }
}

aliases.utils

Import alias for your utility functions (where cn lives).

{
  "aliases": {
    "utils": "@/lib/utils"
  }
}

aliases.ui

Import alias for your UI components directory. Components are installed here by default.

{
  "aliases": {
    "ui": "@/components/ui"
  }
}

components

An array of component names that have been added to your project. The CLI populates this automatically when you run lovdacn add or lvcn add.

{
  "components": ["button", "card", "input", "text"]
}

Full example

Here's a complete lvcn.json file:

{
  "$schema": "https://lovdacn.vercel.app/schema.json",
  "style": "nova",
  "styleEngine": "nativewind",
  "tsx": true,
  "tailwind": {
    "config": "tailwind.config.js",
    "css": "./src/global.css",
    "baseColor": "neutral"
  },
  "aliases": {
    "components": "@/components",
    "utils": "@/lib/utils",
    "ui": "@/components/ui"
  },
  "components": []
}