https://github.com/chnm/django-historical-dates

django-historical-dates is a Django app to work with historical dates and calendars in Django applications. Designed to handle uncertain, partial, approximate, and ranged historical dates with native EDTF support.

https://github.com/chnm/django-historical-dates

Science Score: 26.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
    Found .zenodo.json file
  • DOI references
  • Academic publication links
  • Academic email domains
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (6.4%) to scientific vocabulary

Keywords

django historical-data python
Last synced: 9 months ago · JSON representation

Repository

django-historical-dates is a Django app to work with historical dates and calendars in Django applications. Designed to handle uncertain, partial, approximate, and ranged historical dates with native EDTF support.

Basic Info
  • Host: GitHub
  • Owner: chnm
  • License: mit
  • Language: Python
  • Default Branch: main
  • Homepage: https://rrchnm.org
  • Size: 34.2 KB
Statistics
  • Stars: 0
  • Watchers: 0
  • Forks: 0
  • Open Issues: 0
  • Releases: 0
Topics
django historical-data python
Created 11 months ago · Last pushed 11 months ago
Metadata Files
Readme Contributing License Codeowners

README.rst

================
historical-dates
================

django-historical-dates is a Django app to work with historical dates
and calendars in Django applications. A reusable Django app to handle
uncertain, partial, approximate, and ranged historical dates with
native `EDTF`_ (Extended Date/Time Format) support.

.. _EDTF: https://www.loc.gov/standards/datetime/

Detailed documentation is in the "docs" directory.

Features
-------

- Supports human-readable display dates
- Parses EDTF strings into sortable start and end dates
- Validates EDTF syntax on admin and forms
- Provides a `HistoricalDateField` for referencing in other models
- Handles various historic calendar systems

Quick start
-----------

1. Add "historical_dates" to your INSTALLED_APPS setting like this::

    INSTALLED_APPS = [
        ...,
        "historical_dates",
    ]

2. Run ``python manage.py migrate`` to create the models.

3. Use the historical dates in your models:

.. code-block:: python

   from historical_dates.fields import HistoricalDateField

   class Artifact(models.Model):
       production_date = HistoricalDateField()

Owner

  • Name: Roy Rosenzweig Center for History and New Media
  • Login: chnm
  • Kind: organization
  • Location: Fairfax, VA, USA

GitHub Events

Total
  • Push event: 1
  • Create event: 1
Last Year
  • Push event: 1
  • Create event: 1

Dependencies

poetry.lock pypi
  • asgiref 3.9.1
  • babel 2.17.0
  • backrefs 5.9
  • build 1.2.2.post1
  • certifi 2025.7.9
  • charset-normalizer 3.4.2
  • click 8.2.1
  • colorama 0.4.6
  • convertdate 2.3.2
  • django 5.2.4
  • edtf 5.0.0
  • ghp-import 2.1.0
  • idna 3.10
  • interegular 0.3.3
  • jinja2 3.1.6
  • lark 1.2.2
  • markdown 3.8.2
  • markupsafe 3.0.2
  • mergedeep 1.3.4
  • mkdocs 1.6.1
  • mkdocs-get-deps 0.2.0
  • mkdocs-material 9.6.15
  • mkdocs-material-extensions 1.3.1
  • numpy 2.3.1
  • packaging 25.0
  • paginate 0.5.7
  • pathspec 0.12.1
  • platformdirs 4.3.8
  • pygments 2.19.2
  • pymdown-extensions 10.16
  • pymeeus 0.5.12
  • pyparsing 3.2.3
  • pyproject-hooks 1.2.0
  • python-dateutil 2.9.0.post0
  • pytz 2025.2
  • pyyaml 6.0.2
  • pyyaml-env-tag 1.1
  • requests 2.32.4
  • six 1.17.0
  • sqlparse 0.5.3
  • tzdata 2025.2
  • undate 0.5.0
  • urllib3 2.5.0
  • watchdog 6.0.0
pyproject.toml pypi
  • build (>=1.2.2.post1,<2.0.0)
  • django (>=5.2.4,<6.0.0)
  • edtf (>=5.0.0,<6.0.0)
  • mkdocs (>=1.6.1,<2.0.0)
  • mkdocs-material (>=9.6.15,<10.0.0)
  • undate (>=0.5.0,<0.6.0)