DevilutionX is a source available game engine source-port of the classic Diablo and Hellfire, updated for modern platforms and there's a new release out.
The legal status of it remains pretty problematic though, since it was constructed thanks to debugging information left in an old port, which was used to reconstruct the code. With that in mind, it's not open source but both Devilution and DevilutionX seem to have been left alone by Blizzard and it also requires you own a legal copy (available on GOG.com) for the data files.
Anyway version 1.3.0 is now available that improves some console ports for multiplayer, adds Android support and other misc platforms. Not interesting for us here but thankfully there's plenty more. Lots of fixes and improvements came for graphics and audio like animations updated at render time for high-FPS, support for a hardware cursor (no more cursor lag), a better volume slider, improved XP bar visuals, widescreen loading screens and so on. Multiplayer also got support for ZeroTier, so you no longer need to forward ports to play with others and it can search for public games using it.
Plenty of improvements came for controls like pressing ALT to show items on the ground with labels, holding your mouse button can now continue to attack / walk / consume, control-click to drop items was added, the chat now supports Unicode and support was added for translations. That's just a brief overview, there's more in the changelog.
You can find DevilutionX on GitHub.
https://github.com/diasurgical/devilutionX/blob/master/LICENSE and https://www.gnu.org/licenses/license-list.en.html#Unlicense
Seems to be under a valid license that is free software compatible:
https://github.com/diasurgical/devilutionX/blob/master/LICENSE and https://www.gnu.org/licenses/license-list.en.html#Unlicense
This doesn't mean the decompilation approach is legal.
See more from me