petehouston/xin-artisan is a Laravel package for the "xin" command for laravel artisan..
It currently has 4 GitHub stars and 15 downloads on Packagist (latest version 1.2.0).
Install it with composer require petehouston/xin-artisan.
Discover more Laravel packages by petehouston
or browse all Laravel packages to compare alternatives.
Last updated

Xin, in Vietnamese, is to "ask for something on demand". Now, you can xin something right into Laravel Artisan console.
Via Composer
$ composer require petehouston/xin-artisan
Append this line to $providers variable on config/app.php file:
'providers' => [
...
Petehouston\Xin\XinServiceProvider::class,
]
You need to add xin config file xin.php to your project:
$ php artisan vendor:publish --provider="Petehouston\Xin\XinServiceProvider" --tag=config
Some config variables for use:
browser.bin: the absolute path to the browser binary you want to use. Default, xin will automatically look up for you.Following commands are supported:
Get local IP address:
$ php artisan xin:ip
Local IP address is: 192.168.100.3
Get public/external IP address:
$ php artisan xin:ip --public
External IP address is: 13.66.202.129
List all available Laravel documentation sections:
$ php artisan xin:docs list
All of Laravel documentation sections are listed below:
+----------------------------+-------------------------+
| Section | Key |
+----------------------------+-------------------------+
| Release Notes | releases |
| Upgrade Guide | upgrade |
| Contribution Guide | contributions |
| Installation | installation |
| Configuration | configuration |
| Homestead | homestead |
| Valet | valet |
| Basic Task List | quickstart |
| Intermediate Task List | quickstart-intermediate |
| Routing | routing |
| Middleware | middleware |
| Controllers | controllers |
| Requests | requests |
| Responses | responses |
| Views | views |
| Blade Templates | blade |
| Request Lifecycle | lifecycle |
| Application Structure | structure |
| Service Providers | providers |
| Service Container | container |
| Contracts | contracts |
| Facades | facades |
| Authentication | authentication |
| Authorization | authorization |
| Artisan Console | artisan |
| Billing | billing |
| Cache | cache |
| Collections | collections |
| Elixir | elixir |
| Encryption | encryption |
| Errors & Loggin | errors |
| Events | events |
| Filesystem & Cloud Storage | filesystem |
| Hashing | hashing |
| Helpers | helpers |
| Localization | localization |
| Mail | mail |
| Package Development | packages |
| Pagination | pagination |
| Queues | queues |
| Redis | redis |
| Session | session |
| SSH Tasks | envoy |
| Task Scheduling | scheduling |
| Testing | testing |
| Validation | validation |
| Database - Getting Started | database |
| Query Builder | queries |
| Migrations | migrations |
| seeding | seeding |
| Eloquent - Getting Started | eloquent |
| Relationships | eloquent-relationships |
| Eloquent Collections | eloquent-collections |
| Mutators | eloquent-mutators |
| Eloquent Serialization | eloquent-serialization |
+----------------------------+-------------------------+
Open the section on browser:
Xin will use the default system browser to open URL. Key is the value available from "list".
$ php artisan xin:docs read --key=envoy
Open documentation in different languages:
Use --locale option. Currently, only "en" and "vn" are supported. Default is "en".
$ php artisan xin:docs read --key=structure --locale=vn
All logs are stored under storage/logs directory.
Read log file
The default log file is laravel.log.
$ php artisan xin:log
You can read content of different log files by name:
$ php artisan xin:log --name=custom.log
Clean log file content
$ php artisan xin:log --clean
The log file will be empty.
You can combine clean a custom log file:
$ php artisan xin:log --name=custom.log --clean
Remove all logs
$ php artisan xin:log --remove-all
This command will remove all files in storage/logs directory.
This command will share a source file to public Gist. It will response with Gist Id and Gist Url.
$ php artisan xin:gist [filename] --desc="Sharing description."
For example, if you want to share public/index.php file:
$ php artisan xin:gist public/index.php --desc="Sharing Laravel index file."
Gist Sharing Information
------------------------------------------------------------------
Gist Id: 37c55c18cd63c34195c22fafbff6fe16
Gist Url: https://gist.github.com/37c55c18cd63c34195c22fafbff6fe16
Note: on Windows, since the path separator is \, so you need to wrap the filename with double-quotation mark " like this:
$ php artisan xin:gist "public\index.php"
Wanna create Blade view file from command quickly? Use this:
$ php artisan xin:view admin.auth.login
It will create login.blade.php at resources/views/admin/auth, it also does create any directory that doesn't exist in the path.
Apparently, in Linux/Unix/Mac, you can use touch.
$ mkdir resources/views/admin/auth
$ touch resources/views/admin/auth/login.blade.php
The MIT License (MIT). Please see License File for more information.