Skip to main content

File organization made easy using tags

Project description

HyperTag

File organization made easy. HyperTag let's the user express intuitively how they think about their files using tags.

Install

Currently there is no easy install available. Gotta clone this repo.

Install packages: $ python -m pip install fire tqdm filetype

Setup alias: alias hypertag='python your/clone/path/hypertag/hypertag/hypertag.py'

Quickstart

HyperTag offers a slick CLI but more importantly it creates a directory called HyperTagFS which is a file system based representation of your files and tags using symbolic links and directories. HyperTag recognizes a multitude of file types and groups them automatically together into folders, which can be found in HyperTagFS.

CLI Functions

Set HyperTagFS directory path

Default is the user's home directory.

$ hypertag set_hypertagfs_dir path/to/directory

Import existing directory recursively

Import files with tags inferred from existing directory hierarchy

$ hypertag import path/to/directory

Tag file/s

Manually tag files

$ hypertag tag humans/*.txt with human "Homo Sapiens"

Tag a tag

Metatag tag/s to create tag hierarchies

$ hypertag metatag human with animal

Merge tags

Merges all associations (files & tags) of tag_a into tag_b

$ hypertag merge human into "Homo Sapiens"

Query using Set Theory

Prints file names matching the query. Nesting is currently not supported, queries are evaluated from left to right.

Default operand is AND (intersection):
$ hypertag query human "Homo Sapiens"

OR (union):
$ hypertag query human or "Homo Sapiens"

MINUS (difference):
$ hypertag query human minus "Homo Sapiens"

Print all tags

$ hypertag show

Print all files

$ hypertag show files

Architecture

  • Python 3.9 powers HyperTag
  • SQLite3 serves as the meta data storage engine
  • Symbolic links are used to create the HyperTagFS directory structure

Inspiration

This project is inspired by other existing open-source projects:

What is the point of HyperTag's existence? HyperTag offers some unique features such as the import function that make it very convenient to use. Also HyperTag's code base is written in Python and thus extremely small (<500 LOC) compared to TMSU (>10,000 LOC) and SuperTag (>25,000 LOC), making it very easy to modify / extend / fix it yourself.

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

hypertag-0.1.1.tar.gz (7.4 kB view details)

Uploaded Source

Built Distribution

hypertag-0.1.1-py3-none-any.whl (7.9 kB view details)

Uploaded Python 3

File details

Details for the file hypertag-0.1.1.tar.gz.

File metadata

  • Download URL: hypertag-0.1.1.tar.gz
  • Upload date:
  • Size: 7.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.1.4 CPython/3.9.1 Linux/5.9.14-arch1-1

File hashes

Hashes for hypertag-0.1.1.tar.gz
Algorithm Hash digest
SHA256 e3cf8bc596e4debd341e10859a64fca3bfb786a07214f5a02c5c887b91e61da1
MD5 38231f1a5cf4a233cf51a0b9eaaaa3d3
BLAKE2b-256 6fdfc51b1598083b8068260b07ba44de9140419126f903d54b6da06d7a58a768

See more details on using hashes here.

File details

Details for the file hypertag-0.1.1-py3-none-any.whl.

File metadata

  • Download URL: hypertag-0.1.1-py3-none-any.whl
  • Upload date:
  • Size: 7.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.1.4 CPython/3.9.1 Linux/5.9.14-arch1-1

File hashes

Hashes for hypertag-0.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 74b8a607bfc2d096bda98b05a3344a4f9410911e0bd36f0823340e3578807d3e
MD5 dc5e0128a2574b45d55d75ae2cf72080
BLAKE2b-256 68b0fa2fd38789fe8804e10367f54e2a885e718c11b61581916825e684b18ddb

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