I use tvheadend (as backend) and Kodi as frontend. Works well for me.
I like that tvheadend can map multiple services/muxes (m3u channels) to the same channel, so if one channel doesn’t work it silently switches to another service/mux.
I use guide2go to download EPG via schedulesdirect, with excellent quality (including posters and icons).
It is a bit tedious to setup all the mappings in tvheadend but it can be automated with some scripts that give the same channel the same tvg-id and set the tvh-prio properties. Only have a hundred or so channels that I use so I just do it manually.
I use tvheadend for ota tv channels via an aerial and a dvb-t2 tuner card, but I've not yet tried setting up IPTV channels. Is there a guide out there somewhere for setting it up as you describe?
It's a fantastic back end and I've tried a few. NextPVR on windows, mythtv, mediaportal but none works as well as tvh once it's set up.