Prigner is a Project Design Kit, that is, a tool which creates a conventional structure for several projects as RubyGems, Websites, MVC application and simple scripts. It is a DRY tool, because everything is based in templates. In short, a project template engine.
-
Load and create all directories and files from template specification.
-
The template specification is parsed to command line options.
-
Default Ruby project templates.
-
Ruby Gem.
-
A simple project using setup.
-
-
Add common tasks and libraries.
-
Tests.
-
Code for versioning.
-
prign [OPTIONS] prign [COMMAND] [TEMPLATE]
First, install Prigner stable through Gem:
gem install prigner
If you want try the developer source:
git clone http://github.com/codigorama/prigner.git
Prigner create the most common Ruby projects through templates shared. To generate new Gem project, run command using the following syntax:
prign new ruby:gem foo foo/ |-- lib/ | |-- foo/ | `-- foo.rb |-- test/ | |-- fixtures/ | |-- foo_test.rb | `-- helper.rb |-- CHANGELOG |-- COPYING |-- foo.gemspec |-- Rakefile `-- README.rdoc
This command will generate ‘foo’ Gem project structure. But all templates offers options.
prign new ruby:gem foo --bin foo/ |-- bin/ | `-- foo |-- lib/ | |-- foo/ | | `-- cli.rb | `-- foo.rb |-- test/ | |-- fixtures/ | |-- foo_test.rb | `-- helper.rb |-- CHANGELOG |-- COPYING |-- foo.gemspec |-- Rakefile `-- README.rdoc
Run prign list
to view all available templates.
You can creates your own templates. Just save in your home directory ~/.prigner/templates/<your-template>
. For more information about templates, see “doc/templates.rdoc” file.
If you want contributes with the project, please, see the following instructions:
-
Fork the project from github.com/codigorama/prigner.git.
-
Set the following environment variable:
export RUBYOPT=$PWD/lib:.
, wherePWD
points to project directory.
If you find a bug, please, open a issue in github.com/codigorama/prigner/issues.
Written by Hallison Batista.
Prigner is Copyright © 2010, Codigorama under MIT License.
See COPYING file for more information about license.