README.md in potassium-1.0.1 vs README.md in potassium-1.1.0
- old
+ new
@@ -34,11 +34,11 @@
- [ActiveAdmin](http://activeadmin.info) for admin interfaces.
- [Pundit](https://github.com/elabs/pundit) for role-based authorization.
## Contributing
-### How do i add something new to Potassium?
+### How do I add something new to Potassium?
In the [lib/potassium/templates/application](lib/potassium/templates/application) folder, you will find [the template](lib/potassium/templates/application/template.rb). You should follow the next conventions to add something:
*__NOTE:__ If you only want to use Potassium but not to add something new, the next parts shouldn't be necessary.*
@@ -57,19 +57,19 @@
end
```
#### Install
-Now, to add some behavior, thanks to the [DSL](docs/dsl.md) we have a kind of standard flow of what happens when a new project is created. To understand this better, please read [the template](lib/potassium/templates/application/template.rb). Anyway, the structure is like this:
+Now, to add some behavior, thanks to the [DSL](docs/dsl.md) we have a kind of standard flow of what happens when a new project is created. To understand this better, please read [the template](lib/potassium/templates/application/template.rb). The structure looks like this:
1. Clean the Gemfile and add the base gems that rails needs to work.
-2. Then, run all the **asks** recipes.
-3. Then, execute all the **recipes**, that are ruby files stored on the [recipes](lib/potassium/templates/application/recipes) folder. They specify what gems are needed and registers callbacks based on this process, usually to execute things after the gem installation happened or after some other recipe finished his work.
-4. Then, install the gems, filling the Gemfile before with all the gathered gems.
+2. Run all the **asks** recipes.
+3. Execute all the **recipes**, that are ruby files stored on the [recipes](lib/potassium/templates/application/recipes) folder. They specify what gems are needed and registers callbacks based on this process, usually to execute things after the gem installation happened or after some other recipe finished his work.
+4. Install the gems, filling the Gemfile before with all the gathered gems.
5. Finally, create the database.
-The main step is the 3, when we run the recipes. A recipe can do anything (because is a ruby script) but what should be their main responsabilities are to gather gems and register callbacks for the process.
+The main step is the 3rd, when we run the recipes. A recipe can do anything (because is a ruby script) but their responsability should be to gather gems and register callbacks for the process.
For example, if we want to create an optional recipe to add a gem called `banana_split` that needs to run a generator, we can do the following.
1. Create the **ask** file:
@@ -86,11 +86,11 @@
# ...
eval_file "recipes/asks/banana_split.rb"
end
```
-3. Create the **recipe**. Register a gem using `gather_gem` and use a callback to run after the `gem_install` action succeded to run the generator. `gem_install` is one of the main actions that should be easily visible with a sneak peek in [the template](lib/potassium/templates/application/template.rb).
+3. Create the **recipe**. Register a gem using `gather_gem` and create a callback to be called after the `gem_install` action succeded to run the generator. `gem_install` is one of the main actions that should be easily visible with a sneak peek in [the template](lib/potassium/templates/application/template.rb).
```ruby
# application/recipes/banana_split.rb
if get(:use_banana_split)
gather_gem('banana_split', '~> 1.2')
@@ -112,6 +112,6 @@
5. Ready, let's start working on your new project.
#### The DSL
-To see some further documentation of what we added to the rails template's DSL, check the [DSL documentation](docs/dsl.md). Remember that the DSL we are documenting is an extension over the [Rails Application Template DSL](http://edgeguides.rubyonrails.org/rails_application_templates.html), that itself is a dsl based on [Thor](https://github.com/erikhuda/thor/wiki).
+To see further documentation of what we added to the rails template's DSL, check the [DSL documentation](docs/dsl.md). Remember that the DSL we are documenting is an extension over the [Rails Application Template DSL](http://edgeguides.rubyonrails.org/rails_application_templates.html), that itself is a dsl based on [Thor](https://github.com/erikhuda/thor/wiki).