HOME ECOSYSTEM
Extensible Architecture

MOSA Plugin Ecosystem

Discover how MOSA transforms from a messenger into a powerful offline platform through its dual-layer plugin system.

1. Dual-Layer Architecture

Unlike traditional messaging apps, MOSA is designed as an extensible platform. Its plugin system operates on two distinct layers, working in harmony to provide rich features even without internet access.

Client-Side Plugins

Written in Flutter/Dart.

Run directly inside the MOSA Messenger app. They add new UI screens, handle new message types, and interact with the user.

Server-Side Plugins

Written in PHP.

Run on the Internet Gateway. They act as bridges to external services (WhatsApp, Telegram) or host heavy logic/databases.

2. Client-Side Capabilities

Extend the app's functionality beyond messaging. These plugins turn MOSA into a swiss-army knife for field operations and entertainment.

Featured Examples

Manga Reader Plugin

A full-featured offline content reader.

  • Offline Sync: Download chapters via the mesh network from a local Gateway.
  • No Internet Needed: Perfect for entertainment in isolated locations.
  • Integrated directly into the app interface.

ConnectLog (Data Collection)

Field data collection and reporting tool.

  • Structured Forms: Create custom forms for surveys or incident reports.
  • Geo-Tagged: Automatically attaches GPS location to entries.
  • Mesh Upload: Data is packetized and sent to the HQ Gateway via the mesh.

3. Server-Side Capabilities

The Gateway isn't just a router; it's an application server. Server-side plugins enable integration with the outside world.

Bridge Plugins

WhatsApp & Telegram Bridges

Allows MOSA users to send and receive messages from these popular networks without direct internet access on their device.

class WhatsAppPlugin implements GatewayPlugin {
    public function onMessage(Message $msg) {
        // Defines how a MOSA message is converted 
        // to a WhatsApp API call
        $this->api->sendMessage($msg->to, $msg->content);
    }
}

Web Interaction

Plugins can also scrape websites, fetch weather data, or interact with any HTTP API, returning the result as a compressed message to the offline user.

4. For Developers

MOSA is open platform. You can build your own plugins to solve specific problems.

Getting Started

Check the documentation in the core repository:

/docs/16_Plugins/ /plugins/README.md