trackma


Nametrackma JSON
Version 0.8.6 PyPI version JSON
download
home_pagehttps://z411.github.io/trackma/
SummaryOpen multi-site list manager
upload_time2023-08-17 21:15:11
maintainer
docs_urlNone
authorz411
requires_python>=3.7,<4.0
licenseGPL-3.0-or-later
keywords list manager curses gtk qt myanimelist kitsu anilist shikimori vndb
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            Trackma
=======

Trackma aims to be a lightweight and simple but feature-rich program for Unix based systems
for fetching, updating and using data from personal lists hosted in several media tracking websites.

Features
--------

- Manage local list and synchronize when necessary, useful when offline
- Manage multiple accounts on different media tracking sites
- Support for several media types (as supported by the site)
- Multiple user interfaces (Qt, GTK, curses, command-line)
- Detection of running media player, updates list if necessary
- Ability to launch media player for a requested media in the list and update list if necessary
- Highly scalable, easy to code new interfaces and support for other sites
- Secure, uses HTTPS wherever possible.

Currently supported websites
----------------------------

- [Anilist](https://anilist.co/) (Anime, Manga)
- [Kitsu](https://kitsu.io/) (Anime, Manga, Drama)
- [MyAnimeList](https://myanimelist.net/) (Anime, Manga)
- [Shikimori](http://shikimori.org/) (Anime, Manga)
- [VNDB](https://vndb.org/) (VNs)

Screenshots
-----------

Qt interface

![Qt](https://z411.github.io/trackma/images/screen_qt.png)

GTK interface

![GTK](https://z411.github.io/trackma/images/screen_gtk.png)

Curses interface

![Curses](https://z411.github.io/trackma/images/screen_curses.png)

CLI

![CLI](https://z411.github.io/trackma/images/screen_cli.png)

Dependencies
------------

The only required dependency to run Trackma is:

- Python 3.7+
- `python3-pip` (to install through `pip`) *or* `python3-poetry` (to install through `poetry`)

But only basic features will work (only CLI interface and no tracker). Everything else is optional.

The following user interfaces are available and their requirements are as follows:

| UI | Dependencies |
| --- | --- |
| Qt | PyQt5 (`python-pyqt5`) |
| GTK 3 | PyGI (`python3-gi` and `python3-cairo`) |
| curses | Urwid (`python3-urwid`) |
| CLI | None |

The following media recognition trackers are available and their requirements are as follows:

| Tracker | Description | Dependencies |
| --- | --- | --- |
| inotify | Instant, but only supported in Linux. Uses it whenever possible. | `inotify` *or* `pyinotify` |
| Polling | Slow, but supported in every POSIX platform. Fallback. | `lsof` |
| Plex | Connects to Plex server. Enabled manually. | None |
| Kodi | Connects to Kodi server. Enabled manually. | None |
| Jellyfin | Connects to Jellyfin server. Enabled manually. | None |
| MPRIS | Connects to running MPRIS capable media players. | `dbus-python` |
| Win32 | Recognition for Windows platforms. | None |

Additional optional dependencies:

- PIL (`python3-pil`) - for showing preview images in the Qt/GTK interfaces.

Installation
------------

Trackma has user-provided packages for several distributions.

- **Arch Linux:** <https://aur.archlinux.org/packages/trackma>, <http://aur.archlinux.org/packages/trackma-git>
- **Fedora:** <https://copr.fedoraproject.org/coprs/dyskette/trackma/>
- **Gentoo Linux:** <http://gpo.zugaina.org/net-misc/trackma>
- **NixOS:** <https://github.com/NixOS/nixpkgs/blob/master/pkgs/tools/misc/trackma/default.nix>
- **Void Linux:** <https://github.com/void-linux/void-packages/blob/master/srcpkgs/trackma/template>

A user from the community also is providing a Docker image:

- **Docker:** <https://hub.docker.com/r/frosty5689/trackma/>

### Manual installation

Make sure you've installed the proper dependencies (listed above)
according to the user interface you plan to use, and then run the
following command:

```sh
$ pip3 install Trackma
```

You can also install the git (probably unstable, but newer) version like this:

```sh
$ pip3 install -U git+https://github.com/z411/trackma.git
```

Or download the source code and install:

```sh
$ git clone --recursive https://github.com/z411/trackma.git
$ cd trackma
$ poetry build
$ pip3 install dist/trackma-0.8.5-py3-none-any.whl
```

### Extras (User Interfaces)

All user interfaces except for the default CLI mode require additional dependencies to function.
You may specify these as "extras" to be installed by the Python package manager.

The following extras are available:

| Extra | Description |
| --- | --- |
| `gtk` | The GTK interface. |
| `qt` | The GTK interface. |
| `curses` | The curses-based TUI. |
| `ui` | All user interfaces. |
| `trackers` | All tracker libraries. |
| `discord_rpc` | Set your watching activity in Discord. |
| `twitter` | Announce your watching activity on Twitter. |

If you want to install any of the extras be sure to specify them during installation:

#### pip

```sh
# With pip
$ pip3 install Trackma[gtk,trackers,curses]
$ pip3 install Trackma[ui,twitter,discord_rpc]
```

Note that pip does not have a way to install all available extras,
so you'll have to provide them all manually if desired.

Then you can run the program with the interface you like.

```sh
$ trackma
$ trackma-curses
$ trackma-gtk
$ trackma-qt
```

#### poetry

When using poetry on the cloned repository (see above),
you can install your desired extras as follows:

```sh
$ poetry install -E gtk -E trackers -E curses
$ poetry install -E ui -E twitter -E discord_rpc
$ poetry install --all-extras
```

Then you can run the interface you like in your virtual environment managed by poetry:

```sh
$ poetry run trackma
$ poetry run trackma-curses
$ poetry run trackma-gtk
$ poetry run trackma-qt
```

Configuration
-------------

A configuration file will be created in `~/.config/trackma/config.json`, make sure to fill in the directory
where you store your video files and other settings. Details about what each option does can be done here:

<https://github.com/z411/trackma/wiki/Configuration-File>

Alternatively, the GTK and Qt interfaces provide a visual Settings panel.

Development
-----------

The code is hosted as a git repository on [GitHub](https://github.com/z411/trackma).

Clone the repo and create the virtual environment using `poetry`:

```sh
$ git clone --recursive https://github.com/z411/trackma.git
$ cd trackma
$ poetry install --all-extras
$ poetry shell
```

Use the above commands from the [poetry](#poetry) section
for how to run your desired interface.

If you encounter any problems or have anything to suggest, please don't
hesitate to submit an issue in the GitHub [issue tracker](https://github.com/z411/trackma/issues).

License
-------

Trackma is licensed under the GPLv3 license, please see [LICENSE](../COPYING) for details.

Authors
-------

Trackma was originally written by z411 <z411@omaera.org>. For other contributors see AUTHORS file. GTK icon designed by shuuichi.

            

Raw data

            {
    "_id": null,
    "home_page": "https://z411.github.io/trackma/",
    "name": "trackma",
    "maintainer": "",
    "docs_url": null,
    "requires_python": ">=3.7,<4.0",
    "maintainer_email": "",
    "keywords": "list manager,curses,gtk,qt,myanimelist,kitsu,anilist,shikimori,vndb",
    "author": "z411",
    "author_email": "z411@omaera.org",
    "download_url": "https://files.pythonhosted.org/packages/75/a7/e3f80eeac2898e245bf9c193302d485d45d1f28664eb48d5b3e0661287b7/trackma-0.8.6.tar.gz",
    "platform": null,
    "description": "Trackma\n=======\n\nTrackma aims to be a lightweight and simple but feature-rich program for Unix based systems\nfor fetching, updating and using data from personal lists hosted in several media tracking websites.\n\nFeatures\n--------\n\n- Manage local list and synchronize when necessary, useful when offline\n- Manage multiple accounts on different media tracking sites\n- Support for several media types (as supported by the site)\n- Multiple user interfaces (Qt, GTK, curses, command-line)\n- Detection of running media player, updates list if necessary\n- Ability to launch media player for a requested media in the list and update list if necessary\n- Highly scalable, easy to code new interfaces and support for other sites\n- Secure, uses HTTPS wherever possible.\n\nCurrently supported websites\n----------------------------\n\n- [Anilist](https://anilist.co/) (Anime, Manga)\n- [Kitsu](https://kitsu.io/) (Anime, Manga, Drama)\n- [MyAnimeList](https://myanimelist.net/) (Anime, Manga)\n- [Shikimori](http://shikimori.org/) (Anime, Manga)\n- [VNDB](https://vndb.org/) (VNs)\n\nScreenshots\n-----------\n\nQt interface\n\n![Qt](https://z411.github.io/trackma/images/screen_qt.png)\n\nGTK interface\n\n![GTK](https://z411.github.io/trackma/images/screen_gtk.png)\n\nCurses interface\n\n![Curses](https://z411.github.io/trackma/images/screen_curses.png)\n\nCLI\n\n![CLI](https://z411.github.io/trackma/images/screen_cli.png)\n\nDependencies\n------------\n\nThe only required dependency to run Trackma is:\n\n- Python 3.7+\n- `python3-pip` (to install through `pip`) *or* `python3-poetry` (to install through `poetry`)\n\nBut only basic features will work (only CLI interface and no tracker). Everything else is optional.\n\nThe following user interfaces are available and their requirements are as follows:\n\n| UI | Dependencies |\n| --- | --- |\n| Qt | PyQt5 (`python-pyqt5`) |\n| GTK 3 | PyGI (`python3-gi` and `python3-cairo`) |\n| curses | Urwid (`python3-urwid`) |\n| CLI | None |\n\nThe following media recognition trackers are available and their requirements are as follows:\n\n| Tracker | Description | Dependencies |\n| --- | --- | --- |\n| inotify | Instant, but only supported in Linux. Uses it whenever possible. | `inotify` *or* `pyinotify` |\n| Polling | Slow, but supported in every POSIX platform. Fallback. | `lsof` |\n| Plex | Connects to Plex server. Enabled manually. | None |\n| Kodi | Connects to Kodi server. Enabled manually. | None |\n| Jellyfin | Connects to Jellyfin server. Enabled manually. | None |\n| MPRIS | Connects to running MPRIS capable media players. | `dbus-python` |\n| Win32 | Recognition for Windows platforms. | None |\n\nAdditional optional dependencies:\n\n- PIL (`python3-pil`) - for showing preview images in the Qt/GTK interfaces.\n\nInstallation\n------------\n\nTrackma has user-provided packages for several distributions.\n\n- **Arch Linux:** <https://aur.archlinux.org/packages/trackma>, <http://aur.archlinux.org/packages/trackma-git>\n- **Fedora:** <https://copr.fedoraproject.org/coprs/dyskette/trackma/>\n- **Gentoo Linux:** <http://gpo.zugaina.org/net-misc/trackma>\n- **NixOS:** <https://github.com/NixOS/nixpkgs/blob/master/pkgs/tools/misc/trackma/default.nix>\n- **Void Linux:** <https://github.com/void-linux/void-packages/blob/master/srcpkgs/trackma/template>\n\nA user from the community also is providing a Docker image:\n\n- **Docker:** <https://hub.docker.com/r/frosty5689/trackma/>\n\n### Manual installation\n\nMake sure you've installed the proper dependencies (listed above)\naccording to the user interface you plan to use, and then run the\nfollowing command:\n\n```sh\n$ pip3 install Trackma\n```\n\nYou can also install the git (probably unstable, but newer) version like this:\n\n```sh\n$ pip3 install -U git+https://github.com/z411/trackma.git\n```\n\nOr download the source code and install:\n\n```sh\n$ git clone --recursive https://github.com/z411/trackma.git\n$ cd trackma\n$ poetry build\n$ pip3 install dist/trackma-0.8.5-py3-none-any.whl\n```\n\n### Extras (User Interfaces)\n\nAll user interfaces except for the default CLI mode require additional dependencies to function.\nYou may specify these as \"extras\" to be installed by the Python package manager.\n\nThe following extras are available:\n\n| Extra | Description |\n| --- | --- |\n| `gtk` | The GTK interface. |\n| `qt` | The GTK interface. |\n| `curses` | The curses-based TUI. |\n| `ui` | All user interfaces. |\n| `trackers` | All tracker libraries. |\n| `discord_rpc` | Set your watching activity in Discord. |\n| `twitter` | Announce your watching activity on Twitter. |\n\nIf you want to install any of the extras be sure to specify them during installation:\n\n#### pip\n\n```sh\n# With pip\n$ pip3 install Trackma[gtk,trackers,curses]\n$ pip3 install Trackma[ui,twitter,discord_rpc]\n```\n\nNote that pip does not have a way to install all available extras,\nso you'll have to provide them all manually if desired.\n\nThen you can run the program with the interface you like.\n\n```sh\n$ trackma\n$ trackma-curses\n$ trackma-gtk\n$ trackma-qt\n```\n\n#### poetry\n\nWhen using poetry on the cloned repository (see above),\nyou can install your desired extras as follows:\n\n```sh\n$ poetry install -E gtk -E trackers -E curses\n$ poetry install -E ui -E twitter -E discord_rpc\n$ poetry install --all-extras\n```\n\nThen you can run the interface you like in your virtual environment managed by poetry:\n\n```sh\n$ poetry run trackma\n$ poetry run trackma-curses\n$ poetry run trackma-gtk\n$ poetry run trackma-qt\n```\n\nConfiguration\n-------------\n\nA configuration file will be created in `~/.config/trackma/config.json`, make sure to fill in the directory\nwhere you store your video files and other settings. Details about what each option does can be done here:\n\n<https://github.com/z411/trackma/wiki/Configuration-File>\n\nAlternatively, the GTK and Qt interfaces provide a visual Settings panel.\n\nDevelopment\n-----------\n\nThe code is hosted as a git repository on [GitHub](https://github.com/z411/trackma).\n\nClone the repo and create the virtual environment using `poetry`:\n\n```sh\n$ git clone --recursive https://github.com/z411/trackma.git\n$ cd trackma\n$ poetry install --all-extras\n$ poetry shell\n```\n\nUse the above commands from the [poetry](#poetry) section\nfor how to run your desired interface.\n\nIf you encounter any problems or have anything to suggest, please don't\nhesitate to submit an issue in the GitHub [issue tracker](https://github.com/z411/trackma/issues).\n\nLicense\n-------\n\nTrackma is licensed under the GPLv3 license, please see [LICENSE](../COPYING) for details.\n\nAuthors\n-------\n\nTrackma was originally written by z411 <z411@omaera.org>. For other contributors see AUTHORS file. GTK icon designed by shuuichi.\n",
    "bugtrack_url": null,
    "license": "GPL-3.0-or-later",
    "summary": "Open multi-site list manager",
    "version": "0.8.6",
    "project_urls": {
        "Homepage": "https://z411.github.io/trackma/",
        "Repository": "https://github.com/z411/trackma"
    },
    "split_keywords": [
        "list manager",
        "curses",
        "gtk",
        "qt",
        "myanimelist",
        "kitsu",
        "anilist",
        "shikimori",
        "vndb"
    ],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "05b25130c433ad206f188e632a9735d5bebfbfdcd5eee0f7cfa62e4d82170d69",
                "md5": "a0ae3d929e395cdb89ac6c8038142f1f",
                "sha256": "596035d6591ddc3c4bcd99471cccef6ad5ccd933944bcf2972f7322fc508e3d0"
            },
            "downloads": -1,
            "filename": "trackma-0.8.6-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "a0ae3d929e395cdb89ac6c8038142f1f",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.7,<4.0",
            "size": 280751,
            "upload_time": "2023-08-17T21:15:08",
            "upload_time_iso_8601": "2023-08-17T21:15:08.696497Z",
            "url": "https://files.pythonhosted.org/packages/05/b2/5130c433ad206f188e632a9735d5bebfbfdcd5eee0f7cfa62e4d82170d69/trackma-0.8.6-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "75a7e3f80eeac2898e245bf9c193302d485d45d1f28664eb48d5b3e0661287b7",
                "md5": "fd2bfe8807e970b685ac4071ccf9fd0c",
                "sha256": "d07be736fd4cc2d279fc69070906acebac3422b9d286f40203e89f43b669ded0"
            },
            "downloads": -1,
            "filename": "trackma-0.8.6.tar.gz",
            "has_sig": false,
            "md5_digest": "fd2bfe8807e970b685ac4071ccf9fd0c",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.7,<4.0",
            "size": 224739,
            "upload_time": "2023-08-17T21:15:11",
            "upload_time_iso_8601": "2023-08-17T21:15:11.299599Z",
            "url": "https://files.pythonhosted.org/packages/75/a7/e3f80eeac2898e245bf9c193302d485d45d1f28664eb48d5b3e0661287b7/trackma-0.8.6.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2023-08-17 21:15:11",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "z411",
    "github_project": "trackma",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": false,
    "lcname": "trackma"
}
        
Elapsed time: 0.20419s