shipu / hackerrank-api
PHP and Laravel HackerRank Code Checker API
Installs: 1 056
Dependents: 0
Suggesters: 0
Security: 0
Stars: 15
Watchers: 3
Forks: 7
Open Issues: 0
Requires
- php: >=5.6
- guzzlehttp/guzzle: ^6.2
Requires (Dev)
- graham-campbell/testbench: ^3.3
- phpunit/phpunit: ^5.0
This package is auto-updated.
Last update: 2024-12-19 11:22:19 UTC
README
HackerRank Code Checker API. Extremely simple REST API. Supports more than a dozen languages. All powered by reliable HackerRank servers. You can use your own scoring system or build your own online judge.
40+ programming languages support.
Installation
Themevel is a Laravel package so you can install it via Composer. Run this command in your terminal from your project directory:
composer require shipu/hackerrank-api
Wait for a while, Composer will automatically install Themevel in your project.
Laravel Configuration
When the download is complete, you have to call this package service in config/app.php
config file. To do that, add this line in app.php
in providers
array:
Shipu\HackerRank\HackerRankServiceProvider::class,
To use facade you have to add this line in app.php
to the aliases
array:
'HackerRank' => Shipu\HackerRank\Facades\HackerRank::class,
Now run this command in your terminal to publish this package resources:
php artisan vendor:publish --provider="Shipu\HackerRank\HackerRankServiceProvider"
after publishing your config file then open config/hackerrank.php
and add your hackerrank app key:
return [ /* |-------------------------------------------------------------------------- | HackerRank API KEY |-------------------------------------------------------------------------- | | https://www.hackerrank.com/api/ | */ 'api_key' => env('HACKERRANK_API_KEY', 'YOUR_HACKER_RANK_API_KEY'), ];
also you can add api key in .env
:
HACKERRANK_API_KEY = YOUR_HACKER_RANK_API_KEY
Thats it.
API List
- languages()
- submission($lang, $source, $testcases = [ "1" ], $format = 'json', $wait = true, $callback_url = '')
Usages
use Shipu\HackerRank\HackerRank; $config = [ "api_key" => 'hackerrank_app_key', ]; $hackerRank = new HackerRank($config); $allLanguages = $hackerRank->checker()->languages(); var_dump($allLanguages->data);
For Laravel Usage
use Shipu\HackerRank\Facades\HackerRank; //.. //.. $allLanguages = HackerRank::checker()->languages(); dd($allLanguages->data);
Code Submission
use Shipu\HackerRank\Facades\HackerRank; //.. //.. $response = HackerRank::checker()->submission('php', '<?php echo "It's Working"; ?>'); dd($response->data);
Code Submission with TestCase
use Shipu\HackerRank\Facades\HackerRank; //.. //.. // Problem is returns the sum of two integers. // Problem link: https://www.hackerrank.com/challenges/solve-me-first // Submit code with two tescase example. $response = HackerRank::checker()->submission('php', '<?php function solveMeFirst($a,$b){ return $a+$b; } $handle = fopen ("php://stdin","r"); $_a = fgets($handle); $_b = fgets($handle); $sum = solveMeFirst((int)$_a,(int)$_b); print ($sum); fclose($handle); ?>', ["1\n2", "2\n3"]); // output array respectively as test cases dd($response->data->result->stdout);
Support on Beerpay
Hey dude! Help me out for a couple of 🍻!