Laravel EnsoLaravel Enso
Guide
Back End
Front End
GitHub
Guide
Back End
Front End
GitHub
  • Guide

    • Introduction
    • Getting Started
    • Platform Concepts
    • Development Model
    • Core Building Blocks
    • Under the Hood
    • Thanks
    • License

Under the Hood

Laravel Enso is built as a stateful Laravel application platform with a Vue frontend shell on top.

This page summarizes the main internal mechanisms that shape that runtime.

Authentication

Authentication builds on Laravel's standard authentication model.

The frontend shell consumes the authenticated user state provided by the backend and adapts the visible application surface accordingly.

Authorization layers

Authorization in Enso happens on multiple levels:

  • application-wide user state, such as active vs inactive users
  • route-level access control through permissions
  • menu visibility based on the allowed application surface
  • content-specific authorization through gates and policies where needed

This layered approach is one of the reasons Enso route naming and permission naming matter so much.

Middleware flow

The Enso runtime uses middleware to enforce application-wide concerns such as:

  • active user verification
  • route access checks
  • action logging
  • impersonation flow
  • localisation selection

The exact middleware set can evolve, but the idea remains stable: shared platform concerns are enforced consistently at the application boundary.

Stateful runtime

Enso is intentionally built as a stateful Laravel application rather than a purely stateless API.

This supports:

  • session-aware application flows
  • richer authorization checks
  • action logging
  • preference-aware behavior
  • tighter integration between backend and frontend shell state

State bootstrap

Frontend bootstrap is driven by backend-provided state.

That state includes pieces such as:

  • route maps
  • user data
  • permissions
  • preferences
  • localisation context
  • other package-owned state slices needed by the frontend shell

This is part of the platform contract between backend and frontend.

Preferences persistence

Enso includes persistent user preferences for cross-cutting application behavior.

Typical examples include:

  • language
  • theme
  • shell state
  • other runtime UI choices

These preferences are part of the platform and are not meant to be reimplemented independently in each module.

Localisation loading

Translations are a platform concern, not just a frontend concern.

Enso applications load localisation data so both backend and frontend can operate with the same language context and user preference model.

Telemetry and action logging

The platform includes shared support for tracking application activity.

This allows Enso applications to keep an operational trace of user actions and important runtime events through shared modules rather than isolated ad-hoc implementations.

Exceptions and API responses

Enso expects application interactions to flow through JSON-oriented backend/frontend communication.

That means exception handling is designed around application-friendly responses, shared error handling, and frontend shell integration rather than page-by-page server-rendered fallbacks.

Package orchestration

A final important point is that Enso behaves like a coordinated package ecosystem, not just a single repository.

The runtime depends on package orchestration across:

  • backend contracts
  • frontend package surfaces
  • shared state
  • package configuration
  • upgrade routines

That orchestration is what turns many independent packages into one coherent platform.

Edit this page on GitHub
Last Updated: 4/21/26, 1:21 PM
Prev
Core Building Blocks
Next
Thanks