diff --git a/mongoose.h b/mongoose.h
index fb6ebb17..f6e80774 100644
--- a/mongoose.h
+++ b/mongoose.h
@@ -3411,6 +3411,9 @@ static inline void mg_dash_ev_handler(struct mg_connection *c, int ev,
}
}
}
+
+extern void mongoose_init(void);
+extern void mongoose_poll(void);
// Copyright (c) 2023 Cesanta Software Limited
// All rights reserved
diff --git a/resources/I-CUBE-Mongoose/App/mongoose_app.c b/resources/I-CUBE-Mongoose/App/mongoose_app.c
new file mode 100644
index 00000000..88154be7
--- /dev/null
+++ b/resources/I-CUBE-Mongoose/App/mongoose_app.c
@@ -0,0 +1,35 @@
+// SPDX-FileCopyrightText: 2026 Cesanta Software Limited
+// SPDX-License-Identifier: GPL-2.0-only or commercial
+//
+// See guides:
+// https://mongoose.ws/docs/guides/web-dashboard-guide/ - device dashboard
+
+#include "mongoose.h"
+
+#if MG_ARCH == MG_ARCH_UNIX || MG_ARCH == MG_ARCH_WIN32
+#define HTTP_ADDR "http://0.0.0.0:8000"
+#else
+#define HTTP_ADDR "http://0.0.0.0:80"
+#endif
+
+static struct mg_mgr s_mgr;
+
+// Connection event handler function
+static void http_ev_handler(struct mg_connection *c, int ev, void *ev_data) {
+ if (ev == MG_EV_HTTP_MSG) { // New HTTP request received
+ struct mg_http_message *hm = (struct mg_http_message *) ev_data;
+ if (mg_match(hm->uri, mg_str("/api/hello"), NULL)) {
+ mg_http_reply(c, 200, "", "{%m:%d}\n", MG_ESC("status"), 1);
+ } else {
+ mg_http_reply(c, 200, "", "Hello from Mongoose %s\n", MG_VERSION);
+ }
+ }
+}
+void mongoose_init(void) {
+ mg_mgr_init(&s_mgr);
+ mg_http_listen(&s_mgr, HTTP_ADDR, http_ev_handler, NULL);
+}
+
+void mongoose_poll(void) {
+ mg_mgr_poll(&s_mgr, 1);
+}
diff --git a/resources/I-CUBE-Mongoose/App/mongoose_config.h b/resources/I-CUBE-Mongoose/App/mongoose_config.h
new file mode 100644
index 00000000..e94d746f
--- /dev/null
+++ b/resources/I-CUBE-Mongoose/App/mongoose_config.h
@@ -0,0 +1,6 @@
+// Mongoose configuration file. For full list of build options, see
+// https://mongoose.ws/docs/getting-started/build-options/
+
+#pragma once
+
+#define MG_ARCH MG_ARCH_CUBE
diff --git a/resources/I-CUBE-Mongoose/Cesanta.I-CUBE-Mongoose.pdsc b/resources/I-CUBE-Mongoose/Cesanta.I-CUBE-Mongoose.pdsc
new file mode 100644
index 00000000..2c42ea75
--- /dev/null
+++ b/resources/I-CUBE-Mongoose/Cesanta.I-CUBE-Mongoose.pdsc
@@ -0,0 +1,34 @@
+
+