datevolt 1.0.1 → 1.0.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -1,48 +1,72 @@
1
1
  # datevolt
2
2
 
3
- [![npm version](https://img.shields.io/npm/v/datevolt.svg)](https://www.npmjs.com/package/datevolt)
4
- [![license](https://img.shields.io/npm/l/datevolt.svg)](LICENSE)
3
+ [![npm version](https://img.shields.io/npm/v/datevolt.svg?style=flat-square)](https://www.npmjs.com/package/datevolt)
4
+ [![npm downloads](https://img.shields.io/npm/dm/datevolt.svg?style=flat-square)](https://www.npmjs.com/package/datevolt)
5
+ [![license](https://img.shields.io/npm/l/datevolt.svg?style=flat-square)](LICENSE)
6
+ [![zero dependencies](https://img.shields.io/badge/dependencies-0-brightgreen?style=flat-square)](package.json)
5
7
 
6
- > **A complete, lightweight, zero-dependency JavaScript date library** with a `moment.js`-compatible chainable API.
8
+ A lightweight, zero-dependency JavaScript date library that works just like moment.js but without the bloat. Built specifically with React Native CLI in mind (Android + iOS, Hermes & JSC), though it works perfectly fine in Node.js and browsers too.
7
9
 
8
- - **~8 KB** gzipped vs moment's ~72 KB
9
- - 📦 **Zero dependencies** — no node_modules bloat
10
- - 🔗 **moment.js-style API** — `parse`, `format`, `add/subtract`, `diff`, `fromNow`, `calendar`, `duration`, `locale`
11
- - 🌍 **Timezone & UTC support** — `utc()`, `utcOffset()`, `isDST()`
12
- - 🗓 **Built-in locales**: `en`, `hi`, `es`, `fr`, `de`, `ar`, `ja` — extend with `defineLocale()`
13
- - 📱 **React Native ready** — pure JS Date math, no `Intl` dependency, Metro bundler compatible
10
+ I built this because moment.js is massive (~72 KB gzipped) and causes issues in some React Native setups. datevolt gives you the same familiar API at a fraction of the size.
14
11
 
15
12
  ---
16
13
 
17
- ## Install
14
+ ## Why datevolt?
15
+
16
+ | | moment.js | datevolt |
17
+ |---|---|---|
18
+ | Size (gzipped) | ~72 KB | ~8 KB |
19
+ | Size (minified) | ~290 KB | ~25 KB |
20
+ | Dependencies | 0 | 0 |
21
+ | Tree-shakeable | ❌ | ✅ |
22
+ | Immutable `.clone()` | ❌ | ✅ |
23
+ | React Native safe | ⚠️ | ✅ |
24
+ | moment.js API | ✅ | ✅ |
25
+
26
+ No `Intl` dependency, no native modules, no config needed — just install and use.
27
+
28
+ ---
29
+
30
+ ## Installation
18
31
 
19
32
  ```bash
33
+ # npm
20
34
  npm install datevolt
35
+
36
+ # yarn
37
+ yarn add datevolt
21
38
  ```
22
39
 
40
+ ---
41
+
23
42
  ## Quick Start
24
43
 
25
44
  ```js
26
45
  const datevolt = require('datevolt');
46
+ // or
47
+ import datevolt from 'datevolt';
48
+
49
+ datevolt().format('YYYY-MM-DD HH:mm:ss') // "2024-06-15 14:30:00"
50
+ datevolt('2024-06-15').format('dddd, MMMM D, YYYY') // "Saturday, June 15, 2024"
51
+ datevolt().add(7, 'days').format('DD MMM YYYY') // "22 Jun 2024"
52
+ datevolt('2024-01-01').fromNow() // "6 months ago"
53
+ datevolt('2024-06-15').diff('2024-01-01', 'days') // 166
54
+ datevolt('2024-06-15').isBefore('2024-12-31') // true
55
+ ```
27
56
 
28
- // Current date/time
29
- datevolt().format('YYYY-MM-DD HH:mm:ss');
30
-
31
- // Parse ISO string
32
- datevolt('2024-06-15').format('dddd, MMMM D, YYYY'); // "Saturday, June 15, 2024"
57
+ ---
33
58
 
34
- // Add / subtract
35
- datevolt('2024-01-31').add(1, 'month').format('YYYY-MM-DD'); // "2024-02-29"
59
+ ## React Native
36
60
 
37
- // Relative time
38
- datevolt('2024-01-01').fromNow(); // "6 months ago"
39
- datevolt().add(2, 'hours').toNow(); // "in 2 hours"
61
+ No special setup needed. Works with both Hermes and JSC engines.
40
62
 
41
- // Diff
42
- datevolt('2024-06-15').diff('2024-01-01', 'days'); // 166
63
+ ```js
64
+ import datevolt from 'datevolt';
43
65
 
44
- // Compare
45
- datevolt('2024-06-15').isBefore('2024-12-31'); // true
66
+ const DateDisplay = () => {
67
+ const [today] = React.useState(datevolt().format('LL'));
68
+ return <Text>{today}</Text>; // "June 15, 2024"
69
+ };
46
70
  ```
47
71
 
48
72
  ---
@@ -52,52 +76,56 @@ datevolt('2024-06-15').isBefore('2024-12-31'); // true
52
76
  ### Parsing
53
77
 
54
78
  ```js
55
- datevolt() // now
56
- datevolt('2024-06-15') // ISO date string (local midnight)
57
- datevolt('2024-06-15T10:30:00') // ISO datetime
58
- datevolt('2024-06-15T10:30:00Z') // UTC
59
- datevolt('2024-06-15T10:30:00+05:30') // with offset
60
- datevolt('15/06/2024', 'DD/MM/YYYY') // with format string
79
+ datevolt() // now
80
+ datevolt('2024-06-15') // ISO date (local midnight)
81
+ datevolt('2024-06-15T10:30:00') // ISO datetime
82
+ datevolt('2024-06-15T10:30:00Z') // UTC
83
+ datevolt('2024-06-15T10:30:00+05:30') // with offset
84
+ datevolt('15/06/2024', 'DD/MM/YYYY') // custom format
61
85
  datevolt('15/06/2024', ['DD/MM/YYYY', 'YYYY-MM-DD']) // multiple formats
62
- datevolt([2024, 5, 15]) // array [Y, M(0-based), D]
63
- datevolt([2024, 5, 15, 14, 30, 0, 0]) // array with time
64
- datevolt({ year:2024, month:5, day:15 }) // object
65
- datevolt(1718438400000) // unix milliseconds
66
- datevolt.unix(1718438400) // unix seconds
67
- datevolt.utc('2024-06-15T10:30:00') // UTC mode
86
+ datevolt([2024, 5, 15]) // array [Y, M(0-based), D]
87
+ datevolt([2024, 5, 15, 14, 30, 0, 0]) // array with time
88
+ datevolt({ year: 2024, month: 5, day: 15 }) // object
89
+ datevolt(1718438400000) // unix milliseconds
90
+ datevolt.unix(1718438400) // unix seconds
91
+ datevolt.utc('2024-06-15T10:30:00') // UTC mode
68
92
 
69
93
  // Validation
70
- datevolt('2024-06-15').isValid() // true
71
- datevolt('not-a-date').isValid() // false
94
+ datevolt('2024-06-15').isValid() // true
95
+ datevolt('not-a-date').isValid() // false
72
96
  ```
73
97
 
74
- ### Get + Set
98
+ ---
99
+
100
+ ### Get & Set
75
101
 
76
102
  ```js
77
- var d = datevolt('2024-06-15T14:30:45.123');
78
-
79
- d.year() // 2024 d.year(2025)
80
- d.month() // 5 (0-based) d.month(0)
81
- d.date() // 15 d.date(1)
82
- d.day() // 6 (Saturday) d.day(1) // set to Monday
83
- d.hour() // 14 d.hour(9)
84
- d.minute() // 30 d.minute(0)
85
- d.second() // 45 d.second(0)
103
+ const d = datevolt('2024-06-15T14:30:45.123');
104
+
105
+ d.year() // 2024d.year(2025)
106
+ d.month() // 5 d.month(0) (0-based)
107
+ d.date() // 15d.date(1)
108
+ d.day() // 6d.day(1) (0=Sun, 6=Sat)
109
+ d.hour() // 14d.hour(9)
110
+ d.minute() // 30d.minute(0)
111
+ d.second() // 45d.second(0)
86
112
  d.millisecond() // 123
87
113
 
88
- d.quarter() // 2 (Apr–Jun)
114
+ d.quarter() // 2
89
115
  d.dayOfYear() // 167
90
116
  d.daysInMonth() // 30
91
117
  d.week() // ISO week number
92
118
  d.isoWeek()
93
- d.weeksInYear()
94
119
  d.isoWeekday() // 1=Mon ... 7=Sun
120
+ d.weeksInYear()
95
121
 
96
- // Generic
122
+ // Generic get/set
97
123
  d.get('year') // 2024
98
124
  d.set('year', 2025) // chainable
99
125
  ```
100
126
 
127
+ ---
128
+
101
129
  ### Manipulate
102
130
 
103
131
  ```js
@@ -106,60 +134,61 @@ datevolt().add(1, 'month')
106
134
  datevolt().add(2, 'years')
107
135
  datevolt().add(3, 'hours')
108
136
  datevolt().add(30, 'minutes')
109
- datevolt().add(15, 'seconds')
110
- datevolt().add({ days: 1, hours: 2, minutes: 30 }) // object form
137
+ datevolt().add({ days: 1, hours: 2, minutes: 30 }) // object form
111
138
 
112
139
  datevolt().subtract(1, 'week')
113
140
  datevolt().subtract(3, 'months')
114
141
 
115
- // Chained
116
- datevolt('2024-01-01').add(1,'year').subtract(3,'months').startOf('month')
142
+ // Chain as much as you want
143
+ datevolt('2024-01-01').add(1, 'year').subtract(3, 'months').startOf('month')
117
144
 
118
- // startOf / endOf
145
+ // startOf
119
146
  datevolt().startOf('year') // Jan 1, 00:00:00.000
120
147
  datevolt().startOf('month') // 1st of month, 00:00:00.000
121
- datevolt().startOf('week') // locale-aware week start
122
- datevolt().startOf('day') // 00:00:00.000
148
+ datevolt().startOf('week')
149
+ datevolt().startOf('day')
123
150
  datevolt().startOf('hour')
124
- datevolt().startOf('minute')
125
- datevolt().startOf('second')
126
151
  datevolt().startOf('quarter')
127
152
  datevolt().startOf('isoWeek')
128
153
 
154
+ // endOf
129
155
  datevolt().endOf('year') // Dec 31, 23:59:59.999
130
- datevolt().endOf('month') // last day, 23:59:59.999
156
+ datevolt().endOf('month') // last day of month
131
157
 
132
158
  datevolt().clone() // immutable copy
133
159
  ```
134
160
 
161
+ ---
162
+
135
163
  ### Format
136
164
 
137
165
  ```js
138
- datevolt().format() // "1:30 PM" (LT)
139
- datevolt().format('YYYY-MM-DD') // "2024-06-15"
140
- datevolt().format('YYYY-MM-DD HH:mm:ss') // "2024-06-15 14:30:45"
141
- datevolt().format('dddd, MMMM D, YYYY') // "Saturday, June 15, 2024"
142
- datevolt().format('MMM Do, YYYY') // "Jun 15th, 2024"
143
- datevolt().format('h:mm A') // "2:30 PM"
144
- datevolt().format('[Today is] dddd') // "Today is Saturday"
145
- datevolt().format('L') // "06/15/2024"
146
- datevolt().format('LL') // "June 15, 2024"
147
- datevolt().format('LLL') // "June 15, 2024 2:30 PM"
148
- datevolt().format('LLLL') // "Saturday, June 15, 2024 2:30 PM"
166
+ datevolt().format('YYYY-MM-DD') // "2024-06-15"
167
+ datevolt().format('YYYY-MM-DD HH:mm:ss') // "2024-06-15 14:30:45"
168
+ datevolt().format('dddd, MMMM D, YYYY') // "Saturday, June 15, 2024"
169
+ datevolt().format('MMM Do, YYYY') // "Jun 15th, 2024"
170
+ datevolt().format('h:mm A') // "2:30 PM"
171
+ datevolt().format('[Today is] dddd') // "Today is Saturday"
172
+ datevolt().format('L') // "06/15/2024"
173
+ datevolt().format('LL') // "June 15, 2024"
174
+ datevolt().format('LLL') // "June 15, 2024 2:30 PM"
175
+ datevolt().format('LLLL') // "Saturday, June 15, 2024 2:30 PM"
149
176
  ```
150
177
 
178
+ **Tokens:**
179
+
151
180
  | Token | Output | Description |
152
181
  |-------|--------|-------------|
153
182
  | `YYYY` | 2024 | Full year |
154
183
  | `YY` | 24 | 2-digit year |
155
- | `MMMM` | June | Month name |
184
+ | `MMMM` | June | Full month name |
156
185
  | `MMM` | Jun | Short month |
157
- | `MM` | 06 | Month 2-digit |
186
+ | `MM` | 06 | Month (2-digit) |
158
187
  | `M` | 6 | Month |
159
- | `DD` | 15 | Day 2-digit |
188
+ | `DD` | 15 | Day (2-digit) |
160
189
  | `Do` | 15th | Ordinal day |
161
190
  | `D` | 15 | Day |
162
- | `dddd` | Saturday | Weekday name |
191
+ | `dddd` | Saturday | Full weekday |
163
192
  | `ddd` | Sat | Short weekday |
164
193
  | `HH` | 14 | 24-hour |
165
194
  | `h` | 2 | 12-hour |
@@ -167,173 +196,172 @@ datevolt().format('LLLL') // "Saturday, June 15, 2024 2:30 PM"
167
196
  | `ss` | 45 | Seconds |
168
197
  | `SSS` | 123 | Milliseconds |
169
198
  | `A` | PM | AM/PM |
170
- | `Z` | +05:30 | Timezone |
199
+ | `Z` | +05:30 | UTC offset |
171
200
  | `X` | 1718438400 | Unix seconds |
172
201
  | `x` | 1718438400000 | Unix ms |
173
202
  | `Q` | 2 | Quarter |
174
203
 
204
+ ---
205
+
175
206
  ### Relative Time
176
207
 
177
208
  ```js
178
- datevolt('2024-01-01').fromNow() // "6 months ago"
179
- datevolt().add(2,'hours').fromNow() // "in 2 hours"
180
- datevolt().subtract(3,'days').fromNow(true) // "3 days" (without suffix)
209
+ datevolt('2024-01-01').fromNow() // "6 months ago"
210
+ datevolt().add(2, 'hours').fromNow() // "in 2 hours"
211
+ datevolt().subtract(3, 'days').fromNow(true) // "3 days" (no suffix)
181
212
 
182
- datevolt('2024-01-01').from('2024-06-15') // "6 months ago"
183
- datevolt().add(5,'minutes').toNow() // "in 5 minutes"
184
- datevolt('2024-01-01').to('2024-06-15') // "in 6 months"
213
+ datevolt('2024-01-01').from('2024-06-15') // "6 months ago"
214
+ datevolt().add(5, 'minutes').toNow() // "in 5 minutes"
215
+ datevolt('2024-01-01').to('2024-06-15') // "in 6 months"
185
216
  ```
186
217
 
218
+ ---
219
+
187
220
  ### Calendar
188
221
 
189
222
  ```js
190
- datevolt().calendar() // "Today at 2:30 PM"
191
- datevolt().add(1,'day').calendar() // "Tomorrow at 2:30 PM"
192
- datevolt().subtract(1,'day').calendar() // "Yesterday at 2:30 PM"
193
- datevolt().add(3,'days').calendar() // "Tuesday at 2:30 PM"
194
- datevolt().subtract(7,'days').calendar() // "06/08/2024"
223
+ datevolt().calendar() // "Today at 2:30 PM"
224
+ datevolt().add(1, 'day').calendar() // "Tomorrow at 2:30 PM"
225
+ datevolt().subtract(1, 'day').calendar() // "Yesterday at 2:30 PM"
226
+ datevolt().add(3, 'days').calendar() // "Tuesday at 2:30 PM"
227
+ datevolt().subtract(7, 'days').calendar()// "06/08/2024"
195
228
  ```
196
229
 
230
+ ---
231
+
197
232
  ### Diff
198
233
 
199
234
  ```js
200
- datevolt('2024-06-15').diff('2024-01-01', 'days') // 166
201
- datevolt('2024-06-15').diff('2024-01-01', 'months') // 5
202
- datevolt('2024-06-15').diff('2020-01-01', 'years') // 4
235
+ datevolt('2024-06-15').diff('2024-01-01', 'days') // 166
236
+ datevolt('2024-06-15').diff('2024-01-01', 'months') // 5
237
+ datevolt('2024-06-15').diff('2020-01-01', 'years') // 4
203
238
  datevolt('2024-06-15T12:00').diff('2024-06-15T10:00', 'hours') // 2
204
- datevolt('2024-06-15').diff('2024-01-01', 'days', true) // 166.xxx (float)
239
+ datevolt('2024-06-15').diff('2024-01-01', 'days', true) // 166.xxx (float)
205
240
  ```
206
241
 
207
- ### Query / Comparison
242
+ ---
243
+
244
+ ### Query & Comparison
208
245
 
209
246
  ```js
210
- datevolt('2024-01-01').isBefore('2024-06-15') // true
211
- datevolt('2024-06-15').isAfter('2024-01-01') // true
212
- datevolt('2024-06-15T10:00').isSame('2024-06-15T18:00', 'day') // true
213
- datevolt('2024-01-01').isSameOrBefore('2024-01-01') // true
214
- datevolt('2024-06-15').isSameOrAfter('2024-06-15') // true
215
- datevolt('2024-03-15').isBetween('2024-01-01','2024-12-31') // true
216
- datevolt('2024-01-01').isBetween('2024-01-01','2024-12-31',null,'[]') // inclusive
217
-
218
- datevolt('2024-06-15').isLeapYear() // true
219
- datevolt().isDST() // true/false
220
- datevolt.isMoment(datevolt()) // true (also isdatevolt)
247
+ datevolt('2024-01-01').isBefore('2024-06-15') // true
248
+ datevolt('2024-06-15').isAfter('2024-01-01') // true
249
+ datevolt('2024-06-15T10:00').isSame('2024-06-15T18:00', 'day') // true
250
+ datevolt('2024-01-01').isSameOrBefore('2024-01-01') // true
251
+ datevolt('2024-06-15').isSameOrAfter('2024-06-15') // true
252
+ datevolt('2024-03-15').isBetween('2024-01-01', '2024-12-31') // true
253
+ datevolt('2024-01-01').isBetween('2024-01-01', '2024-12-31', null, '[]') // inclusive
254
+
255
+ datevolt('2024-06-15').isLeapYear() // true
256
+ datevolt().isDST() // true/false
257
+ datevolt.isMoment(datevolt()) // true
221
258
  datevolt.isDate(new Date()) // true
222
259
  ```
223
260
 
261
+ ---
262
+
224
263
  ### UTC & Timezone
225
264
 
226
265
  ```js
227
266
  // UTC mode
228
- datevolt.utc('2024-06-15T10:30:00').format('HH:mm') // always UTC hours
267
+ datevolt.utc('2024-06-15T10:30:00').format('HH:mm') // always UTC hours
229
268
  datevolt.utc().isUTC() // true
230
- datevolt.utc().local() // switch to local mode
269
+ datevolt.utc().local() // switch back to local
231
270
 
232
271
  // UTC offset
233
- datevolt().utcOffset() // current offset in minutes
234
- datevolt().utcOffset('+05:30') // set offset
235
- datevolt().utcOffset(330) // set by minutes
236
- datevolt().utcOffset(0, true) // keep local time, change offset
272
+ datevolt().utcOffset() // offset in minutes
273
+ datevolt().utcOffset('+05:30') // set by string
274
+ datevolt().utcOffset(330) // set by minutes
275
+ datevolt().utcOffset(0, true) // keep local time, change offset
237
276
  ```
238
277
 
278
+ ---
279
+
239
280
  ### Duration
240
281
 
241
282
  ```js
242
- var d = datevolt.duration(2, 'days');
283
+ const d = datevolt.duration(2, 'days');
243
284
  d.asDays() // 2
244
285
  d.asHours() // 48
245
286
  d.asMinutes() // 2880
246
287
 
247
- datevolt.duration({ hours: 1, minutes: 30 }).asMinutes() // 90
248
- datevolt.duration('P1Y2M3DT4H5M6S') // ISO 8601 duration string
249
- datevolt.duration(1,'day').humanize() // "a day"
250
- datevolt.duration(1,'day').humanize(true) // "in a day"
288
+ datevolt.duration({ hours: 1, minutes: 30 }).asMinutes() // 90
289
+ datevolt.duration('P1Y2M3DT4H5M6S') // ISO 8601 string
290
+
291
+ datevolt.duration(1, 'day').humanize() // "a day"
292
+ datevolt.duration(1, 'day').humanize(true) // "in a day"
251
293
 
252
294
  d.years() / d.months() / d.days() / d.hours() / d.minutes() / d.seconds()
253
295
  d.add(1, 'hour').subtract(30, 'minutes')
254
296
  d.clone()
255
- d.toISOString() // "P2D"
297
+ d.toISOString() // "P2D"
256
298
 
257
- // Add duration to date
258
- datevolt().add(datevolt.duration(2,'hours'))
299
+ // Use duration directly in add()
300
+ datevolt().add(datevolt.duration(2, 'hours'))
259
301
 
260
- datevolt.isDuration(d) // true
302
+ datevolt.isDuration(d) // true
261
303
  ```
262
304
 
305
+ ---
306
+
263
307
  ### Locale (i18n)
264
308
 
309
+ 7 built-in locales: `en`, `hi`, `es`, `fr`, `de`, `ar`, `ja`
310
+
265
311
  ```js
266
- // Set global locale
267
- datevolt.locale('hi'); // Hindi
268
- datevolt().format('MMMM D, YYYY'); // "जून 15, 2024"
312
+ // Global locale
313
+ datevolt.locale('hi');
314
+ datevolt().format('MMMM D, YYYY'); // "जून 15, 2024"
269
315
 
270
- // Per-instance locale
271
- datevolt().locale('es').format('MMMM'); // "junio"
316
+ // Per-instance
317
+ datevolt().locale('es').format('MMMM'); // "junio"
272
318
 
273
- // Built-in locales
274
- datevolt.locales(); // ['en','hi','es','fr','de','ar','ja']
319
+ // List available
320
+ datevolt.locales(); // ['en', 'hi', 'es', 'fr', 'de', 'ar', 'ja']
275
321
 
276
- // Define custom locale
322
+ // Custom locale
277
323
  datevolt.defineLocale('mr', {
278
324
  name: 'mr',
279
- months: ['जानेवारी','फेब्रुवारी','मार्च',...],
325
+ months: ['जानेवारी', 'फेब्रुवारी', 'मार्च', ...],
280
326
  // ...
281
327
  });
282
328
 
283
- // Get locale data
329
+ // Locale data
284
330
  datevolt.localeData('en').months
285
331
  datevolt().localeData()
286
332
  ```
287
333
 
334
+ ---
335
+
288
336
  ### Static Methods
289
337
 
290
338
  ```js
291
- datevolt.max(a, b, c) // returns latest datevolt
292
- datevolt.min(a, b, c) // returns earliest datevolt
293
- datevolt.invalid() // returns an invalid datevolt
339
+ datevolt.max(a, b, c) // returns latest
340
+ datevolt.min(a, b, c) // returns earliest
341
+ datevolt.invalid() // invalid datevolt instance
294
342
  datevolt.normalizeUnits('y') // 'year'
295
- datevolt.version // '1.0.0'
296
- datevolt.fn // datevolt.prototype (for plugins)
343
+ datevolt.version // '1.0.1'
344
+ datevolt.fn // prototype (for plugins)
297
345
  ```
298
346
 
299
347
  ---
300
348
 
301
- ## React Native Usage
349
+ ## Migrating from moment.js
302
350
 
303
- Works directly with React Native CLI (Hermes and JSC). No special configuration needed:
304
-
305
- ```bash
306
- npm install datevolt
307
- ```
351
+ Drop-in replacement in most cases just change the import:
308
352
 
309
353
  ```js
310
- // In your component
311
- import datevolt from 'datevolt'; // ESM syntax works too with Metro
312
- // or
313
- const datevolt = require('datevolt');
354
+ // Before
355
+ const moment = require('moment');
356
+ moment().format('YYYY-MM-DD');
314
357
 
315
- const DateDisplay = () => {
316
- const [display, setDisplay] = React.useState(datevolt().format('LL'));
317
- return <Text>{display}</Text>;
318
- };
358
+ // After
359
+ const datevolt = require('datevolt');
360
+ datevolt().format('YYYY-MM-DD');
319
361
  ```
320
362
 
321
363
  ---
322
364
 
323
- ## Why datevolt over moment?
324
-
325
- | Feature | moment | datevolt |
326
- |---------|--------|--------|
327
- | Size (minified) | ~290 KB | ~25 KB |
328
- | Size (gzipped) | ~72 KB | ~8 KB |
329
- | Dependencies | 0 | 0 |
330
- | Tree-shakeable | ❌ | ✅ |
331
- | Immutable option | ❌ | ✅ `.clone()` |
332
- | React Native safe | ⚠️ | ✅ |
333
- | API compatible | ✅ | ✅ |
334
-
335
- ---
336
-
337
365
  ## License
338
366
 
339
- MIT
367
+ MIT © [shaikh-saqlain](https://github.com/shaikh-saqlain)
package/package.json CHANGED
@@ -1,11 +1,11 @@
1
1
  {
2
2
  "name": "datevolt",
3
- "version": "1.0.1",
3
+ "version": "1.0.3",
4
4
  "description": "A complete, lightweight, zero-dependency date library with a moment.js-compatible API. Built for React Native CLI (Android & iOS), Node.js, and browsers.",
5
5
  "main": "src/index.js",
6
6
  "react-native": "src/index.js",
7
7
  "files": [
8
- "src/",
8
+ "dist/",
9
9
  "README.md",
10
10
  "LICENSE"
11
11
  ],