make the dashboard event-driven instead of preloaded