# Casino Gaming Platform - Claude Assistant Guide

## Build Commands

### Frontend
- Build: `bun run build` or `bunx @angular/cli build`
- Start dev server: `bun run start` or `bunx @angular/cli serve --proxy-config src/proxy.conf.json`
- Format: `bun run format` or `prettier --write "src/**/*.{ts,html,css,scss}"`

### Backend
- Build: `./gradlew build` or `./gradlew clean build`
- Run: `./gradlew bootRun`
- Generate JAR: `./gradlew bootJar`

## Lint/Test Commands

### Frontend
- Lint: `bun run lint` or `ng lint`
- Test all: `bun run test` or `bunx @angular/cli test`
- Test single file: `bunx @angular/cli test --include=path/to/test.spec.ts`

### Backend
- Test all: `./gradlew test`
- Test single class: `./gradlew test --tests "FullyQualifiedClassName"`
- Checkstyle: `./gradlew checkstyleMain checkstyleTest`

## Code Style Guidelines

### Frontend (Angular)
- Use PascalCase for class names with suffixes (Component, Service)
- Use kebab-case for component selectors with "app-" prefix
- File naming: `name.component.ts`, `name.service.ts`
- Import order: Angular → third-party → local
- Use RxJS catchError for HTTP error handling

### Backend (Java)
- Use PascalCase for classes with descriptive suffixes (Controller, Service, Entity)
- Use camelCase for methods and variables
- Domain-driven package organization
- Prefix DTOs with domain and suffix with "Dto"
- Use Spring's global exception handling with custom exceptions