The input_type is defined as text. Is there any particular reason why it shouldn’t be defined as date to utilize the default date widget rendered by the browser?
If I were to wager a guess, it would be that that’s a historical artifact that probably can’t be changed without breaking a bunch of existing code.
Also, the Django field can be configured for almost any arbitrary date format for entry - something I’m not sure is true with the browser-defined date widget.
And, since it is possible to replace the template, it’s not like you can’t implement a date-widget template if that’s your choice to do so.
Again - the above is not authoritative - just an opinion.