Skip to main content

A tool for printing github repository information as a markdown table format.

Project description

girepo

pypi version CircleCI Status

This makes it easy to investigate repositories at Github and to describe the results as a markdown table format.

Installation

pip install girepo

Usage

usage: girepo [-h] {rough,ro,strict,st} ...

Print Git Repositories information with the markdown format for your
documents. This uses github api without authentication. So you could reach the
rate-limitation if you use this 60 requests per hour.
https://developer.github.com/v3/#rate-limiting Could you take a cup of coffee
☕ until recovering if you exceed.

optional arguments:
  -h, --help            show this help message and exit

subcommands:
  you can choose a search way from sub commands. rough sub command does not
  require owner info but it might return wrong info.

  {rough,ro,strict,st}
    rough (ro)          heuristic search. see `girepo ro --help`
    strict (st)         strict search. see `girepo st --help`

God bless you.

Example

Simple (ver. rough)

If you want to investigate repositories of frontend framework, you can run this script like below.

girepo rough angular react vue

Output:

| fullname | star | star/day | created_at | updated_at | license | language | description | url |
| :----: | :----: | :----: | :----: | :----: | :----: | :----: | :----: | :----: |
| angular/angular | 51,080 | 28.17 | 2014-09-18 | 2019-09-05 | MIT License | TypeScript | One framework. Mobile & desktop. | [link](https://github.com/angular/angular) |
| facebook/react | 135,563 | 59.07 | 2013-05-24 | 2019-09-05 | MIT License | JavaScript | A declarative, efficient, and flexible JavaScript library for building user interfaces. | [link](https://github.com/facebook/react) |
| vuejs/vue | 147,494 | 66.14 | 2013-07-29 | 2019-09-05 | MIT License | JavaScript | 🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web. | [link](https://github.com/vuejs/vue) |

Then you can get the table format of markdown.

fullname star star/day created_at updated_at license language description url
angular/angular 51,080 28.17 2014-09-18 2019-09-05 MIT License TypeScript One framework. Mobile & desktop. link
facebook/react 135,563 59.07 2013-05-24 2019-09-05 MIT License JavaScript A declarative, efficient, and flexible JavaScript library for building user interfaces. link
vuejs/vue 147,494 66.14 2013-07-29 2019-09-05 MIT License JavaScript 🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web. link

This results are heuristic so if you find wrong rows, I recommend to use strict sub-command with the fullname and the headless option.

Simple (ver. strict)

If you want to investigate repositories of frontend framework, you can run this script like below.

girepo strict angular/angular facebook/react vuejs/vue 

Output:

| fullname | star | star/day | created_at | updated_at | license | language | description | url |
| :----: | :----: | :----: | :----: | :----: | :----: | :----: | :----: | :----: |
| angular/angular | 51,080 | 28.17 | 2014-09-18 | 2019-09-05 | MIT License | TypeScript | One framework. Mobile & desktop. | [link](https://github.com/angular/angular) |
| facebook/react | 135,563 | 59.07 | 2013-05-24 | 2019-09-05 | MIT License | JavaScript | A declarative, efficient, and flexible JavaScript library for building user interfaces. | [link](https://github.com/facebook/react) |
| vuejs/vue | 147,494 | 66.14 | 2013-07-29 | 2019-09-05 | MIT License | JavaScript | 🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web. | [link](https://github.com/vuejs/vue) |

Then you can get the table format of markdown.

fullname star star/day created_at updated_at license language description url
angular/angular 51,080 28.17 2014-09-18 2019-09-05 MIT License TypeScript One framework. Mobile & desktop. link
facebook/react 135,563 59.07 2013-05-24 2019-09-05 MIT License JavaScript A declarative, efficient, and flexible JavaScript library for building user interfaces. link
vuejs/vue 147,494 66.14 2013-07-29 2019-09-05 MIT License JavaScript 🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web. link

Input From File

If you want to use a bulk input, please prepare a file whose content is like below. Do not contain a blank line.

angular/angular
facebook/react
vuetifyjs / vuetify
vuejs/vue

For example, if the file name is ./misc/input.txt, then

girepo strict @misc/input.txt

Output:

| fullname | star | star/day | created_at | updated_at | license | language | description | url |
| :----: | :----: | :----: | :----: | :----: | :----: | :----: | :----: | :----: |
| angular/angular | 51,080 | 28.17 | 2014-09-18 | 2019-09-05 | MIT License | TypeScript | One framework. Mobile & desktop. | [link](https://github.com/angular/angular) |
| facebook/react | 135,563 | 59.07 | 2013-05-24 | 2019-09-05 | MIT License | JavaScript | A declarative, efficient, and flexible JavaScript library for building user interfaces. | [link](https://github.com/facebook/react) |
| vuetifyjs/vuetify | 21,394 | 19.65 | 2016-09-12 | 2019-09-05 | MIT License | TypeScript | 🐉 Material Component Framework for Vue.js 2 | [link](https://github.com/vuetifyjs/vuetify) |
| vuejs/vue | 147,494 | 66.14 | 2013-07-29 | 2019-09-05 | MIT License | JavaScript | 🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web. | [link](https://github.com/vuejs/vue) |

Whitespace

when you copy a name of an owner and a repository on a topic page the below, you might get whitespaces between the owner and repository like vuetifyjs / vuetify. So this script enables to parse them.

topic_page

Please surround the owner/repository name with " if it contains whitespaces.

girepo strict " vuetifyjs / vuetify " "kriasoft / react-starter-kit " 

Output:

| fullname | star | star/day | created_at | updated_at | license | language | description | url |
| :----: | :----: | :----: | :----: | :----: | :----: | :----: | :----: | :----: |
| vuetifyjs/vuetify | 21,394 | 19.65 | 2016-09-12 | 2019-09-05 | MIT License | TypeScript | 🐉 Material Component Framework for Vue.js 2 | [link](https://github.com/vuetifyjs/vuetify) |
| kriasoft/react-starter-kit | 19,484 | 9.9 | 2014-04-16 | 2019-09-05 | MIT License | JavaScript | React Starter Kit — isomorphic web app boilerplate (Node.js, Express, GraphQL, React.js, Babel, PostCSS, Webpack, Browsersync) | [link](https://github.com/kriasoft/react-starter-kit) |

etc

girepo strict angular/angular facebook/react vuejs/vue  --asc star
girepo rough angular react vue  --headless

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

girepo-0.3.1.tar.gz (8.0 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

girepo-0.3.1-py3-none-any.whl (12.2 kB view details)

Uploaded Python 3

File details

Details for the file girepo-0.3.1.tar.gz.

File metadata

  • Download URL: girepo-0.3.1.tar.gz
  • Upload date:
  • Size: 8.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.13.0 pkginfo/1.4.2 requests/2.21.0 setuptools/41.2.0 requests-toolbelt/0.9.1 tqdm/4.28.1 CPython/3.7.1

File hashes

Hashes for girepo-0.3.1.tar.gz
Algorithm Hash digest
SHA256 7c52f29331971cf57da6a0df8a4923694357448c8c81e7b11ce6dfb4d469e9d7
MD5 9d9af3d5008f3d7fde957d04f2d6e721
BLAKE2b-256 f06b1541fd01ab7297cf0cf8a5efa9bb6b1df523b2c121f974133d80882c00f8

See more details on using hashes here.

File details

Details for the file girepo-0.3.1-py3-none-any.whl.

File metadata

  • Download URL: girepo-0.3.1-py3-none-any.whl
  • Upload date:
  • Size: 12.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.13.0 pkginfo/1.4.2 requests/2.21.0 setuptools/41.2.0 requests-toolbelt/0.9.1 tqdm/4.28.1 CPython/3.7.1

File hashes

Hashes for girepo-0.3.1-py3-none-any.whl
Algorithm Hash digest
SHA256 674214f5c6dac33cec0e1d1ac6b39861d7952b1693e63420e98bdac21138c51d
MD5 b534cee4e46514938158fa6293254335
BLAKE2b-256 1cfef66cc68c145d82a0f0ad4fab4fbf1ce620a519b3bd676ebbab011a766432

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page