unicodeveloper/laravel-medium

A Medium Bridge for Laravel 5

dev-master / 1.0.x-dev 2015-11-26 16:07 UTC

This package is auto-updated.

Last update: 2024-04-07 16:36:39 UTC


README

Latest Stable Version License Build Status Quality Score Total Downloads

Laravel 5 Package to work with Medium. Very easy to use. Offers the use of Facades and Dependency Injection

Installation

PHP 5.5+ or HHVM 3.3+, and Composer are required.

First, pull in the package through Composer.

$ composer require unicodeveloper/laravel-medium

Another alternative is to simply add the following line to the require block of your composer.json file.

"unicodeveloper/laravel-medium": "1.0.*"

Then run composer install or composer update to download it and have the autoloader updated.

Add this to your providers array in config/app.php

// Laravel 5: config/app.php

'providers' => [
    ...
    Unicodeveloper\Medium\MediumServiceProvider::class,
    ...
];

This package also comes with a facade

// Laravel 5: config/app.php

'aliases' => [
    ...
    'Medium' => Unicodeveloper\Medium\Facades\Medium::class',
    ...
]

Publish the config file by running:

php artisan vendor:publish

The config file will now be located at config/medium.php.

Configuration

This is the medium.php file in the config directory. Go to your medium settings page, and generate an access token also known as integration token. Integration tokens do not expire right now, though they may be revoked by the user at any time.

/**
 *  Config file that a user/developer can insert the self-issued access token
 */
return [
    'integrationToken' => ''
];

Usage

MediumManager

This is the class of most interest. It is bound to the ioc container as 'laravel-medium' and can be accessed using the Facades\Medium facade.

Facades\Medium

This facade will dynamically pass static method calls to the 'laravel-medium' object in the ioc container which by default is the MediumManager class.

Examples

Here you can see an example of just how simple this package is to use.

use Unicodeveloper\Medium\Facades\Medium;
// or you can alias this in config/app.php like I mentioned initially above

Medium::me()->id;
// returns the id of the medium user that can be used for future requests e.g 13889cdb2bb57e75ab7d7261f1f0c4df0e824b3f2249f55b788c0dc2ae84c6b8f

Medium::me()->username;
// returns the username of the medium user e.g prosper

Medium::me()->name;
// returns the full name of the medium user e.g Testing Tester

Medium::me()->url;
// returns the url of the medium profile e.g  "https://medium.com/@prosper"

Medium::me()->imageUrl;
// returns the url of the medium user avatar

WIP - PLEASE DON'T USE IN PRODUCTION YET!

Change log

Please see CHANGELOG for more information what has changed recently.

Testing

You can run the tests with:

vendor/bin/phpunit run

Alternatively, you can run the tests like so:

composer test

Contributing

Please see CONTRIBUTING for details.

Credits

License

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

Security

If you discover any security related issues, please email prosperotemuyiwa@gmail.com instead of using the issue tracker.