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

Programming exercises: Improve task bar design #10095

Merged
merged 7 commits into from
Jan 5, 2025

Conversation

PaRangger
Copy link
Contributor

@PaRangger PaRangger commented Jan 2, 2025

Checklist

General

Client

  • Important: I implemented the changes with a very good performance, prevented too many (unnecessary) REST calls and made sure the UI is responsive, even with large data (e.g. using paging).
  • I strictly followed the client coding and design guidelines.
  • Following the theming guidelines, I specified colors only in the theming variable files and checked that the changes look consistent in both the light and the dark theme.
  • I added multiple screenshots/screencasts of my UI changes.

Motivation and Context

Currently, the task bar in a programming exercise looks a bit out of place. It looks like this:

Bildschirmfoto 2025-01-02 um 15 31 44

There was a design mockup on figma for a new task bar here: https://www.figma.com/design/BGx58G5OhhCUOToD6cPKQA/Artemis-Navigation-Flow?node-id=4165-64510&m=dev&t=7vXtR0SZJZA94hEN-1

Description

I changed the html and css so that the design looks more like the design in figma.

Steps for Testing

Prerequisites:

  • To test this, you need to deploy on a testserver that has the coding lifecycle enabled. For example Testserver 3.
  • On TS3 in my course "Test Course Paul Rangger" with Test User 1 I have a programming exercise that was commited to. With this you can skip the steps 6 to 11.
  • 1 Student
  • 1 Course with a fresh programming exercise
  1. Log in to Artemis
  2. Go to course
  3. Go to the exercises tab
  4. Go to the programming exercise
  5. Check the default task bar styling
  6. Press the start exercise button on the top right
  7. Get the repository link
  8. Checkout the repository
  9. Implement something so that atleast one check will fail and one check will pass (example bubble sort implementation at the bottom, if you kept the default repo)
  10. Commit and push your changes
  11. Wait for the tests to run
  12. Check the styling of the failing and running tests

You may take this to have a successful test in bubble sort:

int n = input.size();
for (int i = 0; i < n - 1; i++) {
    for (int j = 0; j < n - i - 1; j++) {
        if (input.get(j).compareTo(input.get(j + 1)) > 0) {
            Date temp = input.get(j);
            input.set(j, input.get(j + 1));
            input.set(j + 1, temp);
        }
    }
}

Testserver States

Note

These badges show the state of the test servers.
Green = Currently available, Red = Currently locked
Click on the badges to get to the test servers.







Review Progress

Performance Review

Code Review

  • Code Review 1
  • Code Review 2

Manual Tests

  • Test 1
  • Test 2

Test Coverage

Screenshots

Bildschirmfoto 2025-01-03 um 13 08 35 Bildschirmfoto 2025-01-03 um 13 08 11

Summary by CodeRabbit

  • UI/UX Improvements

    • Updated icons for unexecuted and no-result states in step wizard and task status components.
    • Enhanced styling for step wizard layout with new classes and positioning.
    • Refined button and step styling with improved font sizes and spacing.
  • Style Updates

    • Added new SCSS variables for consistent font and button sizing.
    • Modified padding and justification for various UI elements.
    • Introduced new style variants for step states (failed, success, no result).

@PaRangger PaRangger added client Pull requests that update TypeScript code. (Added Automatically!) small programming Pull requests that affect the corresponding module labels Jan 2, 2025
@PaRangger PaRangger self-assigned this Jan 2, 2025
@github-actions github-actions bot removed the programming Pull requests that affect the corresponding module label Jan 2, 2025
@PaRangger PaRangger changed the title Programming Exercises: Implement new task bar design Programming exercises: Implement new task bar design Jan 3, 2025
@PaRangger PaRangger temporarily deployed to artemis-test3.artemis.cit.tum.de January 3, 2025 09:48 — with GitHub Actions Inactive
Copy link
Contributor

@DominikRemo DominikRemo left a comment

Choose a reason for hiding this comment

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

Tested on ts4. Changes look good to me in normal programming exercises and in exam mode programming exercises :)

Btw.: You can easily pass the bubble sort test in the example exercises using
Collections.sort(input); ;)

Copy link

@Feras797 Feras797 left a comment

Choose a reason for hiding this comment

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

tested on ts3, the progress bar has the correct view before and after pushing 👍

Copy link

@Cathy0123456789 Cathy0123456789 left a comment

Choose a reason for hiding this comment

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

Tested on TS3. Everything looks as described.
Honestly I liked the old design though, the grey background made the progress bar stand out more and the dots were a bit bigger, but I guess that's just taste, maybe I just got used to it

Copy link
Contributor

@coolchock coolchock left a comment

Choose a reason for hiding this comment

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

code

Copy link

@sawys777 sawys777 left a comment

Choose a reason for hiding this comment

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

Tested on TS3, everything works as expected, the new design looks clean.

@krusche krusche changed the title Programming exercises: Implement new task bar design Programming exercises: Improve task bar design Jan 5, 2025
@krusche krusche added this to the 7.8.2 milestone Jan 5, 2025
Copy link
Member

@krusche krusche left a comment

Choose a reason for hiding this comment

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

The new design looks awesome 👍 Thank you @PaRangger for the implementation and thanks to @rabeatwork for the Figma mockups

@krusche krusche added ready to merge maintainer-approved The feature maintainer has approved the PR labels Jan 5, 2025
@krusche krusche merged commit 1c58a6d into develop Jan 5, 2025
97 of 105 checks passed
@krusche krusche deleted the feature/programming-exercises/improve-task-display branch January 5, 2025 19:44
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
client Pull requests that update TypeScript code. (Added Automatically!) maintainer-approved The feature maintainer has approved the PR ready for review ready to merge small tests
Projects
Status: Merged
Development

Successfully merging this pull request may close these issues.

7 participants