Skip to content

Redesign home dashboard, improve mobile responsiveness & rework settings/help pages#891

Open
RbVs wants to merge 19 commits intoDonkie:masterfrom
RbVs:master
Open

Redesign home dashboard, improve mobile responsiveness & rework settings/help pages#891
RbVs wants to merge 19 commits intoDonkie:masterfrom
RbVs:master

Conversation

@RbVs
Copy link
Copy Markdown

@RbVs RbVs commented Mar 24, 2026

Summary

  • Redesign the home page as a fixed-viewport dashboard with tabbed layout (Low Stock, By Material, By Manufacturer) and a right column (Recently Used, By Location)
  • Add empty state hero with welcome message and quick-add buttons for spools, filaments, and manufacturers
  • Move version display and Ko-fi button from sidebar footer to the top bar
  • Push Settings/Help menu items to the bottom of the sidebar
  • Redesign settings page as a side-panel layout (left nav + right content)
  • Improve help page with consistent page header and card layout
  • Comprehensive mobile optimizations across all pages

Home Page

  • New tabbed dashboard layout with KPI cards, low stock warnings, material/manufacturer breakdowns
  • Right column with recently used spools and location overview
  • Empty state hero when no spools exist, with quick-add CTA
  • 3 quick-add icon buttons (spool, filament, manufacturer) in dashboard header

Mobile Improvements

  • Home page: scrollable layout, compact 2x2 KPI grid, full-height sections
  • List pages (Spools, Filaments, Vendors, Locations): header buttons show only icons
  • Hamburger menu repositioned into the header row instead of overlapping page title
  • Version/Ko-fi display compact (icon-only) on mobile
  • Low-stock items: smaller color dots, wrapped layout, narrower progress bars

Settings Page

  • Side-panel layout: inline Menu on the left, content on the right
  • 4 panels: General, Extra Fields (Spool/Filament/Vendor)
  • No more URL-based routing — tabs switch content internally
  • Responsive: stacks vertically on mobile

Help Page

  • Wrapped in refine List for consistent page header
  • Content in themed Card with styled resource icons
  • Removed duplicate title

Other Changes

  • Add missing home.welcome and home.description i18n keys to 12 locales
  • Move "New Location" button into <List headerButtons> to match other list pages
  • Fix React hooks order violation in LocationContainer
  • Remove redundant "X Spools in Y locations" summary from locations page

Test Plan

  • Verify home dashboard layout on desktop (tabs, right column, KPI cards)
  • Verify home page empty state when no spools exist
  • Check mobile layout on all pages (home, spools, filaments, vendors, locations)
  • Confirm hamburger menu opens/closes correctly on mobile
  • Verify version and Ko-fi button visible in top bar (desktop: full text, mobile: compact)
  • Test quick-add buttons navigate to correct create pages
  • Settings: verify side-panel navigation switches between General and Extra Fields tabs
  • Settings: verify Extra Fields table editing, adding, deleting works
  • Help page renders with correct title and content
  • Check all 12 updated locale files render without missing key warnings

Screenshots

Index Lacations Settings Help

RbVs and others added 19 commits March 23, 2026 01:06
Replaces the basic flex-wrap layout with a responsive CSS grid, proper
card styling with borders and hover effects, weight progress bars on
spool cards, count badges per location, and uses Refine's List wrapper
for a consistent header. Empty locations now show a placeholder state.
Replace fixed 200px scroll height with horizontal max-content scroll
to match the table behavior on other pages.
Replace the auto-naming behavior with a modal that lets the user
enter a location name, with validation for empty and duplicate names.
Rebuild the home page with KPI cards, low stock alerts, material
breakdown bars, recently used timeline, and location overview in a
2:1 grid layout. Soften the global dark theme backgrounds from pure
black to warmer dark grays. Add i18n keys for all new dashboard
strings across all 28 locales.
Detect dark/light mode from theme tokens and switch surface palette
accordingly instead of hardcoding dark colors.
Use darker, saturated colors for material bars and badges in light
mode. Replace neon glow effects with subtle shadows. Adjust surface
palette for proper contrast on light backgrounds.
Use ThemedSider render prop to split menu items: main nav at top,
settings and help pushed to the bottom with a flex spacer and
divider. Version info and Ko-fi tip button now live in the sidebar
footer instead of the page footer.
Add icon-only buttons with tooltips for creating spools, filaments,
and manufacturers directly from the dashboard header.
da, el, fa, hu, ja, nl, sv, th, uk, zh, zh-Hant were missing both keys;
fr was missing only description.
Replaces the plain text empty state with a centered hero layout
featuring a themed icon, welcome message, and a styled CTA button
that navigates directly to spool creation.
- Replace scrollable dashboard grid with fixed viewport layout using
  tabs (Low Stock, By Material, By Manufacturer) and right column
  (Recently Used, By Location at 50/50 height)
- Extract layout styles from inline <style> tag to dedicated layout.css
- Override refine wrapper constraints for proper flex height chain
- Tab content expands to full height, individual sections scroll
- Add "By Manufacturer" tab showing vendor breakdown by spool count
…tions

- Move mobile media query block to end of home.css to win CSS cascade
  over desktop rules (height:100%, flex:1, min-height:100% etc.)
- KPI cards: 2x2 grid on mobile with compact padding/font sizes
- Dashboard, tabs, and right column all use natural height on mobile
- Refine wrapper switches to flex:none/height:auto on mobile so
  ant-layout-content handles scrolling
- All sections (tab content, recently used, locations) expand to
  full content height instead of internal scrolling
…summary

- Relocate version display and Ko-fi tip button from SiderFooter to Header
- Show compact (icon-only) version on mobile, full text on desktop
- Remove "X Spools in Y locations" summary line from locations page
- Fix React hooks order violation in LocationContainer (useState after early return)
…eader

- Add CSS to hide button text on mobile (<=768px), showing only icons
- Move "New Location" button from LocationContainer into List headerButtons
  to match spool/filament/vendor pattern and enable mobile icon-only styling
- Override sider hamburger top position from 64px to 12px on mobile
- Add marginLeft on mobile to prevent version/kofi overlapping hamburger
- Add min-width:0 to low-stock-info to prevent overflow
- Smaller color dots, wrapped layout, and narrower progress bars on mobile
Settings:
- Replace horizontal menu + routes with inline Menu side-panel + content area
- Wrap in refine List for consistent page header
- ExtraFieldsSettings takes entityType as prop instead of useParams
- Responsive: stacks vertically on mobile

Help:
- Wrap in refine List for consistent page header
- Content in Card with themed icons
- Hide duplicate title from i18n content

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant