- What is yii2tech/illuminate and what does it actually do?
- It is a Yii2 extension that bootstraps a Laravel Illuminate container alongside a running Yii2 application. It exposes Illuminate services such as container resolution, database and Eloquent, and support helpers while Yii2 keeps routing, sessions, identity, and ActiveRecord. It is a coexistence shim, not a framework replacement.
- Is yii2tech/illuminate a Yii2 to Laravel migration tool?
- No. yii2tech/illuminate does not convert Yii2 code or migrate the application framework; it lets Yii2 and selected Illuminate components run in the same process. Treat it as a strangler-fig aid for incremental adoption, not an automated migration path to Laravel.
- How do I install yii2tech/illuminate in a Yii2 application?
- Install it with Composer using composer require yii2tech/illuminate, then register the package's Yii2 application component and configure the Illuminate database manager to use your existing connection. Confirm the exact component keys and options against the README for your version.
- Which Laravel, Illuminate, and PHP versions does yii2tech/illuminate support?
- Support is bounded by the illuminate/* Composer constraint and the PHP version that constraint permits; there is no universal Laravel version guarantee. Check composer.json and test against your target versions before committing. Because Yii2 is in maintenance mode and Laravel drops PHP versions aggressively, this version ceiling is a key risk.
- Can I use Laravel Eloquent models alongside Yii2 ActiveRecord?
- Yes. Once the Illuminate database manager points at the existing connection, you can write Eloquent models next to ActiveRecord models. This creates dual ORM semantics and separate transaction behavior, so define conventions and avoid mixing both in one unit of work.
- Does yii2tech/illuminate support Laravel authentication, sessions, and CSRF?
- No. Yii2 continues to own routing, sessions, identity, and CSRF, and Laravel auth guards do not interoperate with Yii2's user component. Any feature requiring Laravel-style auth needs bespoke glue.
- How do database transactions work when using Yii2 and Illuminate together?
- They are separate. Yii2 beginTransaction() and Illuminate's transaction manager do not coordinate, so mixed writes can produce read-your-writes inconsistencies or partially rolled-back state that is hard to reproduce. Keep a transaction inside one ORM or build explicit bridging.
- What are the production risks of using yii2tech/illuminate?
- Mechanically it can run, but the seams are risky: two containers, two ORMs, separate transactions, and non-interoperable auth and events. The project also has a weak vitality signal with around 115 stars, likely single-maintainer support, and a hard version ceiling. For production, budget to fork and vendor the small surface rather than rely on upstream responsiveness.
- What license is yii2tech/illuminate released under?
- GitHub reports the license as NOASSERTION, meaning it could not identify a license. yii2tech packages are typically BSD-3-Clause, but you must confirm the LICENSE file in writing with legal before use; treat it as a gating item.
- What are alternatives to yii2tech/illuminate for moving from Yii2 to Laravel?
- If you intend to reach Laravel as a final state quickly, service extraction or a parallel run is usually cheaper than carrying two DI containers and two ORMs. For greenfield work, use Laravel directly; for brownfield incremental adoption, this shim is narrow but plausible. Reusing a specific Laravel package may also be possible through a narrower integration or API boundary.