{ "rules": { "preferCompositionAPI": true, "strictTypes": true, "noHardcodedValues": true, "useDependencyInjection": true }, "paths": { "megapay_module": "module/oc_telegram_shop/upload/oc_telegram_shop", "frontendAdmin": "frontend/admin", "telegramShopSpa": "frontend/spa", "migrations": "module/oc_telegram_shop/upload/oc_telegram_shop/database/migrations", "megapayHandlers": "module/oc_telegram_shop/upload/oc_telegram_shop/src/Handlers", "adminHandlers": "module/oc_telegram_shop/upload/oc_telegram_shop/bastion/Handlers", "models": "module/oc_telegram_shop/upload/oc_telegram_shop/src/Models", "framework": "module/oc_telegram_shop/upload/oc_telegram_shop/framework" }, "naming": { "classes": "PascalCase", "methods": "camelCase", "variables": "camelCase", "constants": "UPPER_SNAKE_CASE", "files": "PascalCase for classes, kebab-case for others", "tables": "snake_case with megapay_ prefix" }, "php": { "version": "7.4+", "preferVersion": "7.4+", "psr12": true }, "javascript": { "version": "ES2020+", "framework": "Vue 3 Composition API", "stateManagement": "Pinia", "uiLibrary": "PrimeVue (admin), Tailwind (spa)" }, "database": { "queryBuilder": true, "migrations": true, "tablePrefix": "megapay_", "noForeignKeys": true } }