- What is tomatophp/tomato-flutter used for?
- Tomato Flutter is a Laravel package that adds Flutter mobile app support to TomatoPHP. It lets you generate, configure, and manage Flutter applications from the familiar TomatoPHP admin panel, including API endpoints, authentication, and resource scaffolding. Instead of wiring a mobile backend by hand, you drive it from the same dashboard you already use for your Laravel project.
- How do I install tomatophp/tomato-flutter in a Laravel project?
- Install it with Composer using composer require tomatophp/tomato-flutter, then run the package's install command to publish its config, assets, and migrations. Because it is a TomatoPHP extension, it should be added to a project that already has the TomatoPHP admin panel installed and configured. Check the repository README for the exact artisan command names, since they can differ between releases.
- Which Laravel and PHP versions does Tomato Flutter support?
- Version support is defined by the composer.json constraints of each tagged release on Packagist. Before installing, open the require block for the version you plan to use and confirm it matches your Laravel and PHP versions. If you are on an older Laravel release, pin an older tag rather than forcing the constraint.
- Do I need the Flutter SDK or Dart installed on my Laravel server?
- The package generates and manages the Flutter side from your Laravel admin panel, so the typical workflow is to build and run the mobile app on your own machine with the Flutter SDK. You should not assume the Flutter or Dart toolchain is bundled with the package or required on a production web server. Confirm the exact build workflow in the README for your version.
- How does Tomato Flutter integrate with the TomatoPHP admin panel?
- It registers itself as part of the TomatoPHP ecosystem, so its screens and generators appear inside the same admin panel you already use. That means one place to manage your Laravel backend and the Flutter app configuration it feeds. You generally enable it through your panel provider after publishing the package assets and config.
- Can Tomato Flutter generate API endpoints and authentication for the Flutter app?
- Yes, the package is built around API, auth, and resource scaffolding for Flutter clients. It helps you expose authenticated endpoints from Laravel that the generated Flutter app can consume. Review how tokens and guards are configured in your app before shipping, and tighten any defaults the package publishes.
- How do I configure the generated Flutter app, such as API URL or app name?
- Configuration is handled through the package's published config file and the admin panel screens it adds. Set your base API URL, app identity, and related options there so the generated Flutter project points at the right backend environment. Re-generate or re-sync the app after changing values that are compiled into the Flutter build.
- Can I scaffold Flutter CRUD screens from my existing Laravel models?
- Resource scaffolding is one of the stated capabilities, so you can generate Flutter-side resources that mirror your Laravel models and endpoints. The practical approach is to keep your models and API resources clean first, then generate against them. Verify the generated output in a test app before assuming it matches your custom fields or relationships.
- Is Tomato Flutter safe to use in production?
- Treat generated code as a starting point and review it before production: authentication guards, rate limiting, validation, and authorization policies all deserve a pass. Test against a staging Laravel app and a real device build rather than relying on the generator alone. The package handles scaffolding, but production hardening remains your responsibility.
- Is Tomato Flutter actively maintained, and what are the alternatives?
- It is maintained under the TomatoPHP organization, so check the repository's recent commits, tagged releases, and open issues for current activity. Alternatives include generating the backend with Laravel Sanctum plus hand-written Flutter clients, or using dedicated mobile backend tooling. If you are already invested in TomatoPHP, staying inside its ecosystem usually gives the least friction.