README.md in bently-0.1.0 vs README.md in bently-1.0.0
- old
+ new
@@ -1,123 +1,62 @@
-Bently allows you to create executable "recipes" for file and command-line operations that you do a lot.
+[<img src="https://secure.travis-ci.org/bonsaiben/bently.png">](http://travis-ci.org/bonsaiben/bently)
-You can think of it as a Homebrew for Ruby gems.
+Bently is a community maintained library of executable recipes for rapid application development. The bulk of recipes are for automating installation and configuration of commonly-used dependencies. Another potential use case is feature scaffolding, or laying down basic implementation for common functionality like social authentication.
-I created it for quickly settings up and deploying Rails applications.
+The goal of Bently is to reduce duplication in the development process across projects, with rapid prototyping in mind.
-Installation
-============
+Bently is Homebrew meets Rails generators.
-You'll probably want to add your own custom recipes so I recommend cloning into an easy-to-find directory and build and install the gem from there.
+Bently is built on top of Thor.
-You can install the Gem if you'd prefer.
+Installation
+============
+
gem install bently
-Example
-=======
+Usage
+=====
-I start a new project that needs user authentication so I want to use Devise.
-Looking at the Devise README on GitHub I find the necessary steps for installing and configuring Devise.
+ bently list # list all recipes
+ bently list [STRING] # search recipes matching a string
+ bently read [RECIPE] # display a recipe without executing it
+ bently bake [RECIPE] # execute all steps in recipe
+ bently bake [RECIPE] --step # execute a recipe step by step, prompting before each step
+ bently source [RECIPE] # output the URL for the document on which the recipe is based
- add "gem 'devise'" to Gemfile
- bundle install
- rails g devise:install
- rails g devise user
-As a Bently recipe, this would look like:
-
- module Bently
- class Devise < Recipe
- step :append, :file => 'Gemfile', :with => "gem 'devise'"
- step :shell, 'bundle install'
- step :shell, 'rails g devise:install'
- step :shell, 'rails g devise user'
- end
- end
-
-And executing it is as simple as:
-
- bently bake devise
-
-Or if I just want a readout without executing:
-
- bently read devise
-
-Recipes
+Example
=======
-A recipe defines a series of steps. There are seven kinds of steps:
+Installing and configuring devise in a Rails application.
-Shell
+ $ bently bake devise
+ gemfile devise
+ 1
+ 2 gem "devise"
+ run bundle install from "."
+ run rails generate devise:install from "."
+ TODO rails generate devise MODEL
-execute a command
+The recipe for devise looks like:
- step :shell, 'echo hello'
-
-Touch
-
-create a file with some content
-
- step :touch, :file => 'file.rb', :with => 'content'
-
-Modify
-
-change a part of a file to something else
-
- step :modify, :file => 'file.rb', :from => /old_text/, :to => 'new_text'
-
-Append
-
-add content to the end of a file
-
- step :append, :file => 'file.rb', :with => 'put this at the bottom'
-
-Prepend
-
-add content to beginning of a file
-
- step :prepend, :file => 'file.rb', :with => 'put this at the top'
-
-Insert
-
-add content before or after some part of a file
-
- step :insert, :file => 'file.rb', :with => 'insert this', :after => 'after this'
-
-Remove
-
-remove a file
-
- step :remove, :file => 'delete_me.txt'
-
-
-You can also define custom steps that reduce to one of the above.
-
- step :add_gem, "gem 'rails'"
-
- def add_gem gem
- append :file => 'Gemfile', :with => gem
+ class Devise < RailsRecipe
+ gem 'devise'
+ bundle
+ generate 'devise:install'
+ todo 'rails generate devise MODEL'
end
-Recipe Templates
-================
-Recipe templates can be created to encapsulate steps used across multiple recipes.
+Available Recipes
+=================
- module Bently
- class RailsRecipe < Recipe
- GEMFILE = 'Gemfile'
-
- def add_gem gem
- append :file => GEMFILE, :with => gem
- end
-
- end
- end
+You can browse the recipe library on GitHub: https://github.com/bonsaiben/bently/tree/master/lib/bently/recipe
-To use a template, inherit from the template class instead of Recipe.
- class Devise < RailsRecipe
+License
+-------
+Released under the MIT License. See the [LICENSE][] file for further details.
-Fork and accumulate your own collection of recipes.
\ No newline at end of file
+[license]: LICENSE