-
-
Notifications
You must be signed in to change notification settings - Fork 445
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
[UI/UX] Show onboarding modal/screen explaining Heroic main features when opening Heroic the first time #2050
Comments
I'd like to work on it. <3333 I thought doing this would be easier. |
Nice, if you have any questions or need help just get in touch on our discord. |
@HeIIow2 any progress on this one? :) |
@flavioislima Nahhh I was to not smart, I couldn't the application, even with the discord. Once I get a new set up I will look at contributing again, till then I've given up <3333 Sorry for not making this clearer <333333333333333333333333 |
@flavioislima maybe we could use this: There would be some issues to sort such as:
I got my hands kinda full rn but I'm willing to give it a shot with intro.js, it's just gonna be kinda slow. |
This can be connected to what I was doing here #3135 to include a The issue I have with onboarding screens is that people have no context about how the app works when they open it for the first time, and too much information at once is just overwhelming. The initial implementation of my Help component there is that it will show help specific to the current screen to reduce the number of topics a user see at different screens. |
@arielj i agree that having too much info on first launch is not ideal. But at the same time having no info at all is not good as well. we should try to do a simple on-board only talking about basic heroic features and how to do them. I have in mind some things like:
But in small texts not a lot of info. And then the help component, like you said, can give context to some screens and other features that are hard to find right now. @lgcavalheiro this looks cool. If you have the time I would like to see a implementation with that 🙂 |
The thing for me is that maybe there's another place to put that info without creating an onboarding flow (that, at least in my experience, users just dismiss because they want to just use the app, so you need a way to show that again on demand later?). For example: for how to login, add a sideloaded game, or refresh the library, maybe it's better to have a text in the Library body when it's empty saying "Your library is empty! Login to Epic/GOG/Amazon if you haven't, you can also install games manually with this button. If you are logged in and still can't see your game, refresh your library click the (icon) icon." Currently we just show a big empty space and give users no context of what to do. Users can't dismiss that and it's in the center of the library, they will have no excuse for not reading that or not knowing what to do next. For how to download wine, maybe during the install dialog of a game that requires it, if they don't have any wine installed we can show a warning and take them to the Wine Manager section, and in the Wine Manager section explain what it is and what's wine vs proton. They will see the information when they need it. For users to learn about cloud saved, maybe the first time a game is launched and it supports cloud saves we can show a prompt saying I'm fine having an onboarding stuff if it's needed, but I think it doesn't replace having that information outside of the onboarding when possible next to the place that needs that info. |
I mean, depending on how we implement this, we can have the best of both worlds, intro.js also has support for hints: https://introjs.com/docs/examples/basic/hints |
@arielj , yes for sure. That will be really helpful. So a modal with a few pages and not a lot of text is useful. some people will skip, for sure. But that is not on us. I tend to read all onboarding modals I get on mobile and desktop apps that has it. But I know not everyone does, that is fine I guess. |
@flavioislima @arielj Hi guys! I drafted a POC of this feature using intro.js: #3346 Basically what i did was merge #3135 into my branch and set the Help Component there in such a way where it can control the tutorials made using intro.js whenever possible (for dialogs i made them just appear alongside the dialog). Here's a video showcasing the functionalities: finalforpoc.webmI Implemented just the tutorials that Flavio mentioned earlier in this POC:
Regarding development aspects, here's how it went:
I wanted to make this POC available to you before Christmas, since i will be pretty busy with my post-grad up until March, which is why i haven't spent more time trying to fix some of the caveats mentioned above, i will be available to program some more stuff for this every now and then, but if you want to take this over go ahead. Oh yeah also Happy Holidays! :) |
When searching for onboarding libs, i've also found these if anyone is interested: |
@lgcavalheiro sorry for the late feedback, saw this when you posted but forgot to say anything. |
Really loved driverjs, looks amazing. |
@flavioislima sure thing thx! not sure about some of the stuff related to the caveats i encountered thought (e.g.: some screens not playing well with steps making me resort to hints, or the tooltips not being able to be moved to popover api. Makes me wish for an onboarding lib that leverages React's power...). Could try implementing with driver.js (actually using it at work too), but i don't think it will make much of a difference regarding the caveats, these libs all work more or less in the same way and stuff.... Oh yeah and maybe have a chat with the UX/UI ppl about what to teach via the tutorials, step order, copy and stuff |
Hey guys, I'd love to help with this. I'm an Interaction Dev (UX Designer who codes && a Dev who likes users rolled into one) who has, amongst many things, worked on UK government projects so I'm quite keen on user friendly solutions that are also accessible. If you're open to working together, could you please put me in touch with your UX/UI folks? It would be good to first nail down the actual user needs but as for the solution/tech, I agree with @arielj that welcome modals don't work (and the research agrees as well). They are actually notoriously bad for UX. Contextual help is the way to go. I've taken a quick gander at both intro.js and driver.js and the The long opinionIntro.js1, overlay system (the pulsing bit) is not very visible, probably not even passing contrast requirements but even users with good sight might not notice them Driver.js1, Much better UX, giving you the option to provide better structured context even in multi-step form |
Problem description
Heroic nowadays have some features that not everyone knows about like Add Game to Steam, Cloud sync Saves, Wine/Proton download/manager and so on.
Most people installing heroic the first time and even after a while might never discover these features.
Feature description
Show a Onboarding Modal or screen that compiles the main Heroic features. With maybe screenshots and video tutorials, a link to documentation, github issues and discord.
Having a proper guide with an overlay with arrows and explanations would be ideal but that might be too complex.
Alternatives
No response
Additional information
No response
The text was updated successfully, but these errors were encountered: