data shared between scenes cannot be used in inspector?

I’m use to binding/drag and drop my Model data to my Views in the inspector.
For game state data you can’t since the common solution to a Singleton is new GameObject() at runtime.

    public class MyClass : MonoBehaviour
    {
     
        static MyClass mInstance;
     
        public static MyClass Instance
        {
            get
            {
                if (mInstance == null){
                    GameObject go = new GameObject();
                    mInstance = go.AddComponent<MyClass>();
                }
                return mInstance;
            }
        }
    }

So i have to write code to connect the model to the view? GUI code left out.
I would have made alarmClock public so I could drag and drop normally.

class AlarmClockView : MonoBehavior {

   private AlarmClockModel alarmClock;

   void Start() {
      alarmClock = GameState.getInstance().alarmClockModel;
   }

Thanks

For “normal” singletons I use this implementation (see the comment on my answer). However if you want to have initialized data, you should use a prefab based singleton. So instead of creating a new instance from scratch you instantiate the prefab.

With my MonoBehaviourSingleton you can simply put the instance into the first scene, but you have to make sure that this scene is only loaded once or you will have two or more instances. The usual approach is to use a loader scene and put the instance in there.