Skip to content

Architectural Overview

LaravelUi5 promotes a clean separation of concerns between the backend (Laravel) and the frontend (OpenUI5), enabling a scalable and maintainable architecture suitable for professional business applications.

Here’s how the pieces fit together:

Backend — Laravel

  • API-first: Laravel serves as a JSON API provider using standard routes and controllers.
  • Business Logic: Handles authentication, authorization, data processing, and domain rules.
  • Database & Models: Uses Eloquent ORM or any Laravel-supported DB layer for persistence.
  • App Shell: Laravel serves a UI5 app entrypoint (e.g., index.html) and static assets.

Frontend — OpenUI5

  • Fully client-side: Built as modular UI5 apps with MVC or MVVM patterns.
  • Data Binding: Connects to Laravel APIs using ODataModel or custom logic.
  • Routing & Views: Managed via UI5’s flexible routing system.
  • Component-based: Uses reusable UI5 controls and XML views to structure the UI.

Development Workflow

  • In Development: UI5 apps are served via LaravelUi5, which takes care of linking development resources and resolving them cleanly within the Laravel context — no manual wiring required.
  • In Production: UI5 apps are built (bundled, minified) and shipped as static assets within Composer packages, making them easy to version, distribute, and deploy alongside your Laravel app.
  • Optional Integration: UI5 apps are typically organized per module, but can also be grouped by feature for more workflow-driven interfaces.

This architecture allows both frontend and backend teams to work independently — or as one — while keeping codebases clean, testable, and future-proof.

Released under the Apache 2.0 License.