SwiftUI Dark Light Mode App Wide Switch

So in the SwiftUI fitness app I'm building in public on my YouTube channel one of the premium features is likely to be a switch allowing the user to go between light and dark mode freely. This needs to reflect across the whole app and persist between launches.

For whatever reason I couldn't find much information on how to apply this app wide - lots of info on applying it to a view directly but remembering it with the AppStorage property wrapper and making it reflect across the app not so much.

You can find out how to do it using a Picker to switch between the two modes along with the skeleton of an app containing some components here: