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

Inferred Topics on the UI to test ML Inference in Topics #501

Merged
merged 21 commits into from
Oct 28, 2024

Conversation

tfnribeiro
Copy link
Contributor

  • Added display for the New Topics, this is hidden behind a feature to allow testing without rolling it out for users
  • Added an explanation Modal to the topics (in case the user clicks the new topics)
  • Users can dismiss the Inferred topics in case they don't want to see it anymore
  • The Topic Icons were made slightly larger so it's easier to click the dismiss icon
  • Added a small highlighting when selecting when selecting interests and allow the user to click on Non-interests without closing Interests

Changed topic UI

image

image

Explanation Modal

image

Interest Highlighting

image

image

Copy link

netlify bot commented Aug 23, 2024

Deploy Preview for voluble-nougat-015dd1 ready!

Name Link
🔨 Latest commit de49280
🔍 Latest deploy log https://app.netlify.com/sites/voluble-nougat-015dd1/deploys/671f8afc470b6200088310d8
😎 Deploy Preview https://deploy-preview-501--voluble-nougat-015dd1.netlify.app
📱 Preview on mobile
Toggle QR Code...

QR Code

Use your smartphone camera to open QR code link.

To edit notification comments on pull requests, go to your Netlify site configuration.

- Removed the Interests Non-Interests buttons from the front page as their function is a bit confusing. I decided to leave the code, as I think it can be useful if we ever want to work on a search filter configuration.
- Changed styling for Search bar to look more in line with other input fields in Zeeguu.
- Added a search bar to the searches page
- Added links and a small description of how user can change what gets suggested in Home.
@tfnribeiro
Copy link
Contributor Author

tfnribeiro commented Oct 11, 2024

As a preparations for the new topics, we are going to remove the Non-Interests "Topics". The idea is that a user picks what they like, not what they dislike to get everything else. Especially, with the new way of labeling most articles will tend to have 1 topic at most, so there is less of a situation where I might want Culture and NOT Politics.

This took us through some discussions and we ended up ending on a small text with links to describe that users can adjust their home in various ways:

{89A3ADCE-88E0-43F2-85CF-AE5F0A12F88D}

I really like this design, as I think it helps to explain how the home is generated for each user while also making it look cleaner.

I also added the search bar to the Search tabs:

{82768EDF-C389-40AA-A4C5-E95F731A59C1}

This avoids the user having to go Searches -> Home to search something if they notice they don't have a subscription they would like to have.

@mircealungu @igawaclawska You can use the preview if you want to give a try to how the home looks without the Interest / Non-Interests buttons.

- Articles don't update on preview, after changing them.
- Using redirect will not use a cached version of the webpage.
@tfnribeiro
Copy link
Contributor Author

tfnribeiro commented Oct 11, 2024

I found that the useHistory uses the browser cache, which is a bit problematic in the context of updating the preferences, because the user will go back and not see an updated feed.

To get around this I added a GET parameter that is sent to the settings so the back behaviour uses redirect rather than history. Any other ideas would be welcome!

@igawaclawska
Copy link
Contributor

igawaclawska commented Oct 11, 2024 via email

@tfnribeiro
Copy link
Contributor Author

tfnribeiro commented Oct 11, 2024

We use that library to navigate, but in this case I think we do want a full re-render from the server otherwise I think we can run into the issue where we don't refresh the content due to Caching from the browser side.

I think I can see why you'd want to prioritize caching if you are navigating Static pages, say we went to Wikipedia and I go somewhere and go back, there is no point in re-fetching the Page. However, in this case it's like a google search where you have changed the parameters that were used, and as such we need to get a completely new page. While we are still in the same application, the previous state is void, and we should get the server to send new information. Maybe I am wrong, but that's how I see it.

If we had a state that was being tracked in between these two places, I think we could use that instead, or pass a prop that would allow that (that's another alternative), but yeah I think it's a good discussion to have.

@igawaclawska
Copy link
Contributor

igawaclawska commented Oct 11, 2024

If we had a state that was being tracked in between these two places, I think we could use that instead, or pass a prop that would allow that (that's another alternative), but yeah I think it's a good discussion to have.

I think that useNavigate allows passing states as a prop (I still need to read up on it to learn how it works)
https://reactrouter.com/en/main/hooks/use-navigate#usenavigate

The downside is - our current react-router version may not support this hook. In that case, we could consider it sometime once it is updated.

@mircealungu mircealungu merged commit cce9159 into master Oct 28, 2024
4 checks passed
@mircealungu mircealungu deleted the add-inferred-topics-to-articleList branch October 28, 2024 15:14
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants