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 UI updates: sticky navbar, statuses as tabs #572

Merged
merged 11 commits into from
Apr 19, 2022

Conversation

bkeepers
Copy link
Contributor

I spent a few hours today playing around with a couple things that I would love to see improved with the dashboard.

  1. Make navbar sticky instead of footer (which doesn't really contain actionable information)
  2. Elevate the status filter to tabs. That is what I personally filter by most often.
  3. Move all filters above the chart since they affect the chart data.

image

Uses flex to push footer to bottom if body is smaller than viewport.
* origin/main:
  Release good_job v2.12.2
  Dashboard: added NL translations (bensheldon#568)
  Fix ru.yml filename
  Un-deprecate Adapter's `execution_mode` argument (bensheldon#567)
@bensheldon
Copy link
Owner

@bkeepers I think this looks fantastic. I think changing the States to Tabs is a big improvement. I like that the States are all immediately visible/discoverable rather than obscured within a dropdown.

I'm more than happy to merge this as is (not let perfect be the enemy of better). I'll share some other thoughts in the discussion you opened.

@bkeepers bkeepers changed the title WIP: UI updates UI updates Apr 19, 2022
@bkeepers bkeepers marked this pull request as ready for review April 19, 2022 15:42
Copy link
Contributor Author

@bkeepers bkeepers left a comment

Choose a reason for hiding this comment

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

@bensheldon sounds good. This should be ready whenever you are.

engine/config/locales/en.yml Show resolved Hide resolved
engine/config/locales/es.yml Outdated Show resolved Hide resolved
Copy link
Owner

@bensheldon bensheldon left a comment

Choose a reason for hiding this comment

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

👍 Thank you!

Lemme know if I can help get the tests passing. I'm eager to get this merged.

@bkeepers
Copy link
Contributor Author

Tests should all be passing now.

@bensheldon
Copy link
Owner

@bkeepers btw, while it's fresh in your mind, I'd love if you have any feedback/suggestions for improving the Readme's contributor section for getting started.

@bensheldon bensheldon changed the title UI updates Dashboard UI updates: sticky navbar, statuses as tabs Apr 19, 2022
@bensheldon bensheldon added the enhancement New feature or request label Apr 19, 2022
@bensheldon bensheldon merged commit b5588b6 into bensheldon:main Apr 19, 2022
@bkeepers bkeepers deleted the ui-update branch April 20, 2022 02:21
@bkeepers
Copy link
Contributor Author

@bkeepers btw, while it's fresh in your mind, I'd love if you have any feedback/suggestions for improving the Readme's contributor section for getting started.

At first I didn't realize there was a test rails app that generates jobs, so that would have saved me some time getting another app set up and in a state where I could see jobs in various states. Just documenting bin/test_app server would be great.

@multiplegeorges
Copy link
Contributor

@bkeepers Just updated the gem and saw that the filter dropdowns I added were gone, but the tabs are way better! Looks great, much more discoverable and surfacing the number in each is great for scanning.

👍

@bensheldon
Copy link
Owner

@multiplegeorges yay! Glad you like it too! 🎉

@bkeepers I was staring at the tab counts working on #578 and realized that I think the tab counts are incorrect: the numbers should be within the context of the filter, not absolute. If I made that change to have counts relative to the filter, I think the other filter options (Job Class, Queues, Search) should go above the tabs. Functionally I don't think anything would change though 🤔

These counts should be based off of filtered_query not base_query:

def states
{
'scheduled' => base_query.scheduled.count,
'retried' => base_query.retried.count,
'queued' => base_query.queued.count,
'running' => base_query.running.count,
'finished' => base_query.finished.count,
'discarded' => base_query.discarded.count,
}
end

@bkeepers
Copy link
Contributor Author

@bkeepers I was staring at the tab counts working on #578 and realized that I think the tab counts are incorrect…

@bensheldon ah, good catch. I can get a PR for that soon unless someone beats me to it.

If I made that change to have counts relative to the filter, I think the other filter options (Job Class, Queues, Search) should go above the tabs.

I was actually thinking about moving the filters inline with the tabs, hidden behind a filter icon with a dropdown menu. Not sure if that makes sense, but I'll get a PR open for it soon so we can discuss.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants