creation
allows to create customized Rails applications for rapid prototyping,
with the exact integrations that we need. creation
is an opinionated software,
and curretly, provides the following customizations:
- activates
rspec
for testing - activates
pry-rails
for easy debugging - adds home page using
high_voltage
- adds twitter bootstrap for frontend framework via
bootstrap-generators
- sets up and activates
activeadmin
for admin backend - sets up, activates
pundit
for authorization, and adds certain policies - sets up and activates
sidekiq
for background processing of queues
Install it yourself as:
$ gem install creation
creation
is based upon the default rails
command, and adds the above
mentioned integrations/features on top of it. You can see a list of all such
features by running: creation help
.
Note that, each of the above integrations/features have a corresponding command
to disable that particular feature. --skip-bundle
should not be used with this
gem, however, the option still exists and works as expected, but several
customizations done by creation
gem require gems to be bundled, and hence,
some of these customizations will be skipped.
To create a new Rails application, along with activeadmin
, pundit
, frontend
with twitter bootstrap based layout, sidekiq
and rspec
, you can simply, run:
creation new test_app
To create a new Rails application that uses root namespace for activeadmin
(i.e. http://localhost:3000
will be the activeadmin instance), you can run:
creation new test_app --admin-namespace=
To mount actievadmin
to somewhere else (say: /backend
), you can run:
creation new test_app --admin-namespace=backend
This integration uses user
model as default user for activeadmin
. You can
change that to say member
model, by running:
creation new test_app --admin-user=member
# do not install sidekiq
creation new test_app --skip-sidekiq
# do not install rspec
creation new test_app --skip-rspec
# do not install pundit
creation new test_app --skip-pundit
# do not install active_admin
creation new test_app --skip-active-admin
# do not use twitter bootstrap
creation new test_app --skip-bootstrap
# do not create a home page
creation new test_app --skip-home-page
After checking out the repo, run bin/setup
to install dependencies. Then, run
bin/console
for an interactive prompt that will allow you to experiment. Run
bundle exec creation
to use the code located in this directory, ignoring other
installed copies of this gem.
To install this gem onto your local machine, run bundle exec rake install
. To
release a new version, update the version number in version.rb
, and then run
bundle exec rake release
to create a git tag for the version, push git commits
and tags, and push the .gem
file to rubygems.org.
- Fork it ( https://github.com/nikhgupta/creation/fork )
- Create your feature branch (
git checkout -b my-new-feature
) - Commit your changes (
git commit -am 'Add some feature'
) - Push to the branch (
git push origin my-new-feature
) - Create a new Pull Request