LaravelPackages.net
Acme Inc.
Toggle sidebar
alexanderpavlov/laravel5-genderize-api-client

Laravel 5 client for the genderize.io API

11.579
0
v2.0.1
About alexanderpavlov/laravel5-genderize-api-client

alexanderpavlov/laravel5-genderize-api-client is a Laravel package for laravel 5 client for the genderize.io api. It currently has 0 GitHub stars and 11.579 downloads on Packagist (latest version v2.0.1). Install it with composer require alexanderpavlov/laravel5-genderize-api-client. Discover more Laravel packages by alexanderpavlov or browse all Laravel packages to compare alternatives.

Last updated

Laravel 5 Genderize.io API Client

Latest Version on Packagist Software License Travis Build Scrutinizer Quality Scrutinizer Build SensioLabsInsight Total Downloads Coverage Status

A simple Laravel 5 client for the Genderize.io API. It provides a fluent interface for easy request building.

Version overview

| Laravel | php | use branch | | ------ | ------------- | ----------- | | 5.8 | 7.1, 7.2, 7.3 | w.i.p. | | 5.7 | 7.1, 7.2, 7.3 | 2.0.x | | 5.6 | 7.1, 7.2, 7.3 | 2.0.x | | 5.5 | 7.0, 7.1, 7.2 | 1.1.x/2.0.x |

Installation

Step 1: Install Through Composer

composer require pixelpeter/laravel5-genderize-api-client

Step 2: Add the Service Provider (not needed with v2.x because of auto discovery)

Add the service provider in app/config/app.php

'provider' => [
    ...
    Pixelpeter\Genderize\GenderizeServiceProvider::class,
    ...
];

Step 3: Add the Facade

Add the alias in app/config/app.php

'aliases' => [
    ...
    'Genderize' => Pixelpeter\Genderize\Facades\Genderize::class,
    ...
];

Step 4: Publish the configuration file

This is only needed when you have an API key from Genderize.io

php artisan vendor:publish --provider="Pixelpeter\Genderize\GenderizeServiceProvider"

Examples

Send requests

Single name

use Genderize;

Genderize::name('Peter')->get();

Multiple names (max. 10)

use Genderize;

Genderize::name(['John', 'Jane'])->get();

// or for better readability you can use the plural
Genderize::names(['John', 'Jane'])->get();

Add language and country options

use Genderize;

Genderize::name('John')->country('US')->lang('EN')->get();

Working with the response

For single usage

use Genderize;

$response = Genderize::name('Peter')->get();

print $response->result->gender; // 'male'
print $response->result->name; // 'Peter'
print $response->result->probability; '0.99'
print $response->result->count; 144
print $response->result->isMale(); true
print $response->result->isFemale(); false
print $response->result->isNotMale(); false
print $response->result->isNotFemale(); true

For batch usage

use Genderize;

$response = Genderize::names(['John', 'Jane'])->country('US')->lang('EN')->get();

foreach($response->result as $row)
{
    print $row->name;
}

Getting information about the request and limits

use Genderize;

$response = Genderize::name('Peter')->get();

print $response->meta->code; // 200 - HTTP response code
print $response->meta->limit; // 1000 - Max number of allowed requests
print $response->meta->remaining; // 950 - Number of requests left
print $response->meta->reset->diffInSeconds(); // Carbon\Carbon - time left till reset

More documentation

Refer to Genderize.io API Documentation for more examples and documentation.

Testing

Run the tests with:

vendor/bin/phpunit

License

The MIT License (MIT). Please see License File for more information.

Star History Chart