Weave Code
Weaver
Helps Laravel developers discover, compare, and choose open-source packages. See popularity, security, maintainers, and scores at a glance to make better decisions.
Feedback
Share your thoughts, report bugs, or suggest improvements.
Subject
Message

View Laravel Package

aura/view

Aura.View implements the TemplateView and TwoStepView patterns using PHP itself as the template language, with file-based and closure templates, helpers, and sections. No runtime dependencies; requires PHP 8.4+.

View on GitHub
Deep Wiki
Context7

Provides TemplateView and TwoStepView using PHP as the templating language, with support for partials, sections, and helpers.

Frequently asked questions about View
How do I install Aura.View in a Laravel project?
Install it with composer require aura/view; it requires PHP 8.4 or later and has no runtime dependencies. Aura.View does not ship a Laravel service provider or auto-discovery, so you register the ViewFactory, registries, and search paths in your own service provider. Keep the binding scoped to the rendering paths that need PHP-native templates rather than replacing Laravel's view factory.
Does Aura.View integrate with Laravel's view() helper and Blade?
No, Aura\View\ViewFactory does not implement Illuminate\Contracts\View\Factory, so it has no make(), exists(), or share() semantics. Aliasing Laravel's view contract to Aura's factory is not viable because it would break every Blade and view() call site. The recommended approach is a sidecar integration: call Aura.View from a dedicated service or controller path while Laravel keeps Blade for normal views.
Can I use Aura.View instead of Blade for some templates?
Yes, it is a reasonable optional alternative when you need dynamic PHP template logic without Blade syntax, such as legacy ports, CLI output, non-HTML media types, or shared template libraries across frameworks. It supports file-based and closure templates, partials, sections, and helpers. Be aware that it is not a drop-in Blade replacement for Laravel's view contract, and escaping is left to your application.
What PHP version and dependencies does aura/view require?
Aura.View requires PHP 8.4 or later and has zero runtime dependencies, including no escaper by design. That keeps the package lightweight and media-type agnostic, but it also means your application owns escaping decisions. Installation is via Composer as aura/view.
How does Aura.View handle output escaping and security?
Aura.View deliberately does not include an escaper because it is designed for multiple media types, not just HTML. You must escape output explicitly in templates, for example with htmlspecialchars for HTML or Aura.Html's escaping helpers. The documentation's escaping guide covers the expected approach, and treating escaping as a consumer responsibility is central to the package's design.
What is parent() in Aura.View and how does it help template overrides?
parent() is a template inheritance feature added in Aura.View 7 that lets a shadowed template resume the search past its own directory. Because search paths are first-hit-wins, an overriding template can now call parent() to render the original instead of copying the whole file. This is especially useful for package or theme overrides in multi-brand and vendor-package customisation, where you only need to maintain the diff.
How do helpers and sections work in Aura.View?
Helpers are reached through __call() on the View, and the View deliberately does not type-hint HelperRegistryInterface, so Aura.Html's HelperLocator can be wired without an adapter. Sections let templates define named blocks that layouts and TwoStepView can render. Partials allow reusable template fragments, and file-based and closure templates can be mixed as needed.
What are TemplateRegistryInterface and SearchPathInterface used for?
They are integration seams introduced in Aura.View 7 so a framework can substitute its own module-aware registry without subclassing the concrete TemplateRegistry. TemplateRegistryInterface covers set, has, and get, while SearchPathInterface owns path and namespace management such as getPaths, setPaths, prependPath, appendPath, and setTemplateFileExtension. Because path management is not on TemplateRegistryInterface, a precompiled name-to-file registry remains a valid substitution.
What breaking changes should I check before upgrading to Aura.View 7.0.0?
TemplateRegistry::get() now returns Closure, and non-closure callables passed to set() are coerced, so code that compares registry entries by identity, type-checks for Closure, or serialises the registry with var_export or config caching can break because closures are not serialisable. The config/Common.php file, extra.aura block, Aura\View\_Config namespace, and aura/di dev dependency were also removed, so the consuming framework now owns all wiring. The license changed from BSD-2-Clause to MIT, which is more permissive.
Is aura/view 7.0.0 stable and under which license?
Yes, 7.0.0 is a stable GA release; it carries forward the beta1 notes verbatim with no code changes, so the earlier evaluation holds and the beta-movement risk is retired. The package is MIT licensed, changed from BSD-2-Clause, with consistent headers across src and composer.json. That makes redistribution and embedding easier to clear with legal or procurement review.
Weaver

How can I help you explore Laravel packages today?

Conversation history is not saved when not logged in.
Prompt
Add packages to context
No packages found.
adachsoft/changelog-linter
adachsoft/collection
payerurl/telegrambot-crypto-payment-instant-payout
dskripchenko/laravel-hybrid-search
riorizkyrainey/lara-ced
mehedimi/static-vel
zharp/zharp
nonsapiens/bigquery-model-sync
lgu-bayambang-ict-office/lgu-laravel-development-standards
andydefer/laravel-support
se7enxweb/flysystem
lampwick/laravel
jeslage/statamic-emojis
micahdshackelford/rmap-laravel
draftsmaninc/draftsman
square-bit/laravel-volition
himito/laravel-mailman
htinlynn/genius-helper
maco-studios/hephaestus
adachsoft/php-code-style