raphhh / samurai
PHP scaffolding tool - creates for you all the files you need to start a new project
Installs: 119
Dependents: 2
Suggesters: 0
Security: 0
Stars: 19
Watchers: 6
Forks: 5
Open Issues: 2
Type:project
Requires
- php: >=5.4
- icanboogie/inflector: ~1.3
- kzykhys/git: 0.1.*
- pimple/pimple: ~3.0
- rap2hpoutre/similar-text-finder: 0.1.*
- raphhh/balloon: ~1.1
- raphhh/puppy-config: ~1.0
- raphhh/trex-cli: ~0.1
- symfony/console: ~2.6
Requires (Dev)
- phpunit/phpunit: @stable
- symfony/event-dispatcher: ~2.6
This package is auto-updated.
Last update: 2024-10-25 22:05:50 UTC
README
Samurai is a PHP scaffolding tool. It helps you to :
- start a new project in PHP, generating all the base files in a simple command line.
- improve an existing project, running several modules with specific actions.
Samurai generates all the files you need for a library, a web application, a frameworked project, and so on. You can even load your own bootstrap.
Samurai will run several modules during the scaffolding of a new project, or independently on an existing project. You can choose which module to install according to your own needs. You can also create your own module.
What does Samurai scaffold?
Samurai installs and params your project:
- Download the bootstrap and its dependencies with Composer
- Param the Composer config (composer.json)
- Dump the autoloader of Composer with your new package name
- Execute the installed modules.
Examples of bootstrap
- A simple PHP library
- Symfony
- Laravel
- Zend
- CakePHP
- CodeIgniter
- Yii
- Drupal
- Joomla
- WordPress
- Silex
- Slim
- .. what you want!
Examples of modules
- Init git for the project. See raphhh/samurai-module-git.
- Create a new repo on GitHub and link it to your project (github module) (todo)
- Clean some files (changelog, ...). See raphhh/samurai-module-cleaner.
- Init PHPUnit (todo)
- Init Behat (todo)
- Link your project to Travis-ci (todo)
- ... what you want!
Installation
Install Samurai with Composer:
$ composer global require raphhh/samurai
Be sure you have set the COMPOSER_BIN_DIR in your path. For more information, see the detailed installation doc of Samurai.
Scaffold your project
To create a new project, run the new
command of Samurai and choose your bootstrap:
$ samurai new
For more information, see the detailed scaffolding doc of Samurai.
Modules
A module is a plugin added to Samurai. This plugin will execute some specific actions. For example, the git module will init Git in your project.
You can easily develop your own module and add it to Samurai.
The modules can run during the scaffolding of a new project, or improve an existing project.
For more information, see the detailed modules doc of Samurai.
Install pre-defined modules
$ samurai module install
Run modules on an existing project
$ samurai module run
Documentation
See the Samurai documentation.
Contribution and roadmap
See the Samurai wiki.