Download the PHP package pingpong/modules without Composer

On this page you can find all versions of the php package pingpong/modules. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.

FAQ

After the download, you have to make one include require_once('vendor/autoload.php');. After that you have to import the classes with use statements.

Example:
If you use only one package a project is not needed. But if you use more then one package, without a project it is not possible to import the classes with use statements.

In general, it is recommended to use always a project to download your libraries. In an application normally there is more than one library needed.
Some PHP packages are not free to download and because of that hosted in private repositories. In this case some credentials are needed to access such packages. Please use the auth.json textarea to insert credentials, if a package is coming from a private repository. You can look here for more information.

  • Some hosting areas are not accessible by a terminal or SSH. Then it is not possible to use Composer.
  • To use Composer is sometimes complicated. Especially for beginners.
  • Composer needs much resources. Sometimes they are not available on a simple webspace.
  • If you are using private repositories you don't need to share your credentials. You can set up everything on our site and then you provide a simple download link to your team member.
  • Simplify your Composer build process. Use our own command line tool to download the vendor folder as binary. This makes your build process faster and you don't need to expose your credentials for private repositories.
Please rate this library. Is it a good library?

Informations about the package modules

Laravel 5 Modules

pingpong/modules is a laravel package which created to manage your large laravel app using modules. Module is like a laravel package, it have some views, controllers or models. This package is supported and tested in both Laravel 4 and Laravel 5.

Upgrade Guide

To 2.0.18

If you have been updated to version 2.0.18, please read this release note.

To 2.0.10

Previously, we add two service provider from this package. In version 2.0.5, we just need register one service provider. Now, we can remove Pingpong\Modules\Providers\BootstrapServiceProvider from providers array, because now it service provider is registered automatically by Pingpong\Modules\ModulesServiceProvider.

From Laravel 4 to Laravel 5

If upgrade your Laravel app from Laravel 4 to Laravel 5, there is a few things to do if you are using this package. You will receive some kind errors about config not loaded. To fix this issue, please follow this instruction.

From 1.1.* to 1.2.0

New configuration file. This breaking change affected if you publish the configuration file from this package. To fix this issue, create new config file called config.php in your app/config/packages/pingpong/modules/ directory. Next move the array contents from paths.php file to paths array in new configuration file. Your config file will looks like this.

Installation

To install through composer, simply put the following in your composer.json file:

And then run composer install to fetch the package.

Quick Installation

You could also simplify the above code by using the following command:

Add Service Provider

Next add the following service provider in config/app.php.

Next, add the following aliases to aliases array in the same file.

Next publish the package's configuration file by run :

Autoloading

By default controllers, entities or repositories not loaded automatically. You can autoload all that stuff using psr-4. For example :

Configuration

Creating A Module

To create a new module you can simply run :

Create a new module

Create multiple modules

By default if you create a new module, that will add some resources like controller, seed class or provider automatically. If you don't want these, you can add --plain flag, to generate a plain module.

Naming Convension

Because we are autoloading the modules using psr-4, we strongly recommend using StudlyCase convension.

Folder Structure

Artisan Commands

Create new module.

Use the specified module. Please see #26.

Show all modules in command line.

Create new command for the specified module.

Create new migration for the specified module.

Rollback, Reset and Refresh The Modules Migrations.

Rollback, Reset and Refresh The Migrations for the specified module.

Create new seed for the specified module.

Migrate from the specified module.

Migrate from all modules.

Seed from the specified module.

Seed from all modules.

Create new controller for the specified module.

Publish assets from the specified module to public directory.

Publish assets from all modules to public directory.

Create new model for the specified module.

Create new service provider for the specified module.

Publish migration for the specified module or for all modules. This helpful when you want to rollback the migrations. You can also run php artisan migrate instead of php artisan module:migrate command for migrate the migrations.

For the specified module.

For all modules.

Enable the specified module.

Disable the specified module.

Generate new middleware class.

Update dependencies for the specified module.

Update dependencies for all modules.

Show the list of modules.

Facades

Get all modules.

Get all cached modules.

Get ordered modules. The modules will be ordered by the priority key in module.json file.

Get scanned modules.

Find a specific module.

Find a module, if there is one, return the Module instance, otherwise throw Pingpong\Modules\Exeptions\ModuleNotFoundException.

Get scanned paths.

Get all modules as a collection instance.

Get modules by the status. 1 for active and 0 for inactive.

Check the specified module. If it exists, will return true, otherwise false.

Get all enabled modules.

Get all disabled modules.

Get count of all modules.

Get module path.

Register the modules.

Boot all available modules.

Get all enabled modules as collection instance.

Get module path from the specified module.

Get assets path from the specified module.

Get config value from this package.

Get used storage path.

Get used module for cli session.

Set used module for cli session.

Get modules's assets path.

Get asset url from specific module.

Install the specified module by given module name.

Update dependencies for the specified module.

Module Entity

Get an entity from a specific module.

Get module name.

Get module name in lowercase.

Get module name in studlycase.

Get module path.

Get extra path.

Disable the specified module.

Enable the specified module.

Delete the specified module.

Custom Namespaces

When you create a new module it also registers new custom namespace for Lang, View and Config. For example, if you create a new module named blog, it will also register new namespace/hint blog for that module. Then, you can use that namespace for calling Lang, View or Config. Following are some examples of its usage:

Calling Lang:

Calling View:

Calling Config:

Publishing Modules

Have you created a laravel modules? Yes, I've. Then, I want to publish my modules. Where do I publish it? That's the question. What's the answer ? The answer is Packagist. In pingpong/modules version >= 1.2.0, when you generate a module, you will see there is a new file generated called composer.json.

Auto Scan Vendor Directory

By default the vendor directory is not scanned automatically, you need to update the configuration file to allow that. Set scan.enabled value to true. For example :

You can verify the module has been installed using module:list command:

Publishing Modules

After creating a module and you are sure your module module will be used by other developers. You can push your module to github or bitbucket and after that you can submit your module to the packagist website.

You can follow this step to publish your module.

  1. Create A Module.
  2. Push the module to github.
  3. Submit your module to the packagist website. Submit to packagist is very easy, just give your github repository, click submit and you done.

All versions of modules with dependencies

PHP Build Version
Package Version
Requires php Version >=5.4.0
laravel/framework Version 5.2.*
pingpong/generators Version 2.2.*
pingpong/support Version 2.2.*
laravelcollective/html Version ~5.0
Composer command for our command line client (download client) This client runs in each environment. You don't need a specific PHP version etc. The first 20 API calls are free. Standard composer command

The package pingpong/modules contains the following files

Loading the files please wait ....