Creating a New Package Workbench

Problem

You want to create a package to share across your Laravel projects.

Solution

Use the php artisan workbench command.

This will allow you to develop your package along side an application.

$ php artisan workbench yourname/packagename

If you also want to create Laravel specific resources, use the --resources option.

$ php artisan workbench yourname/packagename --resources

Discussion

The Laravel workbench is a great way to work on packages.

Using the workbench provides a quicker workflow for package development.

When you create a new workbench, the following structure is created.

myapp : project directory
|- workbench : workbench directory
|---- yourname : vendor directory
|------- packagename : package root
|---------- src : Source directory
|------------- Yourname : Vendor name again
|---------------- Packagename : Package name again
|------------------- PackageServiceProvider.php - a skeleton
|---------- tests : Directory for unit testing
|---------- vendor : Your package's vendor directory

If you use the --resources option then config, controllers, lang, migrations, and views will be also be created in the src directory.

Laravel's bootstrap will load any workbench packages automatically.

When you're finished developing your package, you can check everything below the workbench directory into a new Github repository, making it available for others to use.

comments powered by Disqus