I'm making a BitLife clone. It's nothing too performance-intensive, so I thought I'd give a made-up programming methodology I've never heard of a shot. My idea was to use an ECS system like Bevy to represent all the "in-world" data (people, places, objects, relationships, organizations, problems, etc.), and use Unity's MonoBehaviour stuff for UI. This way, one class has a dictionary storing all the relevant game data and systems operating on that data, and OOP only applies to the player's interactions with the systems.
Has anyone done anything like this before? Does it sound interesting, or am I doomed to fail?