README.md in lita-2.2.1 vs README.md in lita-2.3.0

- old
+ new

@@ -18,10 +18,11 @@ * Data persistence with Redis * Built-in web server and routing * Support for outgoing HTTP requests * Group-based authorization * Configurable logging +* Generators for creating new plugins ## Why? Lita draws much inspiration from GitHub's fantastic [Hubot](http://hubot.github.com/), but has a few key differences and strengths: @@ -135,10 +136,12 @@ ## Writing an adapter An adapter is a packaged as a RubyGem. The adapter is a class that inherits from `Lita::Adapter`, implements a few required methods, and is registered by calling `Lita.register_adapter(:symbol_that_identifies_the_adapter, TheAdapterClass)`. +To generate a starting template for a new adapter gem, run `lita adapter NAME`, where NAME is the name of the new gem. + ### Example Here is a bare bones example of an adapter for the fictious chat service, FancyChat. ``` ruby @@ -177,9 +180,11 @@ For more detailed examples, check out the built in shell adapter, [lita-hipchat](https://github.com/jimmycuadra/lita-hipchat), or [lita-irc](https://github.com/jimmycuadra/lita-irc). See the API documentation for the exact methods and signatures adapters must implement. ## Writing a handler A handler is packaged as a RubyGem. A handler is a class that inherits from `Lita::Handler` and is registered by calling `Lita.register_handler(TheHandlerClass)`. There are two components to a handler: route definitions, and the methods that implement those routes. There are both chat routes and HTTP routes available to handlers. + +To generate a starting template for a new handler gem, run `lita handler NAME`, where NAME is the name of the new gem. ### Chat routes To define a route, use the class method `route`: