# ⚙️ Backend Technical Review (05_dev_backend) ## Architectural Overview - **Framework**: NestJS v10+ with TypeScript - **Database / ORM**: PostgreSQL + Prisma ORM v5+ - **Auth**: JWT Authentication + Passport.js with Role Guards (`User_PetOwner`, `User_Wholesale`, `ADMIN`) ## Critical Review Findings & Required Enhancements 1. **Database & Seeding**: - `prisma/seed.ts` must accurately populate 30+ official Canina products from `canina.md` and `canina.pdf` with both retail (`priceValue`) and B2B wholesale (`wholesalePrice`) fields, dosage logic, ingredients, and symptoms. - Dynamic tables: `HeroBanner`, `VetTestimonial`, `SmartAdvisorRule`, `ScientificTerm`, `UiText`, `Blog`, `Category`, `Product`. 2. **REST Controllers & Security**: - `ValidationPipe`: Enforce global NestJS DTO validation pipe in `main.ts` with strict whitelisting. - `RolesGuard`: Enforce role checking for B2B endpoints (`/api/v1/wholesale/*`) and Admin endpoints (`/api/v1/admin/*`). - B2B Document Verification: Admin endpoints for reviewing and approving wholesale business registrations. 3. **Data Integrity & Sync**: - Provide REST APIs for all dynamic CMS entities so the frontend application renders zero hardcoded text/banners/testimonials. - Provide complete admin endpoints (`/api/v1/admin/*`) for CRUD operations on banners, testimonials, advisor rules, products, categories, orders, users, coupons, and terms.