# luxon

> Immutable date wrapper

Latest version **3.7.2** (published 2025-09-05) · MIT license · 0 weekly downloads

## Install

```sh
npm install luxon
pnpm add luxon
yarn add luxon
bun add luxon
```

## Health

**Score 53/100 (C)** — status: stable.

Positive: has types package; esm support; no vulnerabilities; high quality score; popular repo.

Warnings: low downloads.

Negative: stale.

## Facts

| | |
|---|---|
| Version | 3.7.2 |
| Published | 2025-09-05 |
| First published | 2017-05-24 |
| Weekly downloads | 0 |
| License | MIT |
| TypeScript types | separate (@types/luxon) |
| Module format | ESM + CommonJS |
| Node | >=12 |
| Dependencies | 0 |
| Unpacked size | 4.4 MB |
| Known vulnerabilities | 0 |
| Install scripts | no |
| GitHub stars | 16456 |
| Author | Isaac Cambron |
| Maintainers | icambron, diesieben07 |
| Keywords | date, immutable |

## Links

- npm: https://www.npmjs.com/package/luxon
- Repository: https://github.com/moment/luxon
- Homepage: https://github.com/moment/luxon#readme
- Issues: https://github.com/moment/luxon/issues
- npm.io page: https://npm.io/package/luxon

## Alternatives

- [@js-joda/timezone](https://npm.io/package/@js-joda/timezone.md) — 383.4K weekly downloads
- [chartjs-adapter-moment](https://npm.io/package/chartjs-adapter-moment.md) — 210.8K weekly downloads
- [strftime](https://npm.io/package/strftime.md) — 171.2K weekly downloads
- [vue-flatpickr-component](https://npm.io/package/vue-flatpickr-component.md) — 115.8K weekly downloads
- [timepicker](https://npm.io/package/timepicker.md) — 51.0K weekly downloads

## Recent versions

- 3.7.2 (latest) — 2025-09-05
- 3.8.0-alpha.1 (next) — 2025-08-11
- 3.7.1 — 2025-07-09
- 3.7.0 — 2025-07-09
- 3.6.1 — 2025-03-31
- 3.6.0 — 2025-03-25
- 3.5.0 — 2024-08-03
- 3.4.4 — 2023-11-12
- 3.4.3 — 2023-09-05
- 3.4.2 — 2023-08-26
- 3.4.1 — 2023-08-22
- 3.4.0 — 2023-08-09
- 3.3.0 — 2023-03-04
- 2.5.2 — 2023-01-04
- 1.28.1 — 2023-01-04
- … 136 more at https://npm.io/package/luxon/versions

## README

# Luxon

[![MIT License][license-image]][license] [![Build Status][github-action-image]][github-action-url] [![NPM version][npm-version-image]][npm-url] [![Coverage Status][test-coverage-image]][test-coverage-url] [![PRs welcome][contributing-image]][contributing-url]

Luxon is a library for working with dates and times in JavaScript.

```js
DateTime.now().setZone("America/New_York").minus({ weeks: 1 }).endOf("day").toISO();
```

## Upgrading to 3.0

[Guide](https://moment.github.io/luxon/#upgrading)

## Features
 * DateTime, Duration, and Interval types.
 * Immutable, chainable, unambiguous API.
 * Parsing and formatting for common and custom formats.
 * Native time zone and Intl support (no locale or tz files).

## Download/install

[Download/install instructions](https://moment.github.io/luxon/#/install)

## Documentation

* [General documentation](https://moment.github.io/luxon/#/?id=luxon)
* [API docs](https://moment.github.io/luxon/api-docs/index.html)
* [Quick tour](https://moment.github.io/luxon/#/tour)
* [For Moment users](https://moment.github.io/luxon/#/moment)
* [Why does Luxon exist?](https://moment.github.io/luxon/#/why)
* [A quick demo](https://moment.github.io/luxon/demo/global.html)

## Development

See [contributing](CONTRIBUTING.md).

![Phasers to stun][phasers-image]

[license-image]: https://img.shields.io/badge/license-MIT-blue.svg
[license]: LICENSE.md

[github-action-image]: https://github.com/moment/luxon/actions/workflows/test.yml/badge.svg
[github-action-url]: https://github.com/moment/luxon/actions/workflows/test.yml

[npm-url]: https://npmjs.org/package/luxon
[npm-version-image]: https://badge.fury.io/js/luxon.svg

[test-coverage-url]: https://codecov.io/gh/moment/luxon
[test-coverage-image]: https://codecov.io/gh/moment/luxon/branch/master/graph/badge.svg

[contributing-url]: https://github.com/moment/luxon/blob/master/CONTRIBUTING.md
[contributing-image]: https://img.shields.io/badge/PRs-welcome-brightgreen.svg

[phasers-image]: https://img.shields.io/badge/phasers-stun-brightgreen.svg

---
_Source: https://npm.io/package/luxon · Machine-readable twin of the npm.io package page. Health data is recomputed on every publish._
