landscape-platform/notes/project-summary_part1.md

1.8 KiB

Component-Based Laravel Infrastructure Project Summary

Project Context

  • Consolidating multiple Laravel applications into a single application
  • Supporting multiple auto groups under Murgado Automotive Group
  • Need to support various domains: loyalty, management reporting, cafe menu products, trading desk

Key Decisions Made

Component Structure

app/
├── Components/
│   ├── Api/
│   │   ├── Contracts/
│   │   ├── Services/
│   │   │   ├── Loyalty/
│   │   │   ├── Management/
│   │   │   ├── Cafe/
│   │   │   └── Trading/
│   │   └── Providers/
│   └── Auth/

Database Organization

  • Using PostgreSQL with multiple schemas
  • Tables prefixed with 'tbl_'
  • Reading through views
  • Schemas:
    • public: Laravel/vendor tables
    • auth: Authentication/authorization
    • org: Organization structure
    • [Additional schemas pending for other domains]

Authentication/Authorization

  • Users table remains in public schema
  • Role/permission system in auth schema
  • Complex store/group relationship management
  • Support for multiple group types (auto group, campus, brand)

Implementation Standards

  • Write to tables, read from views
  • Use both sequential and natural keys
  • Schema-specific migrations
  • Custom migration base structure with timing and logging

Next Steps To Discuss

  1. Core schema implementation
  2. API standardization
  3. Component interaction patterns
  4. Additional domain implementations
  5. Data validation strategies

Technical Requirements

  • Laravel 10
  • PostgreSQL 16
  • Alma Linux environment
  • PHP 8.1

Current Progress

  • Basic component structure established
  • Authentication framework set up
  • Organization structure defined
  • Initial database schemas and migrations created