- a dashboard with three indicators and one graph
- the dashboard and the indicators are configurable by a date range picker element
- I decided for the graph to be handled by the same date range picker, so it can show data for any given period, not only a month (which is the default period)
- more elaborate error handling (now there's only simplest try/catch used)
- data validation
- data transfer objects
- active record or data mapper or a proper drm
- unit testing for new classes (no need for it now as the app really simple)
- authentication and authorization and/or statistics depending on the purpose of this app
- registry for db/log etc. No need when there's only one connection and one log