為你的專案依賴加星

Oraoto發表於2017-09-17

幾天前看到一個Haskell專案:y-taka-23/thank-you-stars, 功能很簡單,就是檢查專案依賴,然後去 Github 加星。Github 搜了一下,發現很多語言都有類似的專案,但是 PHP 沒有,所以自己擼了一個 PHP 版的:oraoto/thank-you-stars

原理

composer.json 裡記錄了專案的依賴:

"require": {
    "php": ">=5.6.4",
    "laravel/framework": "5.3.*",
    "predis/predis": "1.0.*"
},
"require-dev": {
    "phpunit/phpunit": "6.2"
}

包名和 Github 倉庫名可能會不一樣,所以先去 Packgist 找到對應的 Github 倉庫:

$ curl https://packagist.org/search.json?q=laravel/laravel&per_page=1
{
  "results": [
    {
      "name": "laravel/laravel",
      "description": "The Laravel Framework.",
      "url": "https://packagist.org/packages/laravel/laravel",
      "repository": "https://github.com/laravel/laravel",
      "downloads": 5816206,
      "favers": 35260
    }
  ],
  "total": 24,
  "next": "https://packagist.org/search.json?q=laravel/laravel&page=2&per_page=1"
}

其中的 repository 就是倉庫地址了,從裡面擷取出作者和倉庫名就可以呼叫 Github 的加星介面了。

使用

還是直接看 Readme 好了,可能是網路問題吧,感覺很慢,10幾秒才加一個星。

本作品採用《CC 協議》,轉載必須註明作者和本文連結

相關文章