Torch is a project to provide instructions and examples for using Illuminate components as standalone components in non-Laravel applications. The current master
branch shows how to use Illuminate's 9.0
components.
Note: If you are working with an older project, you might have more success using the 5.5 components or the 5.1 components or the 4.2 components.
At the moment, the project is divided into many directories beneath components
which will each contain an index file, usually written with Slim. Navigate to that directory in your terminal and run the following to serve a web site from that directory:
$ composer install
$ php -S localhost:8000
Now you can visit http://localhost:8000/ in your browser to view the output of each.
I used a service port 8888 to pubish the site from the root. You can refer nginx config file in folder nginx. In this repo, I also use 1 root URL to access all the components, then I register subpath for Laravel application. After web service publishment, we access the component examples by:
localhost:8888/components/{packageName}
- Artisan Console
- Cache
- Config
- Container
- Database
- Encryption
- Events
- Filesystem
- HTTP Client
- Log
- Middleware
- Pagination
- Queue
- Routing
- Schedule
- Session
- Support
- Translation
- View
- Validation
- Mail - Never finished porting from 4.2-5.1 and then it never got the simpler upgrades from 5.1 until today
A few important notes:
- The imagined end user is a developer of any Symfony-HttpFoundation-using project copying the route closure directly into a project, so try to avoid using any Slim conventions and use as little preparation code outside the closure as possible.
- While some components would be easier to implement with a Laravel-style Application instance and a fuller bootstrap, I'd prefer we implement as many as possible without loading Laravel's Service Providers.
- Some components will require a bootstrap, and I hope we can come up with a Best-Practice bootstrap and Laravel-style Application instance for loading Service Providers, etc.
The most helpful use for contributions right now would be updating the readme's in each section to make sure we have instructions on how to test this specific component to see that it's working (based on how the specific index.php
for this component is set up).
Many of these components will still work. But a few of them require HttpFoundation. ¯\(°_o)/¯