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

WIP / [front] feat: add pages Top Videos, For You and Search #1984

Draft
wants to merge 84 commits into
base: main
Choose a base branch
from

Conversation

GresilleSiffle
Copy link
Collaborator

@GresilleSiffle GresilleSiffle commented Jun 13, 2024

related issues #1983


Description

back end

The back end has a new set of settings to allow the users to configure the feeds For you and Top items. The legacy settings starting with recommendations__ are kept to not break the old versions of the browser extension.

browser extension

The browser extension doesn't rely any more on the tournesol.app local storage to set the recommendations languages for anonymous users. The legacy strategy is now fully replaced by the usage of the extension local settings for anonymous users and by the "online" settings for logged-in users.

to-do

feed - for you

  • back end
    • add new settings, and test them
      • feed_foryou__languages
      • feed_foryou__date
      • feed_foryou__unsafe
      • feed_foryou__exclude_compared_entities
    • migrate the settings recommendations__ to feed_foryou__
  • front end
    • preferences
      • add new fields
      • add a new fieldset
      • translate them
      • fix the component tests
      • fix and make the e2e tests more relevant
    • feed page
      • use the settings
        • initialize the languages
      • use the poll setting defaultFiltersFeedForYou
      • add a link to Preferences
      • add a link to Search
        • with the current search parameters
      • check the deleted tests
  • tests
    • add e2e tests of the new feed page
  • browser extension
    • use the new setting feed_foryou__languages

feed - top videos

  • back end
    • add a new settings, and test them
      • feed_topitems__languages
    • add the preview
  • front end
    • preferences
      • add new fields in the page Preferences
      • translate them
      • fix the component tests
      • fix and make the e2e tests relevant
    • side bar
      • use the setting feed_topitems__languages
      • use the poll setting defaultFiltersFeedTopItems
    • feed page
      • use the settings
        • initialize the languages
      • sanitize the URL to remove all filters except date and languages
      • add a link to Preferences
      • add a link to Search
        • with the current search parameters
  • tests
    • add e2e tests of the new feed page

search

  • back end
    • add the preview
  • front end
    • search page
      • add a back button
        • do not display when it's not required
        • go back to the previous location path and parameters
        • use Redux

recommendations

  • back end
    • keep the legacy recommendations__ settings to not break older versions of the extension*
    • keep the preview of /recommendations URL
  • front end
    • collective recommendations
      • keep the page for backward compatibility (and for the poll presidentielle2022)
        • remove the share button? no
        • add a info box inviting to go to the new address? no
          • use the Top items page in presidentielle2022 and remove the page collective recommendations
    • personal recommendations
      • refactor it later

PWA

  • define the new entry point

preview

  • don't break the preview

page - Preferences

  • create a generic field for the setting upload date
  • create a generic field for the setting languages

clean-up:

  • delete getRecommendationPageName? no, still used by the personal recommendations page
  • delete getDefaultRecommendationsSearchParams

Next steps

  • refactor the personal recommendations page if needed

Checklist

  • I added the related issue(s) id in the related issues section (if any)
    • if not, delete the related issues section
  • I described my changes and my decisions in the PR description
  • I read the development guidelines of the CONTRIBUTING.md
  • The tests pass and have been updated if relevant
  • The code quality check pass

@GresilleSiffle GresilleSiffle added Backend Back-end code of Tournesol Frontend Front-end code of Tournesol labels Jun 17, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Backend Back-end code of Tournesol Extension Development of the browser extension Frontend Front-end code of Tournesol
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

1 participant