+1 for Scratch, it's perfect starting place. I wish they improved the user experience a bit, since it became slightly dated now. But don't think there is anything so visual and so easy to grasp. This is some game I created with my (4 year old back then) kid when he was at home sick & bored, in under one hour: https://scratch.mit.edu/projects/116277609/
He's almost 6 now and loves Scratch even more, can now read the instructions and create programs as far as using loop inside a loop and switching context. We use Scratch-like product that has cardboard blocks for application designing and then iPad or such device to scan the code and display results of a game actions that you programmed. It's called Scottie! Go but I'm not sure it's available in other countries, as it seems to be Polish product. Here is the page https://scottiego.pl/en/. It's also intuitive enough and probably created also for parents with no prior programming experience.
This is how it looks (you have some tasks in a top-down platform game, and you control a robot, and later other characters, to accomplish some tasks through the program that you create)
Modding is also good idea, but it requires some prior programming experience (just setting the development environment may be daunting task), so a better place to start would be playing with Scratch, learning basic programming concepts, and after some practice trying modding.