A lightweight HTTP web server with WebSocket support and Python templating for MicroPython on ESP32 and Pycom devices.
MicroWebSrv is a micro HTTP web server built for MicroPython, enabling embedded devices like ESP32 and Pycom modules to host web interfaces and APIs. It provides essential web server functionalities—including routing, WebSocket support, and Python-based HTML templating—in a lightweight package suitable for resource-limited environments. The project solves the need for a simple, integrated web server on microcontrollers without requiring complex infrastructure.
Embedded developers and IoT engineers working with MicroPython on devices such as ESP32, Pycom modules, or Pyboard D-series who need to add web-based configuration, monitoring, or interaction capabilities.
Developers choose MicroWebSrv for its minimal footprint, ease of integration, and comprehensive feature set tailored for MicroPython. Unlike generic web servers, it is optimized for embedded systems, offering WebSockets, templating, and REST support out of the box with just three files, reducing overhead and complexity.
A micro HTTP Web server that supports WebSockets, html/python language templating and routing handlers, for MicroPython (used on Pycom modules & ESP32)
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Consists of only three files (microWebSrv.py, microWebSocket.py, microWebTemplate.py), making it easy to integrate and lightweight for resource-constrained MicroPython devices like ESP32.
Enables real-time, bidirectional communication through optional WebSockets, allowing for fast data exchange in IoT dashboards or interactive interfaces.
Uses .pyhtml files to embed MicroPython code directly in HTML, enabling dynamic page rendering without external templating engines, as detailed in the examples.
Easily redirects all not-found queries via SetNotFoundPageUrl(), simplifying Wi-Fi setup portals for device configuration, often paired with MicroDNSSrv.
The README actively promotes MicroWebSrv2, indicating this version is legacy and may lack recent updates, bug fixes, or new features.
Lacks built-in encryption for secure connections, requiring additional layers or proxies for applications handling sensitive data.
Designed for low-traffic scenarios on microcontrollers; performance can degrade with multiple concurrent connections or heavy WebSocket usage due to hardware constraints.