completely refactored the "chart" apps