run in demo, app local, or all local modes
add refresh functionality, not yet wired up to nav