- What is tomatophp/tomato-themes used for?
- It is a Laravel package for managing and switching frontend themes in a TomatoPHP application, especially one built on Filament. It helps organize theme views, assets, and configuration so themes can be added, activated, and customized without hard-coding switching into your app. It is a presentation-layer concern and does not handle domain logic or persistence.
- How do I install tomatophp/tomato-themes in a Laravel app?
- Install the package via Composer and let Laravel package auto-discovery register its service provider. Then publish the package config and asset stubs and register the plugin on your Filament panel. Expect a publish-and-configure setup measured in hours, not a long migration.
- Which Laravel and PHP versions does tomatophp/tomato-themes support?
- The best-fit stack is Laravel 10 or 11 with PHP 8.1+ and Filament 3, according to the package evaluation. The supplied metadata does not include a complete compatibility matrix, so confirm the Composer constraints against your application before installing. Use composer why-not to check resolution against your existing Laravel and Filament versions.
- Does tomatophp/tomato-themes work with Filament 3?
- It is designed for the TomatoPHP and Filament ecosystem, and the recommended stack is Laravel 10/11 plus Filament 3 plus PHP 8.1+. Theme systems can accumulate coupling to specific Filament major versions, so pin the package and verify the Filament constraint resolves cleanly before merging. If a Filament major upgrade is pending, do that first and re-validate the theme package afterward.
- Is tomatophp/tomato-themes compatible with Vite?
- The supplied metadata does not confirm Vite compatibility, and the package may assume direct public/ asset writes or older build tooling. Check the v1.2.2 diff and the generated asset paths against your Vite build before adopting it. If it writes directly to public/, you may need to adapt the pipeline or keep theme assets outside the Vite manifest.
- How do I create a custom theme with tomatophp/tomato-themes?
- The package is intended to let you add themes by organizing views, assets, and configuration, but the evaluation does not document a formal extension point. Verify whether published stubs and config are enough for your custom theme or whether forking is required. Spike on a throwaway branch and diff the generated config and asset output first.
- Can tomatophp/tomato-themes handle per-tenant themes in a multi-tenant SaaS?
- Based on the evaluation, it manages deployment-level themes rather than runtime tenant-scoped theming. Per-tenant theming is a product feature that would need its own layer. Avoid treating this package as a multi-tenant theme resolver.
- Is tomatophp/tomato-themes safe to use in production?
- It is a single-maintainer community package rated medium-low on code risk and medium on information risk. The v1.2.2 release notes only link a changelog, with no migration notes or labeled breaking changes, so backward compatibility cannot be confirmed from metadata alone. Pin it with a caret constraint, commit composer.lock, and review patch updates when they touch config, views, or assets.
- How do I upgrade tomatophp/tomato-themes v1.2.2 without breaking my theme?
- Treat the upgrade as additive and test it on a staging panel first. Diff published config keys, view namespaces, and asset manifest paths before and after, then verify that an existing custom theme renders identically. Do not combine the package upgrade with a Filament major upgrade in the same change.
- What are alternatives to tomatophp/tomato-themes?
- If your application is not standardized on Filament and TomatoPHP, it may not need this abstraction at all. Alternatives include building a simple theme resolver in your own Laravel app or using a design-token system. The package earns its place mainly when theme switching is a genuine product requirement in a TomatoPHP admin panel.