Releases: cotestatnt/esp-fs-webserver
FSWebServer 3.2.2
What's Changed
🚀 Improvements & Bug Fixes
- Comment support for each option: Enhanced
addOptionwith support for comments. - Boolean Options: Enhanced
addOptionfor boolean values with comments and per-option grouping control. - Fixed
setConfigSavedCallback: Corrected the trigger mechanism when saving configuration files from the web UI. - Fix README.md by @mhaberler in #74
Full Changelog: 3.2.1...3.2.2
FSWebServer 3.2.1
Release Notes for Version 3.2.1
This release introduces several new features, improvements, and bug fixes compared to version 3.2.0. Key highlights include enhanced support for new ESP32 variants, optimizations to the web interface, and documentation updates.
New Features
- ESP32-P4 Support: Added initial fixes for ESP32-P4, including a new example for the Waveshare devkit. Updated
randomSeedto useesp_random()for better compatibility and to prevent crashes on ESP32-P4. - M5Stack Tab5 Target: Added support for M5Stack Tab5 with necessary incantations for proper operation.
Improvements and Optimizations
- CSS and JavaScript Fixes: Various fixes and improvements to styling and scripting, including logo fixes and example corrections.
Documentation Updates
- Updated
SetupAndWiFi.mdwith clarified captive portal descriptions and added details on IP address and mask configuration. - Added an image to the Websocket Echarts README for better visual reference.
- General README updates and documentation enhancements.
Other Changes
- Merged pull requests from contributors for ESP32-P4 fixes and random seed improvements.
- Minor internal commits preparing for release and code maintenance.
For a complete list of all changes, view the full comparison on GitHub.
What's Changed
- esp-hosted: initial fix for esp32-p4 by @mhaberler in #73
Full Changelog: 3.2.0...3.2.1
FSWebServer 3.2.0
v3.2.0
Config Schema v2
The config.json format has been updated to a hierarchical structure:
- Old format (v1): flat keys at root level
- New format (v2): structured with
_version,_meta,_state,_assets, andsections
Existing v1 configurations are automatically migrated at runtime. No manual intervention required.
New structure:
{
"_version": "2.0",
"_meta": {
"app_title": "Your App",
"logo": "/config/logo.svg",
"port": 80,
"host": "myserver"
},
"_state": {},
"_assets": {
"css": [],
"js": [],
"html": []
},
"sections": [ /* application options */ ]
}Improvements
- Setup/UI: Major updates to
/setupand/editpages with refined styling and asset handling - WiFi Service: Enhanced connection diagnostics and STA network configuration logging
- WebSocket: Improved random seeding on ESP32 using
esp_random()for better security - Captive Portal: Optimized flow and better IP configuration handling
WebSocket Telemetry Dashboard example
Added new websocketEcharts example with a live real-time dashboard:
- Displays heap memory, max block size, and WiFi RSSI
- Built with ECharts 5 for smooth animated charts
- Available in both
examples/andpio_examples/directories - Supports multiple themes (Aurora, Sunrise, Mono)
Removals
highchartsexample has been replaced by the newwebsocketEchartsexample
FSWebServer 3.1.0
Security and WiFi Management Enhancements
This release introduces significant improvements to WiFi credential management, password security, and user interface, making the server more reliable and easier to use on ESP32/ESP8266 devices.
Key Improvements
WiFi Password Encryption: Passwords are now encrypted using AES-256-CBC (with hardware support on ESP32) to protect saved credentials.
Dedicated WiFiService Class: Introduction of a centralized class to handle scanning, connections, captive portal, and watchdog. Improves connection reliability and allows smarter management of multiple networks (up to 5 WiFi credentials).
Advanced Credential Management:
Support for multiple SSIDs with automatic selection based on the strongest signal.
Improved UI for managing credentials (add, edit, delete).
Ability to save WiFi credentials persistently with encryption.
Refreshed User Interface:
Unicode icons instead of SVG to reduce size.
Improvements to mobile responsiveness.
Added credential management with tabs for multiple networks (if applicable).
###Updated Documentation.
Added sections dedicated to password encryption and WiFi management in the README.
Integrated Setup Page Refactoring: Complete overhaul of app.js, creds.js, style.css, and all.htm to support new features.
Compatibility: Maintains backward compatibility with version 3.0.0, but some sketches may require minor updates to leverage new APIs.
Compatibility Notes
Benefits:
✅ Increased security for WiFi credentials
✅ Better connection reliability
✅ More intuitive and mobile-friendly UI
✅ Better support for multiple networks
What's Changed
- align dev by @cotestatnt in #68
- Dev by @cotestatnt in #69
- aes include by @cotestatnt in #70
Full Changelog: 3.0.0...3.1.0
FSWebServer 3.0.0
This major release introduces significant architectural changes to improve flexibility and reduce dependencies.
The most notable change is the removal of ArduinoJson as a required dependency, which has been replaced with a lightweight, custom JSON handling implementation based on cJSON.
Custom JSON Handler Implementation:
- Introduced a new lightweight
FSWebServer::Jsonclass that wraps thecJSONlibrary - Provides a simplified API for JSON serialization and deserialization without external heavy libraries
- Reduced memory footprint and improved performance on resource-constrained ESP devices
- Users no longer need to include
#include <ArduinoJson.h>in their sketches
Class Organization & Restructuring
- Reorganized core library classes for better maintainability and logical separation of concerns
- Improved namespace organization within
FSWebServernamespace - Enhanced code modularity to support cleaner integrations
API Updates
- JSON operations now use the new
FSWebServer::Jsonclass instead of ArduinoJson'sJsonDocument,JsonArray, andJsonObjecttypes - Internal JSON handling methods have been updated throughout the library
- WebSocket and API response generation now utilize the custom JSON implementation
Examples have been updated to demonstrate the new API.
Benefits:
✅ Reduced library dependencies and firmware size
✅ Faster compilation times
✅ Better compatibility with lean/minimal builds
✅ Improved ESP8266/ESP32 memory efficiency
✅ Simplified JSON handling for common use cases
Compatibility Notes:
The old ArduinoJson API is no longer supported internally, though users can still include ArduinoJson separately if needed for their own sketches.
What's Changed
- Dev by @cotestatnt in #66
Full Changelog: 2.0.10...3.0.0
esp-fs-webserver 2.0.10
- Show DHCP IP address after connection
What's Changed
- Add some config documentation to README by @AnasKhedr in #64
New Contributors
- @AnasKhedr made their first contribution in #64
Full Changelog: 2.0.9...2.0.10
esp-fs-webserver 2.0.9
- Fix Windows11 captive portal endpoints
Full Changelog: 2.0.8...2.0.9
esp-fs-webserver 2.0.8
What's Changed
- updated header to resolve missing library header , moved variable otaDone from static to inside the class ( avoid warning) by @rommo911 in #60
- added support to change credentials in runtime and some assertion after mem allocation bug by @rommo911 in #61
- fixed some examples
New Contributors
Full Changelog: 2.0.7...2.0.8
esp-fs-webserver 2.0.7
Full Changelog: 2.0.6...2.0.7
esp-fs-webserver 2.0.6
- solved websocket library conflicts if ArduinoWebSockets is installed
- ESP32 mDNS bug fix
Full Changelog: 2.0.5...2.0.6