Skip to main content

a CLI tool to search your GitHub stars.

Project description

# oh-my-stars

Search your stars locally.

```
usage: mystars [-h] [-l LANGUAGE [LANGUAGE ...]] [-u] [-r] [-a] [-3] [-i]
[-v]
[keywords [keywords ...]]

a CLI tool to search your starred Github repositories.

positional arguments:
keywords Search by keywords

optional arguments:
-h, --help show this help message and exit
-l LANGUAGE [LANGUAGE ...], --language LANGUAGE [LANGUAGE ...]
Filter by language
-u, --update Create(first time) or update the local stars index
-r, --reindex Re-create the local stars index
-c WHEN, --color WHEN
Colorize the output; WHEN can be 'always' (default if
omitted), 'auto', or 'never'
-a, --alfred Format search result as Alfred Script Filter output
-3, --three Alfred 3 support
-i, --install Import Alfred workflow
-v, --version show program's version number and exit

```

![oh-my-stars](https://raw.github.com/wolfg1969/my-stars-pilot/master/oh-my-stars.png)
##### Works with Alfred Workflow

![oh-my-stars-alfred-workflow](https://raw.github.com/wolfg1969/my-stars-pilot/master/oh-my-stars-alfred-workflow.png)

### Configuration
You can avoid entering your GitHub API credentials every time you update the index, by adding them to the ``~/.netrc`` file as follows:

```ini
machine api.github.com
login ‹GH_USERNAME›
password ‹GH_API_TOKEN›
```
Use an API token as the password – you can create one via *Settings » Developer settings » Personal access tokens* in the GitHub web interface.

Once you have stored credentials, you can also automate the index update by adding a job with ``crontab -e``:

```sh
# GitHub stars
0 6 * * * ~/.local/bin/mystars -u
```

### Installation (Mac OSX)
```sh
$ pip install oh-my-stars --upgrade --user
$ mystars --help
$ mystars --update
$ mystars angular upload
$ mystars --language python
$ mystars awesome python
```

if install failed, try following commands
```sh
$ pip uninstall distribute
$ pip install setuptools
$ pip install --upgrade setuptools
```

### Integration with Alfred
```sh
$ mystars -i -3
```
For Alfred v2
```sh
$ mystars -i
```

### Change logs

#### v1.5.1
- Fix error 'IOError: [Errno 32] Broken pipe'

##### v1.5.0
- Disable the pagination and add a --color option. Thanks for the suggestions from @jhermann
- Speed up result display with CachingMiddleware of TinyDB

##### v1.4.9
- Fix workflow for Alfred v2

##### v1.4.8
- Fix Alfred XML output
- Rewrite Alfred workflow script

##### v1.4.5
- Drop Python 2.6 Support
- Update docs: using ~/.netrc + cron. @jhermann

##### v1.3.5
- Output Alfred 3 JSON ouput with "-a -3" option.
- Import Alfred Workflow with "-i" (append "-3" for Alfred 3) option.

##### v1.2.3
- Get user + password from netrc. @jhermann.
- Use pipenv to manage project requirements.

##### v1.1.3
- Upgrade to TinyDB 3.7.0.
- Build index when updating.
- Search result pagination.

*Note*
- Uninstall existing version.
- Rebuild existing index with `mystars -r`.

##### v1.0.2
- Rename to oh-my-stars.

##### v1.0.1
- Support Github two-factor authentication. @yanyaoer

##### v1.0.0

- Replace kc with [TinyDB](https://github.com/msiemens/tinydb), no more non-python dependencies.
- Only update stars since last time.


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

oh-my-stars-1.5.1.tar.gz (21.4 kB view details)

Uploaded Source

Built Distribution

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

oh_my_stars-1.5.1-py2.py3-none-any.whl (12.2 kB view details)

Uploaded Python 2Python 3

File details

Details for the file oh-my-stars-1.5.1.tar.gz.

File metadata

  • Download URL: oh-my-stars-1.5.1.tar.gz
  • Upload date:
  • Size: 21.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for oh-my-stars-1.5.1.tar.gz
Algorithm Hash digest
SHA256 da3b7a324f8749f6f865991dae7ccaa5104caef24ee37869fdb57e6053d8668a
MD5 4b891be9cae87a3f1a648da7863c4fb6
BLAKE2b-256 3862f26c0ffa2473f0c33aa7a5fcf971ccd6a34705940a8e0d2942b4c59e0042

See more details on using hashes here.

File details

Details for the file oh_my_stars-1.5.1-py2.py3-none-any.whl.

File metadata

File hashes

Hashes for oh_my_stars-1.5.1-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 e4c15d6c05524489e9f692fafeed0c9b62a76b6a2f001d73420476d355afbc6b
MD5 9387a8e77dce4a3baadcf4bb644740f6
BLAKE2b-256 e6b236176fad33a568157dc0c669822da56baa9854d5c7f91f90ae660bf2e086

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