Registry / devops / mmntjs

mmntjs

JSON →
library1.0.0jsnpmunverified

mmntjs v1.0.0 is a drop-in replacement for moment.js that provides a migration path to the Temporal API. It implements the full moment.js API surface and allows gradual migration file-by-file without breaking existing code. Ships TypeScript types, supports Node >=16. Key differentiators: zero-code alias using npm alias (`moment@npm:mmntjs`), automated codemod (`npx mmntjs migrate`), coexistence mode with original moment.js, and multiple entry points including `lite` (14.8 KB gzip), `full` (45.1 KB), tree-shakeable `fns` (0.5-1.3 KB), and a `temporal` bridge. Includes 136 locales and optional timezone support via separate package `mmntjs-timezone`. Released with weekly cadence.

npm install mmntjs
INSTALL
IMPORT
SIG · MMNTJS
M
mmntjs
devopsjavascriptv1.0.0
harness data pending
Install & Compatibility
Where this runs

No compatibility data collected yet for this library.

Code
Verified usage

Verified import paths — ran on the pinned version, not inferred.

moment
import moment from 'mmntjs'
import { moment } from 'mmntjs'
mmntjs exports a default moment function, not a named export.
moment (alias via npm)
npm install moment@npm:mmntjs \n import moment from 'moment'
npm install mmntjs && import moment from 'moment' // still original moment
Use npm alias to replace moment.js without changing import statements.
mmntjs/fns
import { format } from 'mmntjs/fns'
import { format } from 'mmntjs' // wrong export location
Tree-shakeable functions are exported from 'mmntjs/fns', not from main package.

Demonstrates alias mode, gradual migration, lite with locale, and Temporal bridge.

// Option A: Zero-code alias // npm install moment@npm:mmntjs import moment from 'moment'; const now = moment(); console.log(now.format('YYYY-MM-DD')); // e.g. 2025-03-15 // Option C: Gradual migration // npm install mmntjs import fm from 'mmntjs'; const startOfMonth = fm('2025-03-15').startOf('month'); console.log(startOfMonth.format()); // 2025-03-01T00:00:00+00:00 // Using lite with locales import m from 'mmntjs/lite'; import 'mmntjs/plugin/format-parse'; import { jaLocale } from 'mmntjs/locale/ja'; m.locale('ja', jaLocale); console.log(m().format('LL')); // 2025年3月15日 // Temporal bridge import { toTemporal, fromTemporal } from 'mmntjs/temporal'; const t = toTemporal(m('2025-03-15')); console.log(t instanceof Temporal.PlainDate); // true
Debug
Known issues
gotchammntjs does not support mutable moment objects; mutations are applied immutably and return new instances.
fix
Use method chaining or assign results to new variables: `const m2 = m1.add(1, 'day');`
affects: >=1.0.0
deprecatedmoment().zone() is deprecated. Use moment().utcOffset() instead.
fix
Replace `.zone(value)` with `.utcOffset(value)`.
affects: >=1.0.0
gotchaLocale data may differ from moment.js for some regions. Verify locale-specific formatting.
fix
Test formatting strings with your target locales and report issues upstream.
affects: >=1.0.0
breakingIn v1.0.0, `moment.parseTwoDigitYear` is not supported. Use custom parsing if needed.
fix
Manually parse two-digit years before passing to moment.
affects: 1.0.0
gotchaThe `mmntjs/fns` entry point only exports functions, not a moment constructor.
fix
Use `import m from 'mmntjs'` for moment constructor, and `import { format } from 'mmntjs/fns'` for standalone functions.
affects: >=1.0.0
Errors
Common errors & fixes
Wrong import type: 'moment' is not exported from 'mmntjs'
Using named import instead of default import.
fix
Use `import moment from 'mmntjs'`
Cannot find module 'mmntjs/locale/ja' or its corresponding type declarations.
TypeScript not resolving locale imports; missing type declarations for subpath exports.
fix
Add `"moduleResolution": "bundler"` or `"node16"` in tsconfig.json.
moment is not a function
Importing 'mmntjs' in a non-ES module context and using require incorrectly.
fix
Use `import moment from 'mmntjs'` with ESM, or `const moment = require('mmntjs')` if CJS (but mmntjs is ESM-only).
Upgrade
Version history
1.0.0latest on npm
Audit
Dependencies

No dependency data recorded yet.

Agent activity
4 hits · last 30 days
node
4
Resources
packagemmntjs
mmntjs — npm install mmntjs · libregistry