{"id":21149,"library":"django-markdownify","title":"django-markdownify","description":"Markdown template filter for Django using the Python Markdown library. The current version is 0.9.6, with a release cadence of roughly once per year. It provides a simple template filter to render Markdown text as HTML, with optional parameters for allowed tags, attributes, and extensions.","status":"active","version":"0.9.6","language":"python","source_language":"en","source_url":"https://github.com/erwinmatijsen/django-markdownify","tags":["django","markdown","template-filter","markdownify"],"install":[{"cmd":"pip install django-markdownify","lang":"bash","label":"PyPI"}],"dependencies":[{"reason":"Required for template filter integration","package":"Django","optional":false}],"imports":[{"wrong":"from django_markdownify.templatetags.markdownify import markdownify","symbol":"markdownify","correct":"from markdownify import markdownify"}],"quickstart":{"code":"# 1. Install: pip install django-markdownify\n# 2. Add to INSTALLED_APPS:\nINSTALLED_APPS = [\n    ...\n    'django_markdownify',\n]\n\n# 3. In a template:\n{% load markdownify %}\n{{ text|markdownify }}\n\n# Optional settings:\nMARKDOWNIFY = {\n    \"default\": {\n        \"MARKDOWN_EXTENSIONS\": [\n            \"markdown.extensions.extra\",\n            \"markdown.extensions.codehilite\",\n        ],\n        \"STRIP\": False,\n        \"WHITELIST_TAGS\": [\"a\", \"code\", \"pre\"],\n        \"WHITELIST_ATTRS\": [\"href\", \"class\"],\n    }\n}","lang":"python","description":"Basic setup to use the markdownify filter in Django templates."},"warnings":[{"fix":"Use {% load markdownify %} in your templates.","message":"The template tag module is named 'markdownify' but the app is 'django_markdownify'. Always use {% load markdownify %} in templates.","severity":"gotcha","affected_versions":"all"},{"fix":"Remove 'safe' from filter usage and configure via MARKDOWNIFY settings.","message":"In version 0.9.0, the 'safe' argument was removed. Use 'strip' and whitelist options instead.","severity":"deprecated","affected_versions":">=0.9.0"},{"fix":"Replace {% load markdown %} with {% load markdownify %} and use {{ text|markdownify }}.","message":"Version 0.9.0 changed the filter name from 'markdown' to 'markdownify'. Templates using {% load markdown %} will break.","severity":"breaking","affected_versions":">=0.9.0"}],"env_vars":null,"search_vec":"'0.9.6':18 'allow':44 'attribut':46 'cadenc':22 'current':15 'django':2,8,49 'django-markdownifi':1 'extens':48 'filter':6,33,53 'html':39 'librari':13 'markdown':4,12,36,50 'markdownifi':3,54 'option':41 'paramet':42 'per':26 'provid':29 'python':11 'releas':21 'render':35 'rough':24 'simpl':31 'tag':45 'templat':5,32,52 'template-filt':51 'text':37 'use':9 'version':16 'year':27","created_at":"2026-04-27T16:58:20.344517+00:00","updated_at":"2026-04-27T16:58:20.344517+00:00","problems":{"verify_error":"Traceback (most recent call last):\n  File \"<string>\", line 1, in <module>\nImportError: cannot import name 'markdownify' from 'markdownify' (/tmp/tmpxxnbdh9s/venv/lib/python3.12/site-packages/markdownify/__init__.py)"},"ecosystem":"pypi","meta_description":null,"install_score":null,"quickstart_score":null,"quickstart_tag":null,"pypi_latest":"0.9.7","cli_name":"","cli_version":null,"type":"library","homepage":null,"github":"https://github.com/erwinmatijsen/django-markdownify","docs":null,"changelog":null,"pypi":"https://pypi.org/project/django-markdownify/","npm":null,"openapi_spec":null,"status_page":null,"smithery":null,"categories":["web-framework"],"base_url":null,"auth_type":null,"provenance":{"verified_status":"import_fail","verified_at":"2026-07-03","last_verified":"2026-07-03","next_check":"2026-07-10","install_tag":null}}