client based visualizations and offline visualizations use the same code