explaingit

eonasdan/tempus-dominus

7,177HTMLAudience · developerComplexity · 2/5Setup · easy

TLDR

A JavaScript date and time picker widget for web pages that shows a visual calendar and clock, requires only Popper2 as a dependency, and no longer needs jQuery or Bootstrap, though the project is no longer actively maintained.

Mindmap

mindmap
  root((Tempus Dominus))
    What it does
      Date picker
      Time picker
      Visual calendar
    Key changes v6
      No jQuery needed
      No Bootstrap needed
      TypeScript rewrite
    Tech stack
      TypeScript
      JavaScript
      Popper2
    Status
      Unmaintained
      Paid support only
Click or tap to explore — scroll the page freely

Code map

Detail Auto

An interactive map of this repo's files and how they connect — its source is parsed live in your browser. Click Visualize to build it.

filefunction / class

Things people build with this

USE CASE 1

Add a visual date and time picker to a web form without requiring jQuery or Bootstrap

USE CASE 2

Replace an older date-picker library in an existing project with one built in modern TypeScript

USE CASE 3

Let users pick both a date and a time in a single input field on a booking or scheduling web page

Tech stack

TypeScriptJavaScriptCSSPopper2

Getting it running

Difficulty · easy Time to first run · 30min

Project is no longer actively maintained, new issues require paid sponsorship to be addressed.

The explanation does not mention the license type.

In plain English

Tempus Dominus is a date and time picker for web pages, written in JavaScript. When added to a website, it gives users a visual calendar and clock interface for selecting a date, a time, or a combined date-and-time value. The library reached version 6.9.4 before its author announced the project is no longer actively maintained. Any new issues now require paid sponsorship to be addressed, and the author noted they are moving on to other projects. Version 6 was a substantial rewrite compared to its predecessor. It is written in TypeScript, a typed extension of JavaScript that tends to produce more predictable code. One of the key changes in version 6 is that several older dependencies are no longer required: Bootstrap (a CSS framework), Moment.js (a date formatting library), and jQuery (a JavaScript utility library) are all optional or removed. The only required external dependency is Popper2, which handles positioning the picker widget correctly on the screen relative to the input field the user clicks. A jQuery compatibility wrapper is included for projects that still depend on jQuery, though the README suggests moving away from it. The source code lives in a TypeScript project with a docs folder for the documentation site and a dist folder for built JavaScript and CSS files. Developers working on the library itself run npm i to install packages, then npm start to launch a local server with live rebuilding as they make changes. Running npm run serve shows the documentation site without watching for changes. The project accumulated over 7,000 GitHub stars during its active years, reflecting significant adoption in web development projects that needed a date-picker widget without heavy framework dependencies. Because it is now in a paid-support-only state, new users should consider whether a still-actively-maintained alternative better fits their needs. Existing projects that already use it can continue with the published releases, but should not expect free fixes or new features.

Copy-paste prompts

Prompt 1
Using Tempus Dominus v6, add a date-and-time picker to a plain HTML form field without jQuery or Bootstrap, show the minimal setup code.
Prompt 2
How do I configure Tempus Dominus to show only a time picker and restrict selectable hours to 9am-5pm?
Prompt 3
In a web app using Tempus Dominus, how do I read the selected date-time value in JavaScript and send it to a backend API as an ISO string?
Prompt 4
Help me migrate a jQuery-based Tempus Dominus date picker to the v6 API that drops the jQuery requirement.
Open on GitHub → Explain another repo

← eonasdan on gitmyhub — every repo by this author, as a profile.

Verify against the repo before relying on details.