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
-a, --alfred Format search result as Alfred XML
-3, --alfred3 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 --install -3
```
or for Alfred v2.x
```sh
$ mystars --install
```

### Change logs

##### 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.

Files for oh-my-stars, version 1.4.7
Filename, size File type Python version Upload date Hashes
Filename, size oh_my_stars-1.4.7-py2.py3-none-any.whl (11.5 kB) File type Wheel Python version py2.py3 Upload date Hashes View
Filename, size oh-my-stars-1.4.7.tar.gz (20.8 kB) File type Source Python version None Upload date Hashes View

Supported by

Pingdom Pingdom Monitoring Google Google Object Storage and Download Analytics Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN DigiCert DigiCert EV certificate StatusPage StatusPage Status page