Sobre el proyecto

Mongoose es un servidor web embebido y biblioteca de redes maduro, disponible desde 2004, diseñado para proyectos en C/C++. Consiste en solo dos archivos (mongoose.c y mongoose.h) que pueden integrarse en cualquier proyecto para proporcionar una pila de red completa. Soporta una amplia gama de protocolos, incluyendo TCP/UDP simple, SNTP, HTTP, MQTT, WebSocket y Modbus-TCP, junto con un resolvedor DNS asíncrono. Las características clave incluyen soporte multiplataforma (Linux, macOS, Windows, Android y varios MCUs como STM32, NXP, ESP32, Nordic, TI, Microchip, Infineon, Renesas), una huella mínima y compatibilidad tanto con ISO C como con ISO C++. Puede operar con su propia pila TCP/IP integrada para entornos bare-metal o RTOS, o sobre pilas existentes como lwIP o Zephyr. También incluye una pila TLS 1.3 ECC integrada y puede integrarse con bibliotecas TLS externas como mbedTLS y OpenSSL. Mongoose es ideal para dispositivos IoT, servidores web embebidos, actualizaciones de firmware OTA, telemetría MQTT, paneles de control seguros de dispositivos y APIs REST en microcontroladores. Se ha desplegado en cientos de millones de dispositivos en todo el mundo, incluido su uso en la Estación Espacial Internacional. El proyecto enfatiza la seguridad con integración continua, fuzzing mediante oss-fuzz de Google y procesos de reporte de vulnerabilidades. Se ofrecen licencias comerciales y soporte, con casos de estudio de empresas como Siemens, Schneider Electric, Broadcom y Bosch.