If you would rather use compute than storage, then a desktop is a good plan. I run my jellyfin on my desktop and use cloudflare tunnel for making it available online as needed. That said, me and my family are the only users of my instance, so access through the internet is not the primary way. I only set that up for when we are traveling.
Pentium J5005, only quad core and no hyper threading, but it is Gemini Lake refresh so can do QuickSync without actually using the CPU. I believe it is something like 10 realtime 1080p re-encoding streams simultaneously. 2-4 4k re-encodes but I've not tested it that much.
Multiple USB 3.1 for hooking D4-400s to for ZFS, and two ram slots that claim a max of 8 GB but mines doing fine with 32GB.
FYI: running ZFS (or any server storage) on eHDDs isn't a recommended practice[0]. A lot of things can go wrong and, if mine are anything to go by, they don't pass SMART data back to the host.
[0]: https://openzfs.github.io/openzfs-docs/Performance%20and%20T...
If you're running multiple HDDs, a decent HBA may be a good investment. They slot into a PCiE slot, and allow you to connect HDDs to them. From memory, I believe the LSI cards are considered the most reliable.
I'd wager much more people are doing ZFS + external drives than many people think -- it's very convenient and that trumps recommendations, it seems.
I am aiming to have a proper server OneDay™ and will make sure I get one with enough PCIe lanes so I can have several slots for 4-6 HDDs or SATA SSDs but in the meantime a simple thin client + a professional external HDD has been getting the job done amazingly well.
I've gone through a lot of different units to find good ones.
Was more complicated than I thought to initially pass the GPU through to the Container, but it runs fine and lets me watch movies on any device I own.