This repository contains the source for momentjs.com, including the Moment.js and Moment Timezone documentation, guides, downloads, and release files.
The site is statically generated with Eleventy.
Handlebars templates in pages/ render the
documentation and guides from Markdown fragments in docs/ and guides/, and
dated News announcements from news/. Styles and browser scripts are built from
assets/, and the complete site is written to build/.
Moment and Moment Timezone are pinned npm dependencies. Their packages provide the release files, locale data, and runtime used by documentation tests.
Development requires Git, Node.js 24, and pnpm 11. Install the dependencies and start the development server:
pnpm install
pnpm serveThe site is available at http://localhost:8080 and reloads when templates,
documentation, styles, or scripts change.
pnpm serve automatically tests the JavaScript examples embedded in the
Markdown documentation and announcements when the server starts and whenever
that content changes. To run the same checks once without starting the server,
use:
pnpm doctestExamples preceded by <!-- skip-example --> are counted but not run. These are
tool-specific examples or incomplete fragments that need an external runtime,
configuration, or data to execute.
Update both packages to the desired release versions. For example:
pnpm add --save-dev --save-exact moment@2.30.1 moment-timezone@0.6.3Commit the resulting package.json and pnpm-lock.yaml changes.
Please make pull requests against the master branch. Website updates are
deployed automatically when a pull request is merged.