Как правильно построить архитектуру клиентской и административной части в рамках Laravel Porto?

Создаю проект (музыкальная библиотека) на Laravel 11 с использованием паттерна Porto. В нем предполагаются следующие сущности (для начала): Artist, Album, Track, Tag, Playlist и т.д.

Структура контейнера выглядит примерно так:

app
└── Containers
    └── Music
        └── Artist
            ├── Actions
            ├── Tasks
            ├── UI
            │   ├── API
            │   │   ├── Controllers
            │   │   ├── Requests
            │   │   ├── Resources
            │   │   └── Routes
            ├── Models
            └── Data
                └── Migrations
                └── Factories
                └── Migrations

В будущем она будет пополняться разделами. Остальные сущности хранятся по такой же архитектуре. Плюс, есть Ship с конфигами и сервис провайдерами. Но вопрос именно по архитектуре контейнеров: Как лучше организовать административную и клиентскую часть?

Наиболее удачным вариантом пока вижу - создать 2 основных контейнера Client и Admin, а в них субконтейнеры, которые будут повторять Artist, Album и т.д.

Примерно так:

app
└── Containers
    ├── Admin
    │    ├── Music
    │    │    ├── Artists
    │    │    ├── Albums
    │    │    ├── Tracks
    │    │    ├── Tags
    │    │    └── Playlists
    └── Client
         └── Music
              ├── Artists
              ├── Albums
              ├── Tracks
              ├── Tags
              └── Playlists

С какой вероятностью это будет наилучший подход и может есть варианты лучше?


Ответы (1 шт):

Автор решения: unreal_serg

В общем, так и сделал - два основных контейнера Admin и Client. В RouteServiceProvider прописал поиск маршрутов во вложенных папках.

→ Ссылка