Skip to main content
* filetagslib

This is a utility library for providing functions related to the
[[https://github.com/novoid/filetags][filetags method]] which is also described [[https://karl-voit.at/managing-digital-photographs/][on this blog entry]].

If you do support its file name convention, you might find here some
valuable tools:

: (<ISO date/time stamp>)?(?<descriptive file name>)?( -- <list of tags separated by spaces>)?.<file extension>

Examples:

: 2019-12-14T11.28.44 Dinner for one -- fun silvester anniversary.mpeg
: 2019-12-14 Tax returns.pdf
: 2019-12-14T15.32 Book for mum 23€ -- bill books.png
: 2019-12-13T10.36.46.jpg
: 2019-10-30T22.19.32 Nata de Coco -- food acquisition.jpg

** Installation

This library needs [[http://www.python.org/downloads/][Python 3]] (version 3.8 or newer) and has
*no runtime dependencies*.

The recommended way to add it to your own project is with [[https://docs.astral.sh/uv/][uv]]:

: uv add filetagslib

This records filetagslib in the =[project.dependencies]= of your
project's =pyproject.toml= and installs it into the project's
environment.

Alternatively, you can install it into the current environment with pip
(optionally driven by uv):

: uv pip install filetagslib

: pip3 install filetagslib

# --- BEGIN SHARED: 0dependencies --- see https://github.com/novoid/screencasts/
[[https://0dependencies.dev][https://0dependencies.dev/0dependencies.svg]] → [[https://0dependencies.dev/][learn more about 0dependencies]]
# --- END SHARED: 0dependencies --- see https://github.com/novoid/screencasts/

** Development

This project is managed with [[https://docs.astral.sh/uv/][uv]]. After cloning the repository,
create the development environment (this sets up a local =.venv= and
installs the development dependencies such as pytest) with:

: uv sync

Run the unit tests with:

: uv run pytest

or via the convenience wrapper:

: ./run_unit_tests.sh

Build the source distribution and the wheel into =./dist/= with:

: uv build

** Changelog

This changelog does not list all commits/changes, just the substantial
ones.

- 2019-12-14: initial version
- 2026-06-06: migrated packaging from =setup.py= to uv / =pyproject.toml=

*** How to Thank Me and Contribute to the Project
# --- BEGIN SHARED: how_to_thank_me --- see https://github.com/novoid/screencasts/

I'm glad if you like my tool. I've got way more projects on:

- [[https://github.com/novoid/][GitHub]] (oldest projects),
- [[https://gitlab.com/publicvoit/][GitLab.com]] (older projects), and
- [[https://codeberg.org/publicvoit/][Codeberg]] (newest projects).

If you want to support me:

- [[https://karl-voit.at/2018/06/07/cardware/][Send old-fashioned *postcard* per snailmail]] - I love personal feedback!
- see [[http://tinyurl.com/j6w8hyo][my address]]
- Send feature wishes or improvements as an issue
- Create issues for bugs
- Contribute merge requests for bug fixes
- Check out my other cool projects on the platforms above

If you want to contribute to this cool project, please fork and
contribute!

I am using [[http://www.python.org/dev/peps/pep-0008/][Python PEP8]] and occasionally some ideas from [[http://en.wikipedia.org/wiki/Test-driven_development][Test Driven
Development (TDD)]]. I fancy Python3 with [[https://typing.python.org/en/latest/spec/annotations.html][type annotations]], although I'm
not using them everywhere at the moment. Starting with 2025, I began
to use help from Claude.ai which is a huge improvement, given my lack
of programming practice and knowledge.

After all, each of my tools was developed because I needed its
functionality and could not get it elsewhere - at least to my
knowledge or taste.

# --- END SHARED: how_to_thank_me --- see https://github.com/novoid/screencasts/

* Local Variables :noexport:
# Local Variables:
# mode: auto-fill
# mode: flyspell
# eval: (ispell-change-dictionary "en_US")
# End:

Release files for filetagslib 2026.6.6.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for filetagslib 2026.6.6.1
File Size Uploaded
filetagslib-2026.6.6.1.tar.gz 29.6 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for filetagslib 2026.6.6.1
File Interpreter ABI Platform
filetagslib-2026.6.6.1-py3-none-any.whl Python 3 none any Details

Total release size: 49.6 kB

Release files / filetagslib-2026.6.6.1.tar.gz

Download URL filetagslib-2026.6.6.1.tar.gz
Size 29.6 kB
Tags Source
SHA-256 checksum
How to use checksums
5203b813db03667d5ee4aca833212db72f82ab08586d29c42a99013b0f3b659d
BLAKE2b-256 checksum
How to use checksums
f5a8524dc4b532b31077d7fca7fbb13da8204413695160d7114c4f75e5b0bc25
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.9.9 {"installer":{"name":"uv","version":"0.9.9"},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Debian GNU/Linux","version":"13","id":"trixie","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

Release files / filetagslib-2026.6.6.1-py3-none-any.whl

Download URL filetagslib-2026.6.6.1-py3-none-any.whl
Size 20.0 kB
Tags Python 3
SHA-256 checksum
How to use checksums
19418bd38627c8052b4d7d176cbe1c73c7551b5e4cd88991c18fba6039598f57
BLAKE2b-256 checksum
How to use checksums
adb85d923e7efce361201dfe147c980d072c91de26f1e08a8a8955e1519dc984
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.9.9 {"installer":{"name":"uv","version":"0.9.9"},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Debian GNU/Linux","version":"13","id":"trixie","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}

Release history Release notifications | RSS feed

This release

2026.6.6.1 This release

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page