Skip to content

Commit

Permalink
Packe ready for release(d)
Browse files Browse the repository at this point in the history
  • Loading branch information
v-i-s-h committed Oct 30, 2022
1 parent 5ee9059 commit ea470fc
Show file tree
Hide file tree
Showing 3 changed files with 47 additions and 25 deletions.
69 changes: 45 additions & 24 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,45 +1,72 @@
# neozot
neozot is a utility to get recommendations from arxiv based on your zotero library.

![as](./imgs/neozot.png)
![neozot](./imgs/neozot.png)

neozot will list the matching preprints from arxiv along with the closest match it
found in your zotero library and the score. By default, it lists 20 top suggestions.
## Install
### Using PyPI
```
pip install neozot
```

### From repository
1. Clone this repository using
```
git clone https://github.com/v-i-s-h/neozot-py.git
```
2. Install using
```bash
pip install .
```
3. If you want to install in developer/editable mode,
```
pip install -e .
```

## Usage
To run neozot, you can
```
python -m neozot
```
#### First run
On first run, you are required to provide the path of Zotero data directory as
```
usage: neozot [-h] [-d DOMAINS [DOMAINS ...]] [-f] datadir
python -m --zotdir <path-to-zotero-data-dir>
```
Example:
```
python -m neozot --zotdir ~/Zotero/
```
Same can all be used to change the path to Zotero data directory later.

Super charge your research
Additionally, neozot can also be configured with a couple of options through CLI.
Full command line options are
```
usage: neozot [-h] [--zotdir ZOTDIR] [-d DOMAINS [DOMAINS ...]] [--n-items N_ITEMS] [-f]
positional arguments:
datadir Data directory of Zotero
Super charge your research
options:
-h, --help show this help message and exit
--zotdir ZOTDIR Data directory of Zotero
-d DOMAINS [DOMAINS ...], --domains DOMAINS [DOMAINS ...]
arxiv domain(s) to search in (Ex: cs.LG cs.CV cs.AI or high level as cs, math etc)
--n-items N_ITEMS Number of items to suggest by default
-f, --force-refresh
```
Example
Examples

1. If you zotero library is in `~/Zotero/` (directory where `zotero.sqlite` is stored) and you
want to get arxiv recommendations from `cs` domain, then use
```bash
python -m neozot ~/Zotero/ -d cs
```
OR
want to get arxiv recommendations from `cs` and `math` domains, then use
```bash
python -m neozot ~/Zotero/
python -m neozot --zotdir ~/Zotero/ -d cs math
```
2. If you only want results from `cs.AI` and `cs.LG`, use
```bash
python -m neozot ~/Zotero/ -d cs.AI cs.LG
python -m neozot --zotdir ~/Zotero/ -d cs.AI cs.LG
```

By default, neozot will suggest top 5 items from `cs` domain. You can adjust this
by using `Settings` from the sidebar.

The options in UI sidebar are
|Icon|Description|
|:-|:-|
Expand All @@ -49,9 +76,3 @@ The options in UI sidebar are
|<img src="https://raw.githubusercontent.com/FortAwesome/Font-Awesome/6.x/svgs/brands/github.svg" width="24" height="24">|**Github**: Visit github repo|
|<img src="https://raw.githubusercontent.com/FortAwesome/Font-Awesome/6.x/svgs/solid/gears.svg" width="24" height="24">|**Settings**: Select arxiv domains to follow, number of items to suggest etc|

## Requirements
1. [eel](https://pypi.org/project/Eel/) (>= 0.14.0)
2. [scikit-learn](https://pypi.org/project/scikit-learn/) (>= 1.0.1)
3. [requests](https://pypi.org/project/requests/) (>= 2.27.1)

PS: Version suggestions are verions against which neozot is developed.
1 change: 1 addition & 0 deletions requirements.txt
Original file line number Diff line number Diff line change
Expand Up @@ -3,3 +3,4 @@ eel==0.14.0
numpy==1.23.4
requests==2.27.1
scikit_learn==1.1.3
setuptools==61.2.0
2 changes: 1 addition & 1 deletion setup.py
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@

setup(
name='neozot',
version='0.0.4',
version='0.0.5',
author='Vishnu Raj',
author_email='[email protected]',
url='https://github.com/v-i-s-h/neozot-py/',
Expand Down

0 comments on commit ea470fc

Please sign in to comment.