# CLAUDE.md

This file provides guidance to Claude Code (claude.ai/code) when working with code in this repository.

## Project Overview

This is a Nuxt 3 frontend application for Auto Soluções Mobilidade, an automotive group website representing Volkswagen, Audi, Škoda and SEAT brands. The application is server-side rendered and includes multilingual support.

## Development Commands

```bash
# Install dependencies
npm install

# Start development server (http://localhost:3000)
npm run dev

# Build for production
npm run build

# Preview production build locally
npm run preview

# Generate static files
npm run generate
```

## Architecture

### Core Technologies
- **Nuxt 3** with SSR enabled
- **Vue 3** with Composition API
- **TypeScript** (extends .nuxt/tsconfig.json)
- **Pinia** for state management
- **SCSS** for styling (main file: assets/scss/style.scss)

### Key Modules & Plugins
- `@nuxtjs/i18n` - Internationalization (Portuguese default, prefix strategy)
- `@nuxt/image` - Optimized images with responsive breakpoints
- `@pinia/nuxt` - State management
- `nuxt-swiper` - Carousel components
- `@nuxtjs/google-fonts` - Roboto font family
- `@zadigetvoltaire/nuxt-gtm` - Google Tag Manager integration

### Project Structure
- `/pages/` - File-based routing (cars-list, cars-detail, about, blog, etc.)
- `/components/` - Reusable Vue components (AppHeader, AppFooter, Modal*, etc.)
- `/store/` - Pinia stores (system.js for global state)
- `/plugins/` - Nuxt plugins (pinia.js, scrollToTop.js, api integrations)
- `/services/` - API service layer
- `/lang/` - i18n translations (pt.js, en.js)
- `/assets/scss/` - SCSS stylesheets
- `/public/` - Static assets

### Configuration Notes
- API base URL configurable via `NUXT_BACKEND_API` environment variable
- Google Maps integration requires `GOOGLE_MAPS_API_KEY`
- Google Tag Manager ID via `GOOGLE_TAG_MANAGER_ID`
- Image responsive breakpoints: xs(320), sm(640), md(768), lg(1024), xl(1280), xxl(1536)
- Favicon and meta tags configured for Auto Soluções branding

### Build Configuration
- Uses esbuild for faster compilation
- Vite with polling enabled for file watching
- Nitro prerendering with link crawling
- Payload extraction disabled for performance

## Environment Setup
- Node.js version: 18.12.1 (as specified in volta config)
- Previously used Yarn 4.0.2 but migrating to npm
- Development server runs on port 3000 with hot reload