{
  "name": "web",
  "description": "React/Vite web application",
  "type": "app",
  "variables": [
    {
      "name": "appName",
      "type": "string",
      "required": true,
      "description": "Name of the app (e.g., admin, customer)"
    },
    {
      "name": "framework",
      "type": "select",
      "options": ["vite-react", "nextjs"],
      "default": "vite-react",
      "description": "Web framework to use"
    },
    {
      "name": "includeRouter",
      "type": "boolean",
      "default": true,
      "description": "Include React Router"
    },
    {
      "name": "includeTailwind",
      "type": "boolean",
      "default": false,
      "description": "Include Tailwind CSS"
    }
  ],
  "files": [
    {
      "source": "package.json.hbs",
      "destination": "package.json"
    },
    {
      "source": "tsconfig.json.hbs",
      "destination": "tsconfig.json"
    },
    {
      "source": "vite.config.ts.hbs",
      "destination": "vite.config.ts",
      "condition": "framework === 'vite-react'"
    },
    {
      "source": "index.html.hbs",
      "destination": "index.html",
      "condition": "framework === 'vite-react'"
    },
    {
      "source": "src/main.tsx.hbs",
      "destination": "src/main.tsx",
      "condition": "framework === 'vite-react'"
    },
    {
      "source": "src/App.tsx.hbs",
      "destination": "src/App.tsx"
    },
    {
      "source": "src/App.css.hbs",
      "destination": "src/App.css",
      "condition": "!includeTailwind"
    },
    {
      "source": "src/index.css.hbs",
      "destination": "src/index.css"
    },
    {
      "source": "src/vite-env.d.ts.hbs",
      "destination": "src/vite-env.d.ts",
      "condition": "framework === 'vite-react'"
    },
    {
      "source": "tailwind.config.js.hbs",
      "destination": "tailwind.config.js",
      "condition": "includeTailwind"
    },
    {
      "source": "postcss.config.js.hbs",
      "destination": "postcss.config.js",
      "condition": "includeTailwind"
    },
    {
      "source": "gitignore.hbs",
      "destination": ".gitignore"
    },
    {
      "source": "README.md.hbs",
      "destination": "README.md"
    },
    {
      "source": "public/vite.svg",
      "destination": "public/vite.svg"
    },
    {
      "source": ".eslintrc.json.hbs",
      "destination": ".eslintrc.json"
    },
    {
      "source": "src/routes.tsx.hbs",
      "destination": "src/routes.tsx",
      "condition": "includeRouter"
    }
  ]
}