Components

The ecosystem that allows you to build machine learning Memri ecosystem consists of 3 main components:

  1. Personal Online Datastore (Pod) written in Rust with a SQLite database providing a Graph API to store and access your data
  2. A web client built with Flutter
  3. Plugins written in python using pymemri

Memri Diagram

Plugins

On the public memri gitlab, there is a separate gitlab group for plugins with several examples that show what kind of plugins can be built with memri. Roughly there exist 3 types of plugins:

  • Plugins that import your data from external services are called Importers (Gmail, WhatsApp, etc.)
  • Plugins that connect new data to the existing data are called indexers (face recognition, spam detection, object detection, etc.)
  • Plugins that execute actions (sending messages, uploading files).

Tools

To reduce the amount of boilerplate code required to build plugins, memri comes with a collection of plugins templates. To build plugins, memri comes with a tool that allows you to inspect the Items and Edges in your pod using the pod explorer.