The date field represents a date and time picker. It can be used for data values that are valid date strings.

Prior to v0.41.0, DateFieldPlugin was not a default plugin. See the react-tinacms-date docs for instructions on how to use the date field for previous versions.



This field plugin uses react-datetime under the hood.

interface DateConfig extends FieldConfig, DatetimepickerProps {
  component: 'date'
  name: string
  label?: string
  description?: string
  dateFormat?: boolean | string // Extra properties from react-datetime
  timeFormat?: boolean | string // Moment date format
componentThe name of the plugin component. Always 'date'.
nameThe path to some value in the data being edited.
labelA human readable label for the field. Defaults to the name. (Optional)
descriptionDescription that expands on the purpose of the field or prompts a specific action. (Optional)
dateFormatDefines the format for the date. It accepts any Moment.js date format (not in localized format). If true the date will be displayed using the defaults for the current locale. See react-datetime docs for more details. (Optional)
timeFormatDefines the format for the time. It accepts any Moment.js time format (not in localized format). If true the time will be displayed using the defaults for the current locale. If false the timepicker is disabled and the component can be used as datepicker. See react-datetime docs for more details.(Optional)


This interfaces only shows the keys unique to the date field.

Visit the Field Config docs for a complete list of options.


Any extra properties added to the the date field definition will be passed along to the react-datettime component. Moment.js format is used. See the full list of options here.

Example: Add "Created At" to Form

const formConfig = {
  fields: [
      name: 'created_at',
      label: 'Created At',
      component: 'date',
      dateFormat: 'MMMM DD YYYY',
      timeFormat: false,