EPUB document support
I think this is already planned and intended as it is in the app description for shelf but wanted to note here that EPUB support will be great, especially if it takes care of the pain points in most if not all of the QT apps in this space (Note the following may read more like "a state of QT ebook readers" I apologize if it comes across that way):
Proper rendering of EPUB with embedded CSS support
Simply rendering the plain text from the EPUB files is not the best. Both Lector and fbreader do not support proper rendering of the xhtml content and css. Okular seems to support embedded CSS but does not render epub pages properly. The only QT epub readers that do/did this properly seem to be MeBook and Dorian, which are inactive and at least a decade old, and Calibre which is a whole suite of applications rather than a simple reader.
Support epub CFIs as well as regular anchors and links
Not much to say here other than the title
Easy CSS/Styling or overrides
Things like font size, line height, themes (default, sepia, and dark mode) should have a menu that allows users easily adjust their reading experience (note that the current shelf UI does not have this).
Easy way to make annotations and store epub annotations
The essentials are notes and highlights. Tags are great but non essential. You seem to already have something that will work as far as the UI is concerned but storage of EPUB annotations is a big deal because you cannot simply write it back to the file as you do PDFs. As far as annotation storage goes, I would recommend looking at what foliate does since that will open a path to sync and multi-app compatibility.
Library view
Shelf already has this down. One thing I like about shelf's implementation is that it does not mess with where my files are actually located and how they are arranged. Of course, I realize that this is a preference thing and can see where someone would like to have Shelf arrange his or her ebooks.
Direct file opening
Shelf only allows you to open files that it has scanned. However, it will be good to allow it open a file directly through a file picker without necessarily having to pull it into a library of sorts like Calibre does. (This is one of Okular's major strengths. It is simple enough to just be a reader and annotator)
Not sure if any of what I have written is worthwhile, but I do hope that it helps.