Q:

What's the proper way to manage login state + login view (using storyboards)?

It's the first app that I'm creating that will use FB, Twtr and custom login.
I'll be using a dedicated login view/viewcontroller for this purpose.
My idea was to check the login state in the app delegate and go from there.

In case app delegate determines the user is not logged in

Set the login view as the root view controller
Login will display the rest of the app modally
If you log out, the modal view of the app is dismissed and you get back at the login screen

So in this case it looks perfect for me, but I can't figure the other case out:
In case app delegate determines the user is logged in

If you set the tabbar controller as the rootViewController there is no login view to dismiss to in case the user logs out..
I don't want the user to view the login screen if he is already logged in

A solution would be to invisibly set login vc as the root vc but immediately display the tab bar controller modally without the user noticing. I guess that's not possible?

A:

You should always start with the Login screen at the root. The login views should be invisible and a UIActivityIndicator (or similar) should be shown while you determine if the user is logged in.
If the user is logged-in, simply push the next view controller and continue normally. If he isn't un-hide the login views.

