Guess the gender of names with the help of the genderize.io.
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
.bundle
exec
lib
spec
.gitignore
.rspec
Gemfile
LICENSE.txt
README.md
Rakefile
gendered.gemspec

README.md

Gendered

THIS LIBRARY IS STILL IN DEVELOPMENT.

Guess the gender of names with the help of the genderize.io.

gem install gendered

You can guess one name at a time...

> require 'gendered'
> name = Gendered::Name.new("Sean")
> name.gender
> :not_guessed
> name.guess!
=> :male
> name.male?
=> true
> name.female?
=> false
> name.probability
=> "0.99E0"
> name.sample_size
=> 967

Or batch up a list of names (which sends only one request per hundred names to the API)...

> require 'gendered'
> name_list = Gendered::NameList.new(["Sean","Theresa"])
> name_list.guess!
=> [:male, :female]
> name_list.collect { |name| name.male? }
=> [true, false]
> name_list.collect { |name| name.female? }
=> [false, true]
> name_list.collect { |name| name.probability.to_f }
=> [0.99, 1.0]
> name_list.collect { |name| name.sample_size }
=> [967, 370]
> name_list["Sean"].gender
=> :male

Options can be passed in too...

options = { :apikey => "X123Y456", :country_id => "dk" }
name = Gendered::Name.new("Sean")
name.guess!(options)
name_list = Gendered::NameList.new(["Kim", "Theresa"], options)

Or set globally, as defaults...

Gendered.configure do |config|
  config.apikey = "X123Y456"
  config.language_id = "pt"
  # ...
end