Nextpack (light)
, (*1)
NextPack is a PHP & Laravel Packages Starter, (Designed to help building high quality PHP Packages faster)., (*2)
Clone NextPack and build your next open source package on top of it., (*3)
NextPack strives to facilitates and boosts the development process of PHP Packages. And it highly recommend producing framework agnostic packages., (*4)
Produce more open source composer packages with the least amount of time., (*5)
, (*6)
, (*7)
Highlights
Nextpack includes:, (*8)
-
Rich package skeleton, (containing common files required by almost every PHP package)
- Ready Unit Test
- Ready config files reader
- Ready Servie Provider (for Laravel)
- Ready Facade Class (for Laravel)
- Version Control: Git (
.gitattributes
, .gitignore
)
- Continuous Integration: Travis and Scrutinizer (
.scrutinizer.yml
, .travis.yml
)
- Testing: PHPUnit (
phpunit.xml
)
- Package Manager: Composer (
composer.json
)
, (*9)
Installation
Software Requirement
Installation Steps
git clone https://github.com/nextpack/nextpack.git
composer update
- make sure everything is OK by running the tests
phpunit
, (*10)
Customization
After you install a fresh copy of Nextpack, the only thing you need to do is customizing it to meet your needs, before start codig your package., (*11)
The steps include renaming the code samples shipped with the Nextpack:, (*12)
- Change the namespace of the application from
Nextpack\Nextpack
to your Vendor-name\Package-name
. (you can do this using the [Replace All] feature of your IDE).
- Update the following values in
composer.json
: name
, description
, keywords
, authors
, autoload
and don't forget to update the namespaces
. (you might need to run composer dump-autoload
after the changes).
- Run
composer install
- Rename
SampleFacadeAccessor.php
and update the returned string inside the getFacadeAccessor()
function.
- Rename
NextpackServiceProvider
and update the content of the following functions: facadeBindings()
, configPublisher()
and implementationBindings()
.
- Update the config file
nextpack.php
, (or remove it if not necessary).
- Delete this
README.md
file. And rename the README.md.READY
to README.md
.
- Update
LICENSE
by replacing ::Vendor-Name
and ::Package-Name
with your vendor and package names.
- Edit the new
README.md
- Delete the sample
tests
function. Keep the TestCase.php
.
- Update the "testsuite" name in the
phpunit.xml
.
Test
To run the tests, run the following command from the project folder., (*13)
bash
$ ./vendor/bin/phpunit
, (*14)
Credits
License
The MIT License (MIT). See the License File for more information., (*15)