dep-mongoose/tutorials
2026-05-22 08:40:58 +01:00
..
arduino fix Arduino tests 2025-03-04 16:20:18 -03:00
core Untie dash.c from packed fs 2026-05-03 08:40:24 +01:00
device-dashboard Dash levels 2026-05-20 07:05:28 +01:00
http Use test/certs 2026-04-14 17:01:44 -03:00
infineon fix Wizard-depent tests (track changes) 2025-12-05 13:23:43 -03:00
micropython move MicroPython and dashboards -> tutorials 2025-02-26 11:31:01 -03:00
mqtt unbreak tests, MG_TLS _must_ be defined in CFLAGS_EXTRA to allow being overwritten, as documented 2026-05-05 13:38:17 -03:00
nxp Revamp rp examples 2026-05-22 08:40:58 +01:00
renesas/ek-ra6m4-make-baremetal-builtin unbreak tests 2026-04-20 15:50:05 -03:00
rp Revamp rp examples 2026-05-22 08:40:58 +01:00
smtp Make packed fs always available, and manually settable 2026-03-27 11:24:07 -03:00
stm32 Revamp rp examples 2026-05-22 08:40:58 +01:00
tcp Fix build 2026-04-08 07:06:26 +01:00
tcpip Make packed fs always available, and manually settable 2026-03-27 11:24:07 -03:00
ti Make packed fs always available, and manually settable 2026-03-27 11:24:07 -03:00
tls start moving to new skeleton 2024-04-24 11:57:53 -03:00
udp remove deprecated macro 2026-04-09 09:58:06 -03:00
wch/ch32v307-make-baremetal-builtin Make packed fs always available, and manually settable 2026-03-27 11:24:07 -03:00
websocket update examples 2025-06-24 16:26:31 -03:00
webui update examples 2025-06-24 16:26:31 -03:00
zephyr Make packed fs always available, and manually settable 2026-03-27 11:24:07 -03:00
README.md move examples -> tutorials 2025-02-28 13:55:57 -03:00

Mongoose Network Library tutorials and example code

The fastest way to quickly get Mongoose running on your hardware is to follow our Tutorials:

  • Browse for your desired protocol and function, read the tutorial
  • For embedded hardware specifics, browse to your desired board, or the closest one. You'll find links to different IDE, RTOS, and TCP/IP stack options, and a link to our Wizard, a tool that generates UI code for you.

Navigating this tree

Steps to get the most out of this code base:

  • Most code here has a README.md file that points to a verbose tutorial describing how to get the intended functionality out of Mongoose Network Library. Code there runs as is in Windows, Ubuntu Linux, and Mac (very few cases don't run in Windows).
    • Navigate your way to the desired protocol or function, read the README.md file
    • Follow the linked tutorial
    • In cases were there is no tutorial:
      • Follow the Build Tools tutorial to setup your development environment.
      • run make all
  • Embedded hardware tutorials are conveniently linked from OS tutorials, or grouped by vendor and board.
    • Navigate your way to the desired board or the closest one, read the README.md file. In most cases you'll find a link to our Wizard; for others, there is a link to a Tutorial, as described at the top of this text. The Wizard will also link you to the tutorials you'll need.
    • In cases were there you don't find a link to a tutorial:
      • Follow the Build Tools tutorial to setup your development environment.
      • run make build
  • Once you have a running example close to your needs, you can start developing your application

Contributing

Rules for creating a new example:

  • Makefile golden reference for desktop/server examples: http-server
  • Makefile golden reference for embedded examples: stm32/nucleo-f746zg-baremetal-builtin-rndis
  • Examples must build on Windows, Mac and Ubuntu Linux systems
  • Assume that users installed their tools according to the Build Tools tutorial
  • Makefiles must not include other Makefiles
  • Use CFLAGS for system-specific compilation options
  • Use CFLAGS_MONGOOSE for Mongoose-specific compilation options
  • Use $(CFLAGS) $(CFLAGS_MONGOOSE) $(CFLAGS_EXTRA) to compile
  • If an external repository is required, download it on demand using git shallow clone. See the embedded examples golden reference
  • Keep Makefiles as short as possible, but verbose to understand them easily
  • Symlink files when required, like mongoose.c, ca.pem, etc. Make no copies
  • Examples README.md files should contain only the title and the link to the corresponding mongoose.ws tutorial page