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

Matice Laravel Package

genl/matice

Matice is a Laravel package for creating simple, flexible menus. Build nested menu structures, add links and custom attributes, and render them in Blade views through a clean, configurable API. Ideal for application navigation, admin panels, and sidebar menus.

View on GitHub
Deep Wiki
Context7

Use your Laravel translations in JavaScript.

Frequently asked questions about Matice
How do I install genl/matice in a Laravel application?
Install it with composer require genl/matice, then publish the configuration and assets and run migrations if your setup uses database-backed translations. The package integrates through Laravel's service provider and Blade ecosystem, so manual bootstrapping is usually unnecessary. Check the repository README for the exact publish tags and migration steps for your version.
Which Laravel and PHP versions does genl/matice support?
The CI configuration tests against multiple older Laravel releases, which suggests support for LTS and current versions, and the preg_split null-limit fix implies PHP 8.1 or newer. Confirm the exact compatibility matrix in the repository's composer.json or CI files before upgrading. Pin your Laravel and PHP versions in composer.json to avoid unexpected breakage.
How does the @translations Blade directive work in Matice?
The @translations directive exposes Laravel translations for use in Blade views and JavaScript, and version 1.3.0 adds only/except overrides for filtered output. Existing unfiltered calls remain valid because the new feature is additive. It is intended to avoid hand-maintained JSON files when sending selected strings to the front end.
How do I use only and except filters with the @translations directive?
Pass only or except overrides to the directive to limit which translation keys or groups are emitted. The syntax is additive, so existing @translations calls keep working after upgrading to 1.3.0. This helps reduce payload size on pages that need only a subset of strings, and the exact argument syntax should be checked in the package documentation for your version.
Does Matice store translations in a database or use Laravel's resources/lang files?
Matice is built around Laravel translations and may use database storage depending on configuration; the technical assessment notes that migrations are required if a table is used. Native resources/lang files can remain the source of truth during a pilot or parallel run. Confirm storage behavior in the published config file before committing to a migration strategy.
How do I migrate existing Laravel translation files into Matice?
Keep resources/lang as the source of truth initially, then use any import, export, or scanning command the package provides to copy strings into Matice. Run a parallel period where both systems are checked for parity before switching views over. The recommended sequence is staging install, config publishing, optional migrations, translation import, and parity verification.
Is genl/matice production-ready and actively maintained?
The 1.3.0 release indicates active maintenance, with CI updates and new contributors, but the package is at v1.3 rather than a major stability milestone. Support is community-driven through GitHub issues and pull requests, with no commercial support mentioned. Because the CI disables Composer security-advisory blocking for older Laravel versions, monitor security advisories independently and pin dependencies.
What is the performance impact of @translations on large translation sets?
If translations are database-backed, expect additional queries per page load when using the @translations directive; only/except filtering reduces output size but not query count. For high-traffic applications, cache rendered translations or combine Matice with Laravel's built-in translation caching. Test against your largest translation sets in staging before rollout.
Are there breaking changes in Matice 1.3.0 or planned for 2.0?
Version 1.3.0 is backward compatible: the only/except overrides are additive and the release also fixes a PHP deprecation warning around preg_split with a null limit. No breaking changes are documented for 1.3.0, and plans for a future 2.0 are not stated in the provided context. Pin the package version and review release notes before major upgrades.
What are the alternatives to genl/matice for using Laravel translations in JavaScript?
Alternatives include manually exporting Laravel translations to JSON, relying on Laravel's native translation caching, or using other packages that publish translations to the front end. Choose based on whether you need Blade directives, database-backed storage, or filtered output. Matice's differentiator in 1.3.0 is the @translations directive with only and except overrides.
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.
microsoft/fluentui-system-icons
mmccook/php-json-canonicalization-scheme
middlewares/firewall
qubiqx/montapacking
nyoncode/laravel-package-console
pnscripts/filament-broadquill-lite
pnscripts/laravel-sentfold-lite
vleap/mx-sdk-laravel-internal
twidpay/utils
htetmyathlaing/scout-elasticsearch-driver
artisan-toolbox/front-awesome
ls/client-assistant
users-au/laravel-client
cgv/localized-resource
noith/settings
kda/laravel-package
kda/filament-dynamic-navigation
bypersoft/signbox
pairus/product-data
fayne/laravel-filament-cms-core