IMPROVEDRevamped C++ backend with lots of memory optimization.
IMPROVEDWidgets now use `class` based approach rather than macros like `TEMPERATURE_CARD`. Example: `dash::TemperatureCard`, `dash::HumidityCard` etc.
IMPROVEDEvery widget has its own class and methods. Everything is documented inside each widget’s documentation page.
IMPROVEDAsyncWebServer instance is now passed as reference rather than a pointer inside constructor of ESP-DASH. Example: `ESPDash dashboard(server);`
IMPROVEDESP-DASH dashboard instance is now passed as reference rather than a pointer to widgets. Example: `dash::TemperatureCard temp1(dashboard, "Temperature");`
IMPROVEDStatus card is now called "Feedback" card in v5. The functionality remains the same but the name better describes its purpose.
IMPROVEDButton card is now called "Toggle Button" card in v5. Version 5 introduces lots of more buttons so it was necessary to distinguish it.
IMPROVEDText Input card is now called "Input" card in v5. Version 5 input card now supports a lot of data type, you can now make it accept either `string`, `int` or `float`.
NEWStatistics now have a `StatisticProvider` class through which you can provide real-time values. The StatisticsProvider will execute your callback function to get the latest value and display it on the dashboard!
NEWAll new UI design language according to Y25’ trends. It now feels more professional and just like a proper full blown dashboard.
IMPROVEDUI is now based on latest Svelte 5 framework which in return makes it more robust with improved performance.
NEWDashboard now has a collapsable sidebar which provides with more screen space when required.
NEWESP-DASH v5 now comes with light and dark modes! There’s a toggle switch provided inside the dashboard as well for user to set their preference.
NEWAdded all-new `Separator` card (even in the lite/oss version) which allows you to segment the dashboard into multiple intuitive regions!
NEWAdded all-new `Indicator Button` card - a special push button which has an indicator at the centre of the button which can be controlled independently via your firmware!
NEWAdded all-new `Action Button` card - a special button where you need get confirmation from the user. Use it for getting user consent before doing any deadly actions like rebooting or erasing.
NEWAdded all-new `Range Slider` card - a slider which has dual thumbs to select an range. Very useful for a lot of scenarios!
NEWAdded all-new `File Upload` card - a long awaited feature where users can upload a file to external or internal URLs of your application.
NEWAdded all-new `Doughnut` chart. Just like a pie chart but with a big hole in the centre.
FIXEDChart animations are now fixed with v5! Now instead of refreshing whole chart, values within chart gracefully transition/animate to the new position.
FIXEDPassword card now does not store the input once entered by the user. Now when a user submits value in password card, UI will clear the input upon receiving confirmation from backend and show your set placeholder in firmware. This was a security concern in previous version and has been fully resolved.
IMPROVEDDeprecated ESP8266 support. This platform is now unmaintainable as nobody is supporting its core development.