The definitive source of the best
JavaScript libraries, frameworks, and plugins.

  • ×

    ⏰ Day.js 2KB immutable date library alternative to Moment.js with the same modern API
    Filed under  › 

    • 🔾94%Overall
    • 45,910
    • 6.7 days
    • 🕩2250
    • 👥37

    English | 简体中文 | 日本語 | Português Brasileiro | 한국어 | Español (España) | Русский | Türkçe | සිංහල | עברית


    Fast 2kB alternative to Moment.js with the same modern API

    Gzip Size NPM Version Build Status Codecov License
    Sauce Test Status

    Day.js is a minimalist JavaScript library that parses, validates, manipulates, and displays dates and times for modern browsers with a largely Moment.js-compatible API. If you use Moment.js, you already know how to use Day.js.

    dayjs().startOf('month').add(1, 'day').set('year', 2018).format('YYYY-MM-DD HH:mm:ss');
    • 🕒 Familiar Moment.js API & patterns
    • 💪 Immutable
    • 🔥 Chainable
    • 🌐 I18n support
    • 📦 2kb mini library
    • 👫 All browsers supported

    Getting Started


    You can find more details, API, and other docs on website.


    npm install dayjs --save

    📚Installation Guide


    It's easy to use Day.js APIs to parse, validate, manipulate, and display dates and times.

    dayjs('2018-08-08') // parse
    dayjs().format('{YYYY} MM-DDTHH:mm:ss SSS [Z] A') // display
    dayjs().set('month', 3).month() // get & set
    dayjs().add(1, 'year') // manipulate
    dayjs().isBefore(dayjs()) // query

    📚API Reference


    Day.js has great support for internationalization.

    But none of them will be included in your build unless you use it.

    import 'dayjs/locale/es' // load on demand
    dayjs.locale('es') // use Spanish locale globally
    dayjs('2018-05-05').locale('zh-cn').format() // use Chinese Simplified locale in a specific instance



    A plugin is an independent module that can be added to Day.js to extend functionality or add new features.

    import advancedFormat from 'dayjs/plugin/advancedFormat' // load on demand
    dayjs.extend(advancedFormat) // use plugin
    dayjs().format('Q Do k kk X x') // more available formats

    📚Plugin List

    Usage Trend


    Support this project by becoming a sponsor. Your logo will show up here with a link to your website.

    [Become a sponsor via Github] [Become a sponsor via OpenCollective]



    This project exists thanks to all the people who contribute.

    Please give us a 💖 star 💖 to support us. Thank you.

    And thank you to all our backers! 🙏


    Day.js is licensed under a MIT License.

    Show All