nextcloud-libraries / nextcloud-libraries/nextcloud-vue
Library size report
Nobody has claimed this yet.
- Dominant language
- Vue
- Stars
- 246
- Forks
- 99
- Avg merge
- 1d 20h
- Merged PRs (30d)
- 103
Description
Individual bundle impact of every component when bundled with Vite, @nextcloud/vite-config, @nextcloud/axios, @nextcloud/capabilities and @nextcloud/router.
Note: using 2 components together doesn't always result in a double size.
Common parts are reused. For example, if
NcSelectUseris used, addingNcSelectandNcAvatardoesn't change the bundle size, as these components are included intoNcSelectUseralready.
Version: v9.3.3
- Initial: how much JS loaded initially after importing the item
- Async: how much JS loaded asynchronously, e.g. when a specific function is used
- Assets: CSS size
- Total: sum
| Item | Initial Size | Async Size | Assets Size | Total Size |
|---|---|---|---|---|
| 🥇 components/NcRichContenteditable | 1239.53 kb | - | 75.22 kb | 1314.75 kb |
| 🥈 components/NcEmojiPicker | 1150.20 kb | - | 36.61 kb | 1186.82 kb |
| 🥉 functions/emoji => emojiSearch | 868.70 kb | - | - | 868.70 kb |
| 4️⃣ components/NcRichText | 390.69 kb | 162.25 kb | 65.85 kb | 618.79 kb |
| 5️⃣ components/NcDateTimePicker | 334.48 kb | - | 60.18 kb | 394.67 kb |
| 6️⃣ components/NcCollectionList | 280.43 kb | - | 42.90 kb | 323.33 kb |
| 7️⃣ functions/reference => getLinkWithPicker | 273.79 kb | - | 46.08 kb | 319.87 kb |
| 8️⃣ components/NcSelectUsers | 248.14 kb | - | 40.33 kb | 288.47 kb |
| 9️⃣ components/NcDashboardWidget | 203.82 kb | - | 29.04 kb | 232.85 kb |
| 🔟 functions/reference => searchProvider | 201.24 kb | - | 46.08 kb | 247.32 kb |
| functions/reference => getProvider | 200.89 kb | - | 46.08 kb | 246.98 kb |
| functions/reference => getProviders | 200.79 kb | - | 46.08 kb | 246.87 kb |
| functions/reference => sortProviders | 200.63 kb | - | 46.08 kb | 246.72 kb |
| functions/reference => hasInteractiveView | 200.49 kb | - | 46.08 kb | 246.57 kb |
| functions/reference => anyLinkProviderId | 200.43 kb | - | 46.08 kb | 246.51 kb |
| components/NcUserBubble | 198.61 kb | - | 26.11 kb | 224.72 kb |
| components/NcListItemIcon | 197.65 kb | - | 26.63 kb | 224.29 kb |
| components/NcDashboardWidgetItem | 196.84 kb | - | 26.66 kb | 223.50 kb |
| components/NcAvatar | 193.97 kb | - | 25.32 kb | 219.29 kb |
| components/NcActionInput | 175.99 kb | 323.81 kb | 83.18 kb | 582.99 kb |
| components/NcColorPicker | 171.77 kb | - | 14.22 kb | 185.99 kb |
| components/NcAppSidebar | 171.29 kb | - | 21.79 kb | 193.08 kb |
| components/NcAppSettingsDialog | 169.33 kb | - | 21.45 kb | 190.78 kb |
| components/NcDialog | 159.98 kb | - | 19.45 kb | 179.42 kb |
| components/NcModal | 151.58 kb | - | 17.23 kb | 168.81 kb |
| components/NcAppNavigationItem | 147.26 kb | - | 21.13 kb | 168.39 kb |
| components/NcBreadcrumbs | 128.85 kb | - | 19.51 kb | 148.35 kb |
| components/NcChip | 119.36 kb | - | 14.92 kb | 134.27 kb |
| components/NcListItem | 116.74 kb | - | 16.46 kb | 133.20 kb |
| components/NcBreadcrumb | 114.02 kb | - | 11.58 kb | 125.60 kb |
| components/NcAppNavigationCaption | 111.10 kb | - | 11.10 kb | 122.20 kb |
| components/NcActions | 109.99 kb | - | 10.12 kb | 120.11 kb |
| components/NcSelectTags | 100.11 kb | - | 14.04 kb | 114.15 kb |
| components/NcTimezonePicker | 94.12 kb | - | 14.04 kb | 108.16 kb |
| components/NcSettingsSelectGroup | 93.94 kb | - | 14.29 kb | 108.23 kb |
| components/NcPopover | 90.90 kb | - | 2.50 kb | 93.40 kb |
| components/NcSelect | 86.15 kb | - | 14.04 kb | 100.19 kb |
| components/NcRelatedResourcesPanel | 74.31 kb | - | 9.72 kb | 84.03 kb |
| components/NcHeaderMenu | 61.14 kb | - | 8.05 kb | 69.19 kb |
| components/NcAppNavigation | 57.99 kb | - | 9.58 kb | 67.58 kb |
| components/NcAppContent | 56.10 kb | - | 12.70 kb | 68.80 kb |
| components/NcContent | 52.47 kb | - | 8.38 kb | 60.86 kb |
| components/NcPasswordField | 51.07 kb | - | 14.46 kb | 65.53 kb |
| functions/usernameToColor => usernameToColor | 48.41 kb | - | - | 48.41 kb |
| components/NcAppNavigationSettings | 47.55 kb | - | 7.60 kb | 55.15 kb |
| functions/emoji => getCurrentSkinTone | 46.79 kb | - | - | 46.79 kb |
| functions/emoji => setCurrentSkinTone | 46.77 kb | - | - | 46.77 kb |
| functions/emoji => emojiAddRecent | 46.70 kb | - | - | 46.70 kb |
| components/NcTextField | 46.26 kb | - | 14.27 kb | 60.53 kb |
| components/NcAppNavigationSearch | 46.23 kb | - | 15.00 kb | 61.23 kb |
| components/NcUserStatusIcon | 43.74 kb | - | 0.55 kb | 44.30 kb |
| components/NcCheckboxRadioSwitch | 42.70 kb | - | 9.66 kb | 52.36 kb |
| components/NcAppNavigationNewItem | 42.31 kb | - | 13.78 kb | 56.09 kb |
| components/NcDialogButton | 35.65 kb | - | 7.20 kb | 42.85 kb |
| components/NcDateTime | 35.47 kb | - | - | 35.47 kb |
| composables/useFormatDateTime => useFormatRelativeTime | 33.23 kb | - | - | 33.23 kb |
| components/NcInputField | 32.53 kb | - | 14.27 kb | 46.80 kb |
| composables/useFormatDateTime => useFormatTime | 31.82 kb | - | - | 31.82 kb |
| components/NcDateTimePickerNative | 31.17 kb | - | 2.23 kb | 33.40 kb |
| components/NcSettingsSection | 30.34 kb | - | 1.17 kb | 31.51 kb |
| components/NcTextArea | 30.04 kb | - | 5.37 kb | 35.40 kb |
| components/NcActionButton | 28.42 kb | - | 3.28 kb | 31.69 kb |
| components/NcActionTextEditable | 28.35 kb | - | 8.17 kb | 36.52 kb |
| components/NcActionCheckbox | 28.23 kb | - | 3.46 kb | 31.69 kb |
| components/NcActionRadio | 27.83 kb | - | 3.42 kb | 31.25 kb |
| components/NcActionButtonGroup | 27.45 kb | - | 1.34 kb | 28.79 kb |
| components/NcNoteCard | 25.42 kb | - | 2.33 kb | 27.74 kb |
| components/NcIconSvgWrapper | 22.96 kb | - | 0.95 kb | 23.91 kb |
| components/NcCounterBubble | 22.89 kb | - | 1.26 kb | 24.14 kb |
| components/NcBlurHash | 22.48 kb | - | 0.20 kb | 22.68 kb |
| components/NcAppSidebarHeader | 18.92 kb | - | - | 18.92 kb |
| directives/Linkify => Linkify | 17.68 kb | - | - | 17.68 kb |
| functions/preloadImage => preloadImage | 10.27 kb | - | - | 10.27 kb |
| components/NcHeaderButton | 5.47 kb | - | 7.28 kb | 12.75 kb |
| components/NcAppNavigationNew | 4.83 kb | - | 6.34 kb | 11.18 kb |
| components/NcAppSettingsSection | 4.76 kb | - | 1.12 kb | 5.88 kb |
| components/NcButton | 4.08 kb | - | 6.08 kb | 10.17 kb |
| components/NcActionRouter | 3.82 kb | - | 2.31 kb | 6.13 kb |
| components/NcActionLink | 3.74 kb | - | 2.07 kb | 5.81 kb |
| composables/useIsDarkTheme => useIsDarkTheme | 3.73 kb | - | - | 3.73 kb |
| components/NcEllipsisedOption | 3.56 kb | - | 0.53 kb | 4.08 kb |
| composables/useIsDarkTheme => useIsDarkThemeElement | 3.40 kb | - | - | 3.40 kb |
| functions/registerReference => renderWidget | 3.26 kb | - | - | 3.26 kb |
| functions/registerReference => renderCustomPickerElement | 3.24 kb | - | - | 3.24 kb |
| components/NcProgressBar | 3.21 kb | - | 1.42 kb | 4.63 kb |
| components/NcActionText | 3.21 kb | - | 2.37 kb | 5.58 kb |
| functions/registerReference => getCustomPickerElementSize | 3.09 kb | - | - | 3.09 kb |
| functions/registerReference => destroyCustomPickerElement | 3.08 kb | - | - | 3.08 kb |
| functions/registerReference => destroyWidget | 3.07 kb | - | - | 3.07 kb |
| functions/registerReference => NcCustomPickerRenderResult | 3.03 kb | - | - | 3.03 kb |
| functions/registerReference => isCustomPickerElementRegistered | 3.02 kb | - | - | 3.02 kb |
| functions/registerReference => isWidgetRegistered | 3.01 kb | - | - | 3.01 kb |
| functions/registerReference => registerWidget | 2.96 kb | - | - | 2.96 kb |
| functions/registerReference => registerCustomPickerElement | 2.96 kb | - | - | 2.96 kb |
| composables/useHotKey => useHotKey | 2.57 kb | - | - | 2.57 kb |
| functions/contactsMenu => registerContactsMenuAction | 2.51 kb | - | - | 2.51 kb |
| components/NcAppSidebarTab | 2.48 kb | - | 0.50 kb | 2.98 kb |
| functions/contactsMenu => getEnabledContactsMenuActions | 2.41 kb | - | - | 2.41 kb |
| components/NcEmptyContent | 2.33 kb | - | 1.14 kb | 3.47 kb |
| components/NcHighlight | 1.75 kb | - | - | 1.75 kb |
| components/NcLoadingIcon | 1.68 kb | - | 0.33 kb | 2.01 kb |
| components/NcSavingIndicatorIcon | 1.67 kb | - | - | 1.67 kb |
| components/NcGuestContent | 1.22 kb | - | 0.65 kb | 1.87 kb |
| components/NcThemeProvider | 1.21 kb | - | - | 1.21 kb |
| components/NcAppContentList | 1.11 kb | - | - | 1.11 kb |
| components/NcActionCaption | 1.08 kb | - | 0.52 kb | 1.60 kb |
| components/NcAppNavigationList | 1.03 kb | - | 0.38 kb | 1.41 kb |
| components/NcAppContentDetails | 0.96 kb | - | - | 0.96 kb |
| components/NcAppNavigationIconBullet | 0.84 kb | - | 0.47 kb | 1.31 kb |
| composables/useIsMobile => useIsMobile | 0.63 kb | - | - | 0.63 kb |
| composables/useIsMobile => useIsSmallMobile | 0.63 kb | - | - | 0.63 kb |
| composables/useIsFullscreen => useIsFullscreen | 0.58 kb | - | - | 0.58 kb |
| components/NcAppNavigationSpacer | 0.52 kb | - | 0.14 kb | 0.66 kb |
| components/NcActionSeparator | 0.51 kb | - | 0.32 kb | 0.83 kb |
| functions/dialog => spawnDialog | 0.47 kb | - | - | 0.47 kb |
| components/NcVNodes | 0.21 kb | - | - | 0.21 kb |
| functions/isDarkTheme => isDarkTheme | 0.17 kb | - | - | 0.17 kb |
| functions/isDarkTheme => checkIfDarkTheme | 0.17 kb | - | - | 0.17 kb |
| functions/a11y => isA11yActivation | 0.09 kb | - | - | 0.09 kb |
| directives/Focus => Focus | 0.04 kb | - | - | 0.04 kb |
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
The issue contains a Vite bundle-size report for the listed Nextcloud Vue components and functions, but names no source files, tests, or requested change. Start by clarifying whether the report should be regenerated or documented, then define completion as an updated report with the stated Initial, Async, Assets, and Total measurements.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- javascript, vite
- Domain
- documentation, performance
- Issue type
- Documentation
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 20/100