Skip to content
Branch: master
Go to file
Code

Latest commit

Files

Permalink
Failed to load latest commit information.
Type
Name
Latest commit message
Commit time
bin
 
 
 
 
 
 
lib
 
 
 
 
 
 
 
 
 
 
 
 
 
 

README.md

CurrentAstronauts

Small gem to work with the list of current astronauts in space from http://api.open-notify.org/astros.json.

Installation

Add this line to your application's Gemfile:

gem 'current_astronauts'

And then execute:

$ bundle

Or install it yourself as:

$ gem install current_astronauts

Usage

require the gem, and optionally include the module for simplicity

require 'current_astronauts'

include CurrentAstronauts

Instantiate an object and fetch data. If success?, use the data as desired.

a = Astronauts.new
a.fetch
if a.success?
  # do something here
end

The URL source defaults to http://api.open-notify.org/astros.json, but if you set ENV['OPEN_NOTIFY_URL'] before instantiating the object, it will use the set URL instead.

ENV['OPEN_NOTIFY_URL']
a = Astronauts.new

a.data contains the full data as returned in a hash. There are methods to work with smaller portions of the data.

How many astronauts are currently in space?

puts "there are currently #{a.num} astronauts currently in space."

Use the 'people' method to work with the list of astronauts and their associated craft. It is an array of hashes.

people = a.people
first = a.people.first

puts "a.people returns a list of people and their associated craft as an #{people.class} of type #{first.class}."
puts
puts "#{first['name']} is currently on: #{first['craft']}."

Print a formatted list of astronauts and their associated craft.

a.print

Formatted list appears as follows.

Name              | Craft
------------------|-------------
Anatoly Ivanishin | ISS
Takuya Onishi     | ISS
Kate Rubins       | ISS
Jing Haipeng      | Shenzhou 11
Chen Dong         | Shenzhou 11
Sergey Rizhikov   | ISS
Andrey Borisenko  | ISS
Shane Kimbrough   | ISS

Development

After checking out the repo, run bin/setup to install dependencies. You can also run bin/console for an interactive prompt that will allow you to experiment.

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, which will create a git tag for the version, push git commits and tags, and push the .gem file to rubygems.org.

Contributing

Bug reports and pull requests are welcome on GitHub at https://github.com/hortoncd/current_astronauts.

License

The gem is available as open source under the terms of the MIT License.

About

No description, website, or topics provided.

Resources

License

You can’t perform that action at this time.