Skip to main content

It's like Badgie but for tags!

Project description

taggie 🖍️

pipeline status coverage report latest release pre-commit cici enabled code style: prettier

Assign tags to repositories based on their contents.

About

taggie tags things. It's what it does.

taggie is built as a standalone tool to be integrated into a larger toolchain for analyzing and acting on project contents.

Installation

python3 -m pip install taggie

Usage

Use the default tags

Run taggie with no options to use the default collection of tag files bundled with the application:

taggie
$ taggie
TOTAL    NAME              EXAMPLE
243      yaml              marp/.gitlab-ci.yml
52       markdown          container/README.md
15       opentofu          opentofu/outputs.tf
11       jinja             container/.cici/README.md.j2
9        python            python/examples/dynamic-version/python_pipeline/__init__.py
6        toml              python/examples/dynamic-version/pyproject.toml
3        html              zola/templates/index.html
1        restructuredtext  sphinx/docs/index.rst
1        css               marp/style.css

Use your own tags

Define a set of tagging rules in YAML files we like to call "tag files":

# jinja.yaml
- type: file.extension
  tags:
    - jinja
  extensions:
    - j2

The syntax is a little verbose, but that's because we want to make the tagging components pluggable.

Run taggie with the -t/--tag-file option to specify your tag files. A directory can also be passed. -t/--tag-file can be specified as many times as needed:

taggie -t jinja.yaml
$ taggie -t jinja.yaml
TOTAL    NAME    EXAMPLE
11       jinja   gitlab/.cici/README.md.j2

License

Copyright 2025 UL Research Institutes.

Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the 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

taggie-0.4.1.tar.gz (14.2 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

taggie-0.4.1-py3-none-any.whl (23.1 kB view details)

Uploaded Python 3

File details

Details for the file taggie-0.4.1.tar.gz.

File metadata

  • Download URL: taggie-0.4.1.tar.gz
  • Upload date:
  • Size: 14.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.2.0 CPython/3.11.13

File hashes

Hashes for taggie-0.4.1.tar.gz
Algorithm Hash digest
SHA256 246511ab5686d8e99bc022e1e88ca31b51189f19cadc1a65443416f1cc06bae5
MD5 cea15507edeb95479935d3192ea803c4
BLAKE2b-256 d544fb43a467974dd98ee6aaed5be50fe1572fca51cade90b6ddd0a9167e0be4

See more details on using hashes here.

File details

Details for the file taggie-0.4.1-py3-none-any.whl.

File metadata

  • Download URL: taggie-0.4.1-py3-none-any.whl
  • Upload date:
  • Size: 23.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.2.0 CPython/3.11.13

File hashes

Hashes for taggie-0.4.1-py3-none-any.whl
Algorithm Hash digest
SHA256 7197def8552b3d7ac30655a38a20e4943bbbffa3f6332017e615b6bdb0859d50
MD5 cc54cd512f74b02e14de23a6128795f8
BLAKE2b-256 5477ccb5bb89d5cb9ce1971a9e3b0aed1623f798a32a04f0bd61874322b0967b

See more details on using hashes here.

Supported by

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