Skip to content

[UX] Add Guided tour for Library, filters and Sidebar #4401

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

Merged
merged 14 commits into from
Mar 10, 2025
Merged

Conversation

flavioislima
Copy link
Member

@flavioislima flavioislima commented Mar 9, 2025

This adds two new help icons that will trigger a small guided tour, one for the library, gamecard and filters and another one for the Sidebar.

Gravar.a.tela_20250307_224042.mp4
Gravar.a.tela_20250307_221356.mp4

AI Summary

This pull request introduces a new guided tour feature using intro.js and intro.js-react to help users navigate the application. The changes include adding new dependencies, updating localization files, and creating new components for the tour functionality. Additionally, custom styles have been added to ensure the tour elements match the application's design.

New Guided Tour Feature:

  • Dependencies Added:

    • Added intro.js and intro.js-react to package.json and pnpm-lock.yaml to support the guided tour feature. [1] [2] [3] [4]
  • Localization Updates:

    • Updated public/locales/en/translation.json to include new strings for the tour feature.
  • New Components:

    • Added TourProvider to src/frontend/App.tsx to wrap the application and manage tour state. [1] [2] [3]
    • Created Tour component in src/frontend/components/Tour/Tour.tsx to handle the steps and options of the guided tour.
    • Created TourButton component in src/frontend/components/Tour/TourButton.tsx to trigger the guided tour.
  • Custom Styles:

    • Added custom styles for tour elements in src/frontend/components/Tour/Tour.scss and src/frontend/components/Tour/TourButton.scss to match the application's design. [1] [2]
  • Integration with Existing UI:

    • Integrated tour triggers and data attributes into existing components like ActionIcons, CategoryFilter, LibraryFilters, and LibrarySearchBar to guide users through different parts of the application. [1] [2] [3] [4] [5] [6] [7] [8] [9] [10]

These changes collectively enhance the user experience by providing an interactive guide to navigate and understand the application features.


Use the following Checklist if you have changed something on the Backend or Frontend:

  • Tested the feature and it's working on a current and clean install.
  • Tested the main App features and they are still working on a current and clean install. (Login, Install, Play, Uninstall, Move games, etc.)
  • Created / Updated Tests (If necessary)
  • Created / Updated documentation (If necessary)

@flavioislima flavioislima self-assigned this Mar 9, 2025
@flavioislima flavioislima added the pr:ready-for-review Feature-complete, ready for the grind! :P label Mar 9, 2025
@flavioislima flavioislima changed the title Feat/introjs [UX] Add Guided tour for Library, filters and Sidebar Mar 9, 2025
@flavioislima flavioislima added this to the 2.16.1 Hotfix milestone Mar 9, 2025
"title": "Enjoy your games!"
},
"filters": "Filter your games by store, platform, favorites and more using these options.",
"gameCard": "Right Click on thegame card to navigate to the game page and to see details and adjust settings or Left click to open the context menu.",
Copy link
Collaborator

Choose a reason for hiding this comment

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

These are backwards, left click opens the game page, right click opens the context menu

Copy link
Collaborator

Choose a reason for hiding this comment

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

also, when there are no games, this step is still displayed, but doesn't have a card to point

Copy link
Member Author

Choose a reason for hiding this comment

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

fixed

'info.heroic.click-to-see-changelog',
'Click to see changelog'
<div className="heroicVersionContainer" data-tour="sidebar-version">
<>
Copy link
Collaborator

Choose a reason for hiding this comment

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

we don't need this fragment if we are adding the wrapper div, it should make the diff less complicated cause it won't change the indentation of everything inside

Copy link
Member Author

Choose a reason for hiding this comment

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

removed

@flavioislima flavioislima requested a review from arielj March 10, 2025 20:28
@flavioislima flavioislima merged commit 741f317 into main Mar 10, 2025
9 checks passed
@flavioislima flavioislima deleted the feat/introjs branch March 10, 2025 21:25
@Heroic-Games-Launcher Heroic-Games-Launcher locked and limited conversation to collaborators Mar 10, 2025
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
pr:ready-for-review Feature-complete, ready for the grind! :P
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants