# Docs - ESP-DASH: Real-time web dashboards - v5.x.x: Latest release - [Introduction](/docs/espdash/v5): ESP-DASH is a C++ library for building real-time, on-device web dashboards for ESP32, RP2040 and RP2350 microcontrollers. - **Getting Started** - [Installation](/docs/espdash/v5/getting-started/installation): Install ESP-DASH v5 and its platform-specific dependencies in the Arduino IDE or PlatformIO. - [Integration Guide](/docs/espdash/v5/getting-started/integration): Add an ESP-DASH v5 dashboard to an existing ESPAsyncWebServer sketch on ESP32, RP2040 or RP2350. - [Examples](/docs/espdash/v5/getting-started/examples): Example sketches in the ESP-DASH repository that demonstrate common dashboard implementations. - [Migrating from v4 to v5](/docs/espdash/v5/getting-started/migrating-from-v4-to-v5): Update an ESP-DASH v4 sketch to the v5 API, covering dashboard setup, cards, charts, callbacks and widget refreshes. - [Using with Other SOFTT Libraries](/docs/espdash/v5/using-with-other-libraries): Combine ESP-DASH with ElegantOTA, NetWizard and WebSerial in the same project, sharing one AsyncWebServer. - [AI Tools](/docs/espdash/v5/ai-tools): Use the ESP-DASH documentation from AI coding assistants through the MCP server, llms.txt and Markdown page exports. - **Building Dashboards** - Cards - [Generic Card](/docs/espdash/v5/cards/generic): Display a numeric or text value with an optional symbol using dash::GenericCard. - [Temperature Card](/docs/espdash/v5/cards/temperature): Display a temperature reading with a configurable unit using dash::TemperatureCard. - [Humidity Card](/docs/espdash/v5/cards/humidity): Display a relative humidity reading with a configurable unit using dash::HumidityCard. - [Progress Card](/docs/espdash/v5/cards/progress-bar): Display a value as a progress bar within a minimum and maximum range using dash::ProgressCard. - [Feedback Card](/docs/espdash/v5/cards/feedback): Display a status message with an info, success, warning or danger indicator using dash::FeedbackCard. - [Toggle Button Card](/docs/espdash/v5/cards/toggle-button): Display and control an on/off state from the dashboard using dash::ToggleButtonCard. - [Slider Card](/docs/espdash/v5/cards/slider): Let users select a numeric value within a range from the dashboard using dash::SliderCard. - [Separator Card](/docs/espdash/v5/cards/separator): Divide the dashboard into labeled sections with a title and subtitle using dash::SeparatorCard. - [Air Card](/docs/espdash/v5/cards/air): Display an atmospheric pressure reading with a configurable unit using dash::AirCard. - [Energy Card](/docs/espdash/v5/cards/energy): Display an energy or power consumption value with a configurable unit using dash::EnergyCard. - [Image Card](/docs/espdash/v5/cards/image): Display an image from a URL in one of two sizes using dash::ImageCard. - [Input Card](/docs/espdash/v5/cards/input): Collect text or numeric input from the dashboard with typed parsing using dash::InputCard. - [Password Card](/docs/espdash/v5/cards/password): Collect passwords and other secrets from the dashboard without echoing them back using dash::PasswordCard. - [Dropdown Card](/docs/espdash/v5/cards/dropdown): Present a list of predefined options in a dropdown and receive the selected value on the device. - [Push Button Card](/docs/espdash/v5/cards/push-button): A stateless button that runs a callback on the device each time it is pressed. - [Indicator Button Card](/docs/espdash/v5/cards/indicator-button): A push button with a built-in status indicator that the device can set to show the result or state of an action. - [Action Button Card](/docs/espdash/v5/cards/action-button): A button that asks the user to confirm in a dialog before the device runs an action. - [Week Selector Card](/docs/espdash/v5/cards/week-selector): Let users select one or more days of the week and receive the selection as a comma-separated string. - [Color Picker Card](/docs/espdash/v5/cards/color-picker): Let users pick a color in the browser and receive it on the device as a hex string. - [Joystick Card](/docs/espdash/v5/cards/joystick): A virtual joystick that streams X/Y coordinates and direction to the device, optionally locked to one axis. - [Link Card](/docs/espdash/v5/cards/link): A card that opens a URL when clicked, in a new tab or in the current tab. - [Time Sync Card](/docs/espdash/v5/cards/time-sync): Set the device clock from the browser's current time with one click, optionally applying a timezone. - [Time Difference Card](/docs/espdash/v5/cards/time-difference): Display the time elapsed since, or remaining until, a timestamp set by the device, relative to the browser's clock. - [Range Slider Card](/docs/espdash/v5/cards/range-slider): A dual-thumb slider for selecting a low and high value within configurable bounds. - [File Upload Card](/docs/espdash/v5/cards/file-upload): Let users upload a file from the browser to an HTTP endpoint on the device, with progress and result indication. - Charts - [Bar Chart](/docs/espdash/v5/charts/bar): Create a bar chart with dash::BarChart, set its X-axis and Y-axis data and push updates to the dashboard in ESP-DASH v5. - [Line Chart](/docs/espdash/v5/charts/line): Create a line chart with dash::LineChart, set its X-axis and Y-axis data and push updates to the dashboard in ESP-DASH Pro v5. - [Area Chart](/docs/espdash/v5/charts/area): Create an area chart with dash::AreaChart, set its X-axis and Y-axis data and push updates to the dashboard in ESP-DASH Pro v5. - [Pie Chart](/docs/espdash/v5/charts/pie): Create a pie chart with dash::PieChart, set its labels and values and push updates to the dashboard in ESP-DASH Pro v5. - [Doughnut Chart](/docs/espdash/v5/charts/doughnut): Create a doughnut chart with dash::DoughnutChart, set its labels and values and push updates to the dashboard in ESP-DASH Pro v5. - [Statistics](/docs/espdash/v5/statistics): Display device information and key metrics on the ESP-DASH Statistics page with StatisticValue and StatisticProvider. - [Tabs](/docs/espdash/v5/tabs): Organize ESP-DASH Pro dashboards into multiple pages with tabs, each with an optional sidebar icon. - **Configuration** - Features - [Custom URI](/docs/espdash/v5/features/custom-uri): Serve the ESP-DASH dashboard at a custom path instead of the web server root. - [Widget Size](/docs/espdash/v5/features/widget-size): Set the responsive width of cards and charts per screen-size breakpoint with setSize() in ESP-DASH Pro. - [Widget Index](/docs/espdash/v5/features/widget-index): Control the position of cards and charts on the dashboard with setIndex() in ESP-DASH Pro. - [Toggle Display](/docs/espdash/v5/features/toggle-display): Show or hide cards, charts, statistics and tabs at runtime with setDisplay() in ESP-DASH Pro. - [Toggle Chart Animations](/docs/espdash/v5/features/toggle-chart-animations): Enable or disable chart animations for the whole dashboard with setChartAnimations() in ESP-DASH Pro. - [Custom Title](/docs/espdash/v5/features/custom-title): Replace the default dashboard title shown in the browser tab with setTitle() in ESP-DASH Pro. - [Brotli Compression](/docs/espdash/v5/features/brotli-compression): Serve the ESP-DASH Pro dashboard with Brotli instead of gzip compression to reduce flash usage, including browser and HTTPS requirements. - Security - [Authentication](/docs/espdash/v5/security/authentication): Restrict access to an ESP-DASH dashboard with HTTP Basic Authentication using a username and password. - [Disable Statistics](/docs/espdash/v5/security/disable-statistics): Disable the built-in system statistics in ESP-DASH v5 and hide the Statistics tab from the sidebar. - [Branding](/docs/espdash/v5/branding): Replace the default ESP-DASH Pro dashboard logo with your own light and dark logos by editing the logo.h and logo.cpp library files. - **Licensing** - [Commercial License](/docs/espdash/v5/commercial-license): Compare the licensing, support and features of ESP-DASH Lite (GPL-3.0) and ESP-DASH Pro (commercial license). - v4.x.x: Legacy release - [Introduction](/docs/espdash/v4): Documentation for ESP-DASH v4 (legacy), a library for building real-time web dashboards on ESP8266, ESP32 and RP2040 microcontrollers. - **Getting Started** - [Installation](/docs/espdash/v4/getting-started/installation): Install ESP-DASH v4 and its platform-specific dependencies in the Arduino IDE or PlatformIO. - [Integration](/docs/espdash/v4/getting-started/integration): Add an ESP-DASH v4 dashboard to an existing ESPAsyncWebServer sketch on ESP8266, ESP32 or RP2040. - [Examples](/docs/espdash/v4/getting-started/examples): Example sketches for ESP-DASH v4 that demonstrate cards, charts, interactive widgets and dynamic dashboards. - [AI Tools](/docs/espdash/v4/ai-tools): Use the ESP-DASH documentation from AI coding assistants through the MCP server, llms.txt and Markdown page exports. - **Building Dashboards** - Cards - [Generic Card](/docs/espdash/v4/cards/generic): Display any integer, float, boolean or string value on the ESP-DASH v4 dashboard with the generic card. - [Temperature Card](/docs/espdash/v4/cards/temperature): Display temperature readings with a temperature icon and an optional unit symbol on the ESP-DASH v4 dashboard. - [Humidity Card](/docs/espdash/v4/cards/humidity): Display humidity readings with a humidity icon and an optional unit symbol on the ESP-DASH v4 dashboard. - [Progress Bar Card](/docs/espdash/v4/cards/progress-bar): Show a value within a fixed integer or float range as a horizontal progress bar on the ESP-DASH v4 dashboard. - [Status Card](/docs/espdash/v4/cards/status): Display a message with an idle, success, warning or danger indicator on the ESP-DASH v4 dashboard. - [Toggle Button Card](/docs/espdash/v4/cards/toggle-button): Switch between on and off states from the ESP-DASH v4 dashboard with the toggle button card and its callback. - [Slider Card](/docs/espdash/v4/cards/slider): Select integer or float values within a defined range from the ESP-DASH v4 dashboard with the slider card. - [Air Card](/docs/espdash/v4/cards/air): Display air pressure, wind speed and similar readings with an air icon on the ESP-DASH Pro v4 dashboard. - [Energy Card](/docs/espdash/v4/cards/energy): Display power consumption and energy usage with an energy icon on the ESP-DASH Pro v4 dashboard. - [Image Card](/docs/espdash/v4/cards/image): Display an image from a URL on the ESP-DASH Pro v4 dashboard with the image card. - [Text Input Card](/docs/espdash/v4/cards/text-input): Collect text input such as credentials or identifiers from the ESP-DASH Pro v4 dashboard with the text input card. - [Password Card](/docs/espdash/v4/cards/password): Collect passwords and other secrets through a masked input field on the ESP-DASH Pro v4 dashboard. - [Dropdown Card](/docs/espdash/v4/cards/dropdown): Let users select one option from a comma-separated list of choices on the ESP-DASH Pro v4 dashboard. - [Push Button Card](/docs/espdash/v4/cards/push-button): Trigger a stateless action from the ESP-DASH Pro v4 dashboard with the push button card and its callback. - [Week Selector Card](/docs/espdash/v4/cards/week-selector): Let users select days of the week as a comma-separated list on the ESP-DASH Pro v4 dashboard. - [Color Picker Card](/docs/espdash/v4/cards/color-picker): Let users select a color and receive it as a hex string on the ESP-DASH Pro v4 dashboard. - [Joystick Card](/docs/espdash/v4/cards/joystick): Control devices with an on-screen joystick that reports direction or X/Y coordinates on the ESP-DASH Pro v4 dashboard. - [Link Card](/docs/espdash/v4/cards/link): Open a URL from the ESP-DASH Pro v4 dashboard when the user clicks the link card. - [Time Sync Card](/docs/espdash/v4/cards/time-sync): Synchronize the device clock with the browser time from the ESP-DASH Pro v4 dashboard. - Charts - [Bar Chart](/docs/espdash/v4/charts/bar): Create a bar chart in ESP-DASH v4 and update its X-axis and Y-axis data with updateX() and updateY(). - [Line Chart](/docs/espdash/v4/charts/line): Create a line chart in ESP-DASH v4 and update its X-axis and Y-axis data with updateX() and updateY(). - [Area Chart](/docs/espdash/v4/charts/area): Create a area chart in ESP-DASH v4 and update its X-axis and Y-axis data with updateX() and updateY(). - [Pie Chart](/docs/espdash/v4/charts/pie): Create a pie chart in ESP-DASH v4 and update its X-axis and Y-axis data with updateX() and updateY(). - [Statistics](/docs/espdash/v4/statistics): Display built-in system metrics and custom key-value statistics on the ESP-DASH v4 Statistics page. - [Tabs](/docs/espdash/v4/tabs): Organize ESP-DASH Pro v4 widgets into multiple dashboard pages with the Tab class and setTab(). - **Configuration** - Features - [Custom URI](/docs/espdash/v4/features/custom-uri): Serve the ESP-DASH v4 dashboard at a custom path instead of the root of the web server. - [Toggle Display](/docs/espdash/v4/features/toggle-display): Show or hide ESP-DASH Pro v4 cards, charts, tabs and statistics at runtime with setDisplay(). - [Toggle Chart Animations](/docs/espdash/v4/features/toggle-chart-animations): Enable or disable chart animations in ESP-DASH Pro v4 with setChartAnimations(), useful for high-frequency chart updates. - [Widget Size](/docs/espdash/v4/features/widget-size): Set the responsive width of ESP-DASH Pro v4 cards and charts per screen breakpoint with setSize(). - [Widget Index](/docs/espdash/v4/features/widget-index): Control the position of ESP-DASH Pro v4 cards and charts on the dashboard with setIndex(). - [Custom Title](/docs/espdash/v4/features/custom-title): Change the ESP-DASH Pro v4 dashboard title shown in the browser tab with setTitle(). - [Brotli Compression](/docs/espdash/v4/features/brotli-compression): Enable Brotli compression for the ESP-DASH Pro v4 dashboard webpage to reduce flash usage, and review its browser and HTTPS requirements. - Security - [Authentication](/docs/espdash/v4/security/authentication): Protect an ESP-DASH v4 dashboard with HTTP Basic Authentication using setAuthentication(). - [Disable Statistics](/docs/espdash/v4/security/disable-statistics): Disable the built-in system statistics in ESP-DASH v4 and hide the Statistics tab from the sidebar. - [Branding](/docs/espdash/v4/branding): Replace the default ESP-DASH Pro v4 dashboard logo with your own image by editing the logo byte array in the library source. - **Licensing** - [Commercial License](/docs/espdash/v4/commercial-license): Compare the licensing and support terms of ESP-DASH Lite (GPL-3.0) and ESP-DASH Pro (commercial). - ElegantOTA: Over-the-air updates - [Introduction](/docs/elegantota): ElegantOTA is a C++ library that serves a web portal for over-the-air firmware and filesystem updates on ESP32, ESP8266, RP2040 and RP2350. - **Getting Started** - [Installation](/docs/elegantota/getting-started/installation): Install ElegantOTA Lite or ElegantOTA Pro in the Arduino IDE or PlatformIO. - [Integration Guide](/docs/elegantota/getting-started/integration): Add the ElegantOTA update portal to an existing web server sketch in three steps. - [Examples](/docs/elegantota/getting-started/examples): Example sketches in the ElegantOTA and ElegantOTA Pro repositories for the synchronous and asynchronous web servers and for update channels. - [Async Mode](/docs/elegantota/getting-started/async-mode): Serve the ElegantOTA portal through ESPAsyncWebServer, with the dependencies and configuration required on each platform. - [Using with Other SOFTT Libraries](/docs/elegantota/using-with-other-libraries): Combine ElegantOTA with ESP-DASH, NetWizard and WebSerial in the same project, sharing one AsyncWebServer. - [AI Tools](/docs/elegantota/ai-tools): Use the ElegantOTA documentation from AI coding assistants through the MCP server, llms.txt and Markdown page exports. - **OTA Modes** - [File](/docs/elegantota/ota-modes/file): The default OTA mode, in which you upload a .bin file from the portal. Covers staging, the capacity check, MD5 verification, update targets and the HTTP requests involved. - [Direct Download](/docs/elegantota/ota-modes/direct-download): Let the device download a firmware or filesystem image itself from an HTTP or HTTPS URL, from the portal or from your own code. - [Auto Update](/docs/elegantota/ota-modes/auto): Configure an update channel so the device checks a JSON manifest on a schedule and installs newer firmware. Covers the manifest, version comparison and onUpdateAvailable. - **Security** - [Authentication](/docs/elegantota/security/authentication): Protect the ElegantOTA portal and update endpoints with HTTP Basic Authentication using a username and password. - [Disable Firmware OTA](/docs/elegantota/security/disable-firmware-ota): Enable or disable firmware updates at runtime in ElegantOTA Pro, and check whether the firmware update target is enabled. - [Disable Filesystem OTA](/docs/elegantota/security/disable-filesystem-ota): Enable or disable filesystem (LittleFS or SPIFFS) updates at runtime in ElegantOTA Pro, and check whether the filesystem update target is enabled. - [Disable Direct Download](/docs/elegantota/security/disable-direct-download): Prevent the ElegantOTA Pro portal from accepting firmware URLs, or remove the HTTP client from the build entirely. - **Features** - [Auto Reboot](/docs/elegantota/features/auto-reboot): Control whether ElegantOTA reboots the device automatically after a successful OTA update. - [Callbacks](/docs/elegantota/features/callbacks): Run your own code when an ElegantOTA update starts, progresses and ends, and, in ElegantOTA Pro, when an update channel offers a new version. - [Hardware ID](/docs/elegantota/features/hardware-id): Display a unique hardware ID in the ElegantOTA Pro portal to identify a device among others on your network. - [Firmware Version](/docs/elegantota/features/firmware-version): Display the running firmware version in the ElegantOTA Pro portal and provide the version that update channels compare against. - [Custom Title](/docs/elegantota/features/custom-title): Set the page title of the ElegantOTA Pro portal that the browser displays in its tab. - **Customization** - [Branding](/docs/elegantota/branding): Replace the logo in the ElegantOTA Pro portal with your own light and dark logos by editing the logo.h and logo.cpp library files. - **Licensing** - [Commercial License](/docs/elegantota/commercial-license): Compare the licensing, support and features of ElegantOTA Lite (AGPL-3.0) and ElegantOTA Pro (commercial license). - NetWizard: Wi-Fi manager and captive portal - [Introduction](/docs/netwizard): NetWizard is a WiFi manager and captive portal library for ESP32, RP2040 and RP2350 that removes the need to hard-code WiFi credentials. - **Getting Started** - [Installation](/docs/netwizard/getting-started/installation): Install NetWizard and its platform-specific dependencies in the Arduino IDE or PlatformIO. - [Example](/docs/netwizard/getting-started/example): A complete NetWizard sketch with a synchronous web server, status callbacks and configuration parameters. - [Integration Guide](/docs/netwizard/getting-started/integration): Add NetWizard to an existing sketch that already uses a web server. - [Async Mode](/docs/netwizard/getting-started/async-mode): Compile NetWizard against ESPAsyncWebServer so the captive portal runs on an asynchronous web server. - [Using with ESP-DASH](/docs/netwizard/getting-started/using-with-espdash): Run a NetWizard captive portal and an ESP-DASH dashboard on the same AsyncWebServer. - [Using with Other SOFTT Libraries](/docs/netwizard/using-with-other-libraries): Combine NetWizard with ESP-DASH, ElegantOTA and WebSerial in the same project, sharing one AsyncWebServer. - [AI Tools](/docs/netwizard/ai-tools): Use the NetWizard documentation from AI coding assistants through the MCP server, llms.txt and Markdown page exports. - **Captive Portal** - Parameters - [Parameters](/docs/netwizard/parameters): Build a configuration page for the captive portal in C++ with NetWizardParameter, and read the submitted values in the onConfig callback. - [Header, Divider and Spacer](/docs/netwizard/parameters/layout): Structure the NetWizard configuration page with header, divider and spacer parameters. - [Input](/docs/netwizard/parameters/input): Collect a single line of text, such as a host name or user name, on the NetWizard configuration page. - [Password Input](/docs/netwizard/parameters/password-input): Collect sensitive text, such as passwords or API keys, in a masked field on the NetWizard configuration page. - [Toggle](/docs/netwizard/parameters/toggle): Add an on/off switch to the NetWizard configuration page and read its state as an integer. - [Textarea](/docs/netwizard/parameters/textarea): Collect multi-line text, such as certificates or keys, on the NetWizard configuration page. - [Statistics](/docs/netwizard/statistics): Show application-specific key-value pairs on the home page of the NetWizard captive portal. - [Links](/docs/netwizard/links): Add buttons to the NetWizard captive portal that open other pages served by the device in access point mode. - **Customization** - [Custom Title](/docs/netwizard/custom-title): Change the page title of the NetWizard captive portal. - [Branding](/docs/netwizard/branding): Replace the NetWizard logo in the captive portal with your own company or product logo. - [Authentication](/docs/netwizard/authentication): Protect the NetWizard captive portal with HTTP basic authentication. - **API Reference** - [Configuration](/docs/netwizard/api/configuration): Configure the NetWizard constructor, portal strategy, hostname, timeouts and compile-time options. - [Connection](/docs/netwizard/api/connection): Connect to the saved network, start the captive portal on demand, connect with new credentials and disconnect with the NetWizard API. - [Portal](/docs/netwizard/api/portal): Start and stop the NetWizard captive portal on demand and read its current state. - [Credentials](/docs/netwizard/api/credentials): Read, replace, erase and reset the WiFi credentials that NetWizard stores on the device. - [Network Info](/docs/netwizard/api/network-info): Read the connection status, IP configuration, BSSID and channel of the network NetWizard is connected to. - [Callbacks](/docs/netwizard/api/callbacks): React to connection status changes, captive portal state changes and submitted configuration with NetWizard callbacks. - **Licensing** - [Commercial License](/docs/netwizard/commercial-license): Compare the licensing, support and features of NetWizard Lite (AGPL-3.0) and NetWizard Pro (commercial license). - WebSerial: Remote serial terminal - [Introduction](/docs/webserial): WebSerial is a remote terminal library that lets you log, monitor and debug firmware on wireless microcontrollers from a web browser. - **Getting Started** - [Installation](/docs/webserial/installation): Install WebSerial Lite or WebSerial Pro and their platform-specific dependencies in the Arduino IDE or PlatformIO. - [Integration Guide](/docs/webserial/integration): Add a WebSerial remote terminal to an existing ESPAsyncWebServer sketch on ESP8266, ESP32, RP2040 or RP2350. - [Examples](/docs/webserial/examples): Example sketches in the WebSerial repository that demonstrate standard, access point, high-performance and logging setups. - [High Performance Mode](/docs/webserial/high-performance): Enable WebSerial High Performance Mode to send log messages immediately with low latency and high throughput. - [Upgrading to WebSerial Pro](/docs/webserial/upgrading-to-pro): Move an existing project from WebSerial Lite to WebSerial Pro, or from WebSerial Pro v1 to WebSerial Pro v2. - [Using with Other SOFTT Libraries](/docs/webserial/using-with-other-libraries): Combine WebSerial with ESP-DASH, ElegantOTA and NetWizard in the same project, sharing one AsyncWebServer. - [AI Tools](/docs/webserial/ai-tools): Use the WebSerial documentation from AI coding assistants through the MCP server, llms.txt and Markdown page exports. - **Usage** - [Printing](/docs/webserial/printing): Send log output to the WebSerial terminal with print, println, printf and write, and understand how WebSerial buffers output. - [Callbacks](/docs/webserial/callbacks): Handle commands and messages sent from the WebSerial terminal with the onMessage callback, as a String or as raw bytes. - [API Reference](/docs/webserial/api-reference): Reference for the public methods, callback types and configuration macros of the WebSerial global object in WebSerial Lite and WebSerial Pro. - **Security** - [Authentication](/docs/webserial/authentication): Restrict access to the WebSerial terminal with HTTP Basic Authentication using a username and password. - [Toggle Input](/docs/webserial/toggle-input): Enable or disable the WebSerial Pro terminal input bar from firmware to control whether users can send commands. - **Pro Features** - [Custom Title](/docs/webserial/custom-title): Set a custom title for the WebSerial Pro terminal with setTitle(). - [Hardware ID](/docs/webserial/hardware-id): Display a hardware ID on the WebSerial Pro terminal to identify individual devices on your network. - [Timestamps](/docs/webserial/timestamps): Show device-synchronized timestamps and packet numbers on each line of the WebSerial Pro terminal. - [Export Logs](/docs/webserial/export): Export the log output of the WebSerial Pro terminal as Text, JSON or CSV files for analysis and sharing. - [Font Customization](/docs/webserial/font): Change the font family and font size of the WebSerial Pro terminal from its settings panel for better readability. - [Branding](/docs/webserial/branding): Replace the default WebSerial Pro terminal logo with your own light and dark logos by editing the logo.h and logo.cpp library files. - **Licensing** - [Commercial License](/docs/webserial/commercial-license): Compare the licensing, support and features of WebSerial Lite (AGPL-3.0) and WebSerial Pro (commercial license).