This Safari extension applies darkmode for websites
This extension utilizes CSS filter property. It inverts the whole page. Images and videos are inverted back. Due to this, some colors may then be inaccurate.
You can enable/disable dark mode per site basis.
I don't have a Developer ID and can't distribute macOS apps, so the best way is to build it yourself.
Moreover, Safari Extensions seems to be broken in macOS Catalina. You might not be able to enable extension in prefenrences. One workaround is to boot your mac in Safe Mode, enable it, then boot normally.