Skip to main content

An open source reference management tool developed in PyQt5 and Python3.

Project description

MeiTing Trunk

An open source reference management tool developed in PyQt5 and Python3.

Features

Libraries

  • Create, manage and switch between multiple libraries.

Folders

  • Oragnize documents in a folder tree, with arbitrary level of folder nesting.
  • Add a document to multiple folders without taking up duplicate storage.

Import format

  • Import via bibtex files.
  • Import via RIS files.
  • Import PDF files (currently with limited meta data fetching capability).
  • Update meta data using DOI.

Export format

  • Export to bibtex.
  • Export to RIS.
  • Bulk export, per folder, or per document.

Searching and filtering

  • Filter document using authors, keywords, tags or publications.
  • Search meta data within folders or library.
  • Duplicate checking within folders or library.

Note taking

  • Jot down your thoughts while reading, in your referred editor. (currently with limited formating options).

Database

  • Meta data saved in sqlite format, transparent and easy to manipulate.
  • library saved in a portable manner, backup or share using your prefered online/offline tools.

Full text search (experimental)

  • Utilises Xapian engine to enable full text search inside attachment files (including PDFs, docs etc.).

PDF preview and reader

  • Use pdf.js as a build-in PDF reader.
  • Use poppler to generate PDF thumbnails.

Free and open source

  • Open to suggestions, bug reports and new ideas.

Screenshots

Main interface

Bulk export.

Duplicate checking results.

Merge duplicates.

Meta data searching.

Full text search.

Actions on documents.

Merge inconsistent journal names

Platforms and Dependencies

Currently only support Linux and MacOS.

Python dependencies

  • python3+
  • PyQt5>=5.12
  • PyQtWebEngine (this is no longer shipped with PyQt5 after 5.11)
  • sqlite3
  • pdfminer.six
  • PyPDF2
  • beautifulsoup4
  • bibtexparser
  • fuzzywuzzy
  • crossrefapi
  • RISparser
  • send2trash
  • python-levenshtein (optional)

Other dependencies

  • xapian-core, xapian-omega and the python bindings of xapian (all optional), required for full text searching. See https://xapian.org/docs/install.html for installation instructions. Also checkout the wiki page on how to enable snippets.

  • poppler (optional), used for generating PDF thumbnails.

Install

install using pip

pip install meitingtrunk

Then launch it in the terminal with

$ meitingtrunk

To upgrade:

pip install --upgrade meitingtrunk

Manual install

You can clone this repo

git clone https://github.com/Xunius/MeiTingTrunk

Check out the dependency list if any module is missing in your python environment.

Then launch it with

$ cd MeiTingTrunk
$ python -m MeiTingTrunk.main

Contribution

This software is still in its very early stage. Please consider helping by trying it out, sending issues, suggestions, ideas or contributing code.

Major features that are still lacking (I greatly appreciate any help with any of them):

  • Format citations into various citation styles, in a format suitable to paste into word editors.
  • Import from Zotero.
  • Other document types aside articles and books.
  • Packaging into a format suitable for a few mainstream Linux package management tools.
  • Of cource, any stability or performance improvements.

Licence

This file is distributed under the terms of the GPLv3 licence. See the LICENSE file for details. You may use, distribute and modify this code under the terms of the GPLv3 license.

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

meitingtrunk-0.1b1.tar.gz (4.7 MB view details)

Uploaded Source

Built Distribution

meitingtrunk-0.1b1-py3-none-any.whl (5.2 MB view details)

Uploaded Python 3

File details

Details for the file meitingtrunk-0.1b1.tar.gz.

File metadata

  • Download URL: meitingtrunk-0.1b1.tar.gz
  • Upload date:
  • Size: 4.7 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.13.0 pkginfo/1.5.0.1 requests/2.21.0 setuptools/40.8.0 requests-toolbelt/0.9.1 tqdm/4.31.1 CPython/3.6.8

File hashes

Hashes for meitingtrunk-0.1b1.tar.gz
Algorithm Hash digest
SHA256 d78d6fa0e98f1a5d802a80c3d1540ed566d595a7410f53a4ef4cd0c0bcb8de1e
MD5 ef13de1b778436f662a832519dbdd4fc
BLAKE2b-256 323a8792389b664fbacf9000a4af896ca42d086cd41263a5a1ab37230f584568

See more details on using hashes here.

File details

Details for the file meitingtrunk-0.1b1-py3-none-any.whl.

File metadata

  • Download URL: meitingtrunk-0.1b1-py3-none-any.whl
  • Upload date:
  • Size: 5.2 MB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.13.0 pkginfo/1.5.0.1 requests/2.21.0 setuptools/40.8.0 requests-toolbelt/0.9.1 tqdm/4.31.1 CPython/3.6.8

File hashes

Hashes for meitingtrunk-0.1b1-py3-none-any.whl
Algorithm Hash digest
SHA256 aa2b9086d31946d63700cc7cbd9c19d47d9cdca7bf40d673afbb53f2020140d7
MD5 d89133a3bf6c95899aed5c5cb23f8255
BLAKE2b-256 7fddccf77096e6a1dbef0d5ace117484561db902d1e7166e3870ccbcdc19d81f

See more details on using hashes here.

Supported by

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