Transitioning from existing qt into html/svelte?

A very large part of anki ui is implemented in qt. The new ui elements implemented in svelte are nicer, easier to maintain and multi-platform.
Would it be ok for me pr replacements for existing qt components re-implemented in svelte? Starting with easy ones, like the about dialog and slowly working my way thru the rest?
If so, is there anything i need to keep in mind?

2 Likes

The screens in ts/ are intended for use by both the desktop and mobile clients, so I’d recommend skipping the about screen, which is specific to the desktop version. I’d also recommend avoiding any of the screens in the main window, as @kleinerpirat has already started working on them. There are a number of other screens where help porting them over to Svelte would be appreciated - some that come to mind:

  • Filtered Deck
  • Empty Cards: the current implementation builds a string in the Rust layer and does a regex on it in Python; this would be better implemented by having the protobuf return the values directly, and building the user-facing strings in Svelte. Because the report is potentially thousands of lines long, it would be good to take advantage of the virtual table @abdo added in Improve presentation of importing results by abdnh · Pull Request #2568 · ankitects/anki · GitHub
  • Find Duplicates in the browse screen. Similar to Empty Cards in needing a virtual table.
  • Custom Study: tag selection needs a virtual table

Other suggestions are welcome, but please bring them up before starting work on them, as there may be other considerations.

2 Likes

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.