Where should i implement whole Client behaviour?

I need entry point for implementing WHOLE Client application, for managing Main Window, Main Menu, Login to Server.

What class should i override? and how to do that right?

As far as i discovered, AGameMode is used per every UWorld or even ULevel, so it can not be used for global client manage.
UGameViewportClient is used per every Split Screen as far as i understand.

Should i override UGameEngine?
If so, where i should setup and change default UGameEngine to my UClientGameEngine?

PS: i am making MMORPG client, without using internal UE4 replication/networking.

What about UGameInstance?

From what I’ve read so far UGameInstance seems to be exactly where you should be putting things like this now, you’re on the right track.

I think you right, i will try to put Game Client logic into inherited GameInstance.
Also i will try to inherit UGameViewportClient, which is also seems used only once per game, for managing application specific events.