mirror of
https://github.com/cesanta/mongoose.git
synced 2024-12-27 15:01:03 +08:00
77 lines
3.3 KiB
Markdown
77 lines
3.3 KiB
Markdown
# <img src="http://www.cesanta.com/hubfs/www.cesanta.com/Images/mongoose_library.png" width="64" height="64"> Mongoose Embedded Web Server
|
|
|
|
[![Join the chat at https://gitter.im/cesanta/mongoose](https://badges.gitter.im/Join%20Chat.svg)](https://gitter.im/cesanta/mongoose?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge)
|
|
|
|
![](https://img.shields.io/badge/license-GPL_2-green.svg "License")
|
|
|
|
[Mongoose](https://www.cesanta.com/mongoose) is a
|
|
multi-protocol networking library written in C.
|
|
It provides easy to use event-driven interface that allows to implement
|
|
network protocols or scalable network applications with little effort.
|
|
Mongoose helps developers to manage the complexity of network programming
|
|
and let them concentrate on the logic, saving time and money.
|
|
|
|
Mongoose has built-in support for several protocols, like
|
|
HTTP, Websocket, MQTT, mDNS. Example applications include
|
|
Websocket-based chat server, JSON-RPC server,
|
|
database server with RESTful API, MQTT broker, netcat with SSL and hexdump,
|
|
Raspberry PI camera video feed + led control, and more.
|
|
|
|
Mongoose is ideal for the embedded environments, it has been designed as
|
|
an open source platform for connecting devices and bringing them online.
|
|
|
|
[Download Mongoose Source Code here](http://hubs.ly/H0150FK0)
|
|
|
|
Are you an embedded developer? Working on an embedded task?
|
|
Check out our [embedded development products](http://hubs.ly/H0150sY0)
|
|
to make the right choice for your project.
|
|
|
|
# Features
|
|
|
|
* Cross-platform: works on Linux/UNIX, QNX, eCos, Windows, Android, iPhone, etc
|
|
* Single-threaded, asynchronous, non-blocking core with simple event-based API
|
|
* Builtin protocols:
|
|
- plain TCP, plain UDP, SSL/TLS (over TCP, one-way or two-way)
|
|
- HTTP client, HTTP server
|
|
- Websocket client, Websocket server
|
|
- JSON-RPC client, JSON-RPC server
|
|
- MQTT client, MQTT broker
|
|
- CoAP client, CoAP server
|
|
- DNS client, DNS server, async DNS resolver
|
|
* Tiny static and run-time footprint
|
|
* Source code is both ISO C and ISO C++ compliant
|
|
* Very easy to integrate: just copy
|
|
[mongoose.c](https://raw.githubusercontent.com/cesanta/mongoose/master/mongoose.c) and
|
|
[mongoose.h](https://raw.githubusercontent.com/cesanta/mongoose/master/mongoose.h)
|
|
files to your build tree
|
|
* Extensively tested and production-ready, trusted by many blue chip businesses
|
|
|
|
# Examples & Documentation
|
|
|
|
- [User Guide](https://docs.cesanta.com/mongoose) - Detailed User Guide and API reference
|
|
- [examples](examples) - Collection of well-commented examples. To build any example,
|
|
go into respective directory and type `make`
|
|
|
|
# Dashboard Example
|
|
|
|
![](http://www.cesanta.com/hubfs/www.cesanta.com/diagrams/dash_mongoose_diagram.png)
|
|
|
|
[Developing a new product? Contact us today to discuss how Mongoose can help
|
|
](https://www.cesanta.com/contact)
|
|
|
|
|
|
# Contributions
|
|
|
|
People who have agreed to the
|
|
[Cesanta CLA](https://docs.cesanta.com/contributors_la.shtml)
|
|
can make contributions. Note that the CLA isn't a copyright
|
|
_assigment_ but rather a copyright _license_.
|
|
You retain the copyright on your contributions.
|
|
|
|
# License
|
|
|
|
Mongoose is released under
|
|
[GNU GPL v.2](http://www.gnu.org/licenses/old-licenses/gpl-2.0.html).
|
|
Businesses have an option to get non-restrictive, royalty-free commercial
|
|
license and professional support from [Cesanta](https://www.cesanta.com).
|