Skip to main content

Django Tag Me   Release Version

Project Status: Active PyPI - Version PyPI - Python Version PyPI - Versions from Framework Classifiers Documentation Status

Total downloads Monthly downloads Weekly downloads

Simple, flexible tagging for Django.

Add tags to any Django model field -- with a polished widget, per-user tag customization, and automatic resilience to model renames.

Features

  • Easy setup -- Add TagMeCharField to your model and go
  • Beautiful widget -- Searchable dropdown with tag pills, powered by Alpine.js
  • User tags -- Each user gets their own customizable tag set per field
  • System tags -- Define default tags available to all users
  • Tag synchronization -- Keep tags in sync across related models
  • Model rename resilient -- FK-based lookups with automatic orphan detection and repair
  • CLI diagnostics -- Health checks, orphan repair, and built-in troubleshooting via tag_me command
  • Structured logging -- Observability via structlog for production monitoring
  • Form integration -- Drop-in mixin for your model forms
  • Template tags -- Display tags as styled pills

Quick Example

# models.py
from tag_me.models import TagMeCharField

class Article(models.Model):
    tags = TagMeCharField(blank=True)
    category = TagMeCharField(choices=CategoryChoices.choices, system_tag=True)
# forms.py
from tag_me.forms import TagMeModelFormMixin

class ArticleForm(TagMeModelFormMixin, forms.ModelForm):
    class Meta:
        model = Article
        fields = ["tags", "category"]

See the Quickstart for the full setup including templates and frontend requirements.

Widget Preview

Dropdown with tag options

Tag dropdown with options

Search and filter tags

Tag dropdown search functionality

Model Rename Resilience

Rename your Django models without breaking tags. Tag-me uses ContentType foreign keys instead of model name strings, and automatically detects and merges orphaned records during migration.

# Rename your model, then:
python manage.py makemigrations   # answer "yes" to rename prompt
python manage.py migrate          # tag-me handles the rest

# Verify everything is clean:
python manage.py tag_me check

See How to Upgrade to FK Lookup for details on the FK-based system.

Management Command

Tag-me includes a CLI for diagnostics and administration:

python manage.py tag_me populate              # create/update tags
python manage.py tag_me check                 # data integrity audit
python manage.py tag_me fix-orphans --dry-run # preview orphan repair
python manage.py tag_me help                  # built-in documentation

Tag population runs automatically after every migrate. The CLI exists for diagnostics, manual repair, and single-user operations.

See How to Use the Tag-me CLI for the full guide.

Installation

pip install django-tag-me

See the documentation for setup and usage instructions.

Credits

Metadata

Release files for django-tag-me 2026.10.20.4

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

Source distribution (sdist)

Source distribution for django-tag-me 2026.10.20.4
File Size Uploaded Provenance Actions
django_tag_me-2026.10.20.4.tar.gz 220.5 kB Without provenance Details for django_tag_me-2026.10.20.4.tar.gz

Built distribution (wheel)

Table of built distributions (wheels) for django-tag-me 2026.10.20.4
File Interpreter ABI Platform Actions
django_tag_me-2026.10.20.4-py3-none-any.whl Python 3 none any Details for django_tag_me-2026.10.20.4-py3-none-any.whl

Total release size: 334.8 kB

Release files / django_tag_me-2026.10.20.4.tar.gz

Download URL django_tag_me-2026.10.20.4.tar.gz
Size 220.5 kB
Tags Source
SHA-256 checksum
How to use checksums
9d9caa771ec909ba06eb347a5e7cfbc75ad622b94e433fa4a97cbbe6a83ceb6f
BLAKE2b-256 checksum
How to use checksums
7124622c3ca29cd4cbfc1c41d1733de13afc9c9028db620eaf6baa45fc4331b6
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.12.3

Release files / django_tag_me-2026.10.20.4-py3-none-any.whl

Download URL django_tag_me-2026.10.20.4-py3-none-any.whl
Size 114.3 kB
Tags Python 3
SHA-256 checksum
How to use checksums
330850763c27e74c3fbd11143ed050101eb2eb4f4582e30e97bbd38bb02fdabf
BLAKE2b-256 checksum
How to use checksums
68a9cc067ce9217ff53ff596ff889f885fcb8c5896bbbfc22be7f40e442de3c7
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.12.3

Security for django-tag-me 2026.10.20.4

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Release history Release notifications | RSS feed

This release

2026.10.20.4 This release

2 release files No provenance

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