Memphis has just turned 1 and been indoors his whole life. When he was a baby I'd shut him upstairs whilst I was out ... I left one bedroom door open so he had 1 room, 2 landings and the stairs - tons of room really. Then when I realised all he was doing was snoozing whilst I was gone and nothing was being damaged I left the door to the stairs open which gave him access to the downstairs. I always keep the bathroom/kitchen doors closed even when I'm in because those are the places where he gets into trouble - he can't leave kitchen/loo paper alone
Even though he has access to the whole house when I'm out he spends the whole time in my bedroom either snoozing on my bed or lying on the windowsill watching the world go by.
He really is a very happy boy. I have lots of toys all different kinds. I keep his most favourite toys out of sight which makes it very special and enjoyable when I get them out. Then I rotate all his other toys which I/He leave scattered around the house. He doesn't try to climb out of windows (he does try to catch bugs through the window) but we have plenty inside he can catch .. had a few moths, a fly and plenty of spiders. He plays with me/himself the dog. He always manages to find things to do .. his routine is usually, gets up has a play, goes back to sleep on me until I get up, eats, plays all morning. Then he will sleep pretty much all of the afternoon into early evening .. I've tried to get him to play but he likes his afternoon nap too much. Then he gets up and he will play all the way through to 11pm/midnight.
He doesn't try to run out of the back door when people come in/go out, and I have the dining room window (the top part) open a lot, he has never shown any interest in it. However, I can only have my bedroom window open when I'm in my room and able to keep an eye on things .. otherwise he would climb out
So no window open when I'm asleep (but I'm working on that .. there are lots of ways you can keep a cat in and have a window open).
Memphis is my first cat and I made the choice to keep him indoors .. I've not regretted this and had no problems. Everyone's situation is different though.