Skip to content

Resource usage overview & Tiles - #1074

Open
kesselb wants to merge 2 commits into
grid-migrationfrom
ui-polish
Open

Resource usage overview & Tiles#1074
kesselb wants to merge 2 commits into
grid-migrationfrom
ui-polish

Conversation

@kesselb

@kesselb kesselb commented Aug 8, 2026

Copy link
Copy Markdown
Collaborator

This PR

  • Adds resource usage overview pane
  • Introduces tiles for chart legends and loose stats
  • Dividers for the overview tables
  • Temp section moved down

Screenshots

Here

Screenshot From 2026-08-08 20-45-09

Main

Screenshot From 2026-08-08 20-44-27

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR updates the Server Info admin UI to add a resource-usage overview panel, introduce reusable “stat tile” UI for quick metrics/legends, and modernize section layouts (including table dividers and a grid-based responsive layout).

Changes:

  • Added a new “Resource usage” overview section and reorganized thermal info into its own section.
  • Introduced StatTile and updated multiple sections (CPU, Memory, Network, Disk, Shares) to use tiles/cards layouts.
  • Reworked global layout CSS from a custom flex/col grid to CSS grid with new row--cards / row--tiles patterns and table row dividers.

Reviewed changes

Copilot reviewed 19 out of 23 changed files in this pull request and generated 2 comments.

Show a summary per file
File Description
src/views/SettingsAdmin.vue Reorders top-level sections and adds the new ResourceOverviewSection.
src/main.css Replaces legacy flex/col grid with CSS grid; adds card/tile row variants and table dividers.
src/components/ThermalSection.vue Moves to server-info-table styling and rounds displayed temperatures.
src/components/SystemSection.vue Removes memory total display from the system table (now covered elsewhere).
src/components/StatTile.vue Adds new reusable tile component for compact stat display.
src/components/SharesSection.vue Refactors shares UI into card layout compatible with new grid CSS.
src/components/SectionHeading.vue Adds a class hook for heading layout styling.
src/components/ResourceOverviewSection.vue New resource usage overview (CPU/memory/swap) with progress bars.
src/components/NetworkSection.vue Adds tiles for hostname/gateway/DNS and cards for interfaces.
src/components/MonitoringSection.vue Switches to @nextcloud/vue form components and improves token UX.
src/components/MemoryChartSection.vue Adds stat tiles and a legend; improves swap handling and labels.
src/components/DiskSection.vue Adds tiles for disk summary stats and uses the new cards grid layout.
src/components/CpuChartSection.vue Adds stat tiles and refactors availability handling for CPU info display.
src/components/ActiveUsersSection.vue Simplifies structure to align with the new grid approach.
package.json Adds @nextcloud/vue dependency for new UI components.
js/serverinfo-main.mjs.map.license Updates generated license manifest due to dependency changes.
js/serverinfo-main.mjs.license Updates generated license manifest due to dependency changes.
css/serverinfo-main.css Updates compiled CSS entrypoint import to the new chunk filename.
css/main-C_6xGBMP.chunk.css Removes old compiled CSS chunk (replaced by new chunk).
css/main-BTohkNMz.chunk.css Adds new compiled CSS chunk reflecting UI/layout changes.
Files not reviewed (1)
  • css/main-BTohkNMz.chunk.css: Generated file

💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.

Comment on lines +64 to +76
const rows = computed(() => {
const memTotal = props.memTotal
const swapTotal = props.swapTotal

return [
props.cpuload === false || props.cpunum <= 0
? null
: {
label: t('serverinfo', 'CPU'),
detail: ((props.cpuload[0] / props.cpunum) * 100).toFixed(1) + ' %',
// Load can exceed the thread count, so the bar caps where the caption does not.
percentage: Math.min(100, Math.round((props.cpuload[0] / props.cpunum) * 100)),
},

const footerText = computed(() => {
const stats = computed(() => {
if (props.cpuload === false || props.cpunum <= 0) {
@kesselb
kesselb force-pushed the ui-polish branch 2 times, most recently from 95552aa to 01c0c9f Compare August 8, 2026 18:50
@kesselb kesselb self-assigned this Aug 8, 2026
@nextcloud-command nextcloud-command added the AI assisted This PR contains AI-assisted commits label Aug 8, 2026
@kesselb
kesselb requested a review from ChristophWurst August 8, 2026 20:33
kesselb added 2 commits August 9, 2026 16:02
Replace the chart legends and the loose stat paragraphs with tiles, add
a resource usage overview beside the system table, give both tables row
dividers and move the temperature section down the page.

Assisted-by: ClaudeCode:claude-opus-5
Signed-off-by: Daniel Kesselberg <mail@danielkesselberg.de>
Signed-off-by: Daniel Kesselberg <mail@danielkesselberg.de>
@kesselb kesselb added this to the Nextcloud 35 milestone Aug 9, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

3. to review AI assisted This PR contains AI-assisted commits enhancement

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants