How best to develop this frontend customization / plugin?

A theme component can work here (just need to make sure core has all the extension points)

It looks like we are missing one outlet though… we have after-topic-footer-buttons, we would need a before-topic-notifications-button. You can achieve it now by patching the component, but that is not the right way of doing things.

Hold off for some advice from @eviltrout here, we can probably add the extra plugin-outlet in core.

Changing the text of the button should be doable in CSS so all you need really is to add the extra button with the extra logic.