Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Dashboard layout component #6626

Open
15 of 21 tasks
rolfsmeds opened this issue Jul 28, 2024 · 0 comments
Open
15 of 21 tasks

Dashboard layout component #6626

rolfsmeds opened this issue Jul 28, 2024 · 0 comments
Labels
acceptance criteria used for the acceptance criteria checklist DS Design System feature (e.g. component) Pro Requires Pro subscription

Comments

@rolfsmeds
Copy link
Collaborator

rolfsmeds commented Jul 28, 2024

Description

A component for responsive, grid-based dashboards.

Acceptance criteria

  • Automatically placed widgets (no API for setting widget in specific column and row)
  • Responsive
    • Number of columns vary depending on component width and minimum column width
    • Widgets automatically wrap to new lines as needed
  • Items can span multiple columns
    • Actual column span is capped to currently available columns
  • Row height determined by tallest widget in the row
  • Built-in scroll container
  • Configuration options (can be CSS properties)
    • Minimum column width (defaults to something like 15rem)
    • Max column count (defaults to null)
    • Max column width (defaults to something like 30rem)
    • Gap size (defaults to something like 1rem / --lumo-space-m)

Future additions / Nice-to-haves

(excluded from acceptance criteria)

  • Row span
  • Configurable, fixed row height
  • "Dense" layout that attempts to fill gaps
  • Auto-colspan/rowspan based on widget content size
  • Dashboard sections for grouping together widgets (optionally with titles)
  • Databindable dashboard (for loading and storing widgets through an items API) with
    • Drag & drop widget reordering, with keyboard support
    • Drag & drop widget resizing (colspan/rowspan), with keyboard support
    • Mechanism for enabling live regions for screen reader announcements of these operations
    • An easy way to serialize the current dashboard configuration into a string, for persisting in a DB, local storage, or whatever you like.

General criteria

  • APIs reviewed
  • Design (as this is just a layout, there is no design per se)

  • Performance

  • UX/DX tests in Alpha
  • Documentation:
  • How to test?
  • Limitations:

Security

  • Security implications have been taken into account (elaborate or link to product security requirement specification if there are implications)
@rolfsmeds rolfsmeds added acceptance criteria used for the acceptance criteria checklist DS Design System feature (e.g. component) labels Jul 28, 2024
@rolfsmeds rolfsmeds changed the title Dashboard component Dashboard component(s) Aug 13, 2024
@rolfsmeds rolfsmeds changed the title Dashboard component(s) Dashboard layout component Aug 13, 2024
@rolfsmeds rolfsmeds added the Pro Requires Pro subscription label Aug 15, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
acceptance criteria used for the acceptance criteria checklist DS Design System feature (e.g. component) Pro Requires Pro subscription
Projects
Status: December 2024 (24.6)
Development

No branches or pull requests

1 participant