# Code Style and Conventions

## PHP Style
- Spaces around brackets in array access: `$_SESSION[ 'key' ]`, `$array[ 'field' ]`
- Spaces inside parentheses: `function( $param )`, `if ( condition )`
- Opening braces on new line for functions/classes
- Opening braces on same line for control structures (mixed - some on new line)
- No type hints on most functions (legacy codebase)
- No docblocks on most methods
- camelCase for methods, PascalCase for classes
- File naming: `class.ClassName.php` for autoloaded classes, regular names for others

## Naming Conventions
- Controllers: `{Entity}Controller.php` (e.g., `ShopProductController.php`)
- Repositories: `{Entity}Repository.php` (e.g., `ProductRepository.php`)
- Views: `{Entity}.php` in `Views/` directory
- Templates: kebab-case directories (e.g., `shop-product/`, `shop-basket/`)
- Admin templates: organized by feature in `admin/templates/`

## Database
- RedBeanPHP ORM with `\R::` facade
- Medoo for complex queries via `$mdb`
- Tables use snake_case naming

## Frontend
- SCSS compiled to CSS in admin (`style.scss` -> `style.css`)
- Vanilla JavaScript (no build system, no npm/node)
- jQuery likely used in admin panel
