Gem VersionBuild StatusBuild StatusInline docs

This gem implements a quick back-end service for deploying applications for Amazon's Echo (Alexa).


Sample Application

For a sample application video tutorial, check

Running a sample Rubykit Demo

Samples are provided by the alexa_rubyengine project:

For Ruby Projects:

Add this line to your application's Gemfile:

gem 'alexa_rubykit'

And then execute:

$ bundle

Or install it yourself as:

$ gem install alexa_rubykit


This Gem provides methods to create and handle request and response objects to be used in your container of choice.

Sample usage:

require 'alexa_rubykit'
response =
response.add_speech('Ruby is running ready!')

Will generate a valid outputspeech response in JSON format:

    "version": "1.0",
    "response": {
        "outputSpeech": {
            "type": "PlainText",
            "text": "Ruby is running ready!"
        "shouldEndSession": true


There are two sources of troubleshooting information: the Amazon Echo app/website and the EBS logs that you can get from the management console.

  • "Error in SSL handshake" : Make sure your used the FQDN when you generated the SSL and it's also the active SSL in EBS.
  • "Error communicating with the application" : Query the EBS logs from the management console and create an issue on GitHub.


Run the tests using

bundle exec rake


  1. Decide to work on the "dev" (unstable) branch or "master" (stable)
  2. Fork it ([my-github-username]/alexa_rubykit/fork )
  3. Create your feature branch (git checkout -b my-new-feature)
  4. Commit your changes (git commit -am 'Add some feature')
  5. Push to the branch (git push origin my-new-feature)
  6. Create a new Pull Request

All development is done in the "dev" branch before being merged to master. Applications can use the developer environment by adding the following line to their Gemfile:

gem 'alexa_rubykit', :git => '', :branch => 'dev'

To use the stable/master branch, rename 'dev' to 'master' or remove :branch all together.

Team Members