So what I'll recommend first is to pick a naming strategy, and manage your files. You can do this in a few ways, what I'll recommend is beets.
You want to do this first so youre scanning a library that won't undergo massive changes.
Both JF and Navidrome are just playing back in this scenario, so once they are clean and in the right directory structure, you can just map the library there for both.
Thats really about it. What do you need help on with the execution?