reinauer / plugins

e-ink dashboard plugin logic

Home Page:https://docs.usetrmnl.com

Repository from Github https://github.comreinauer/pluginsRepository from Github https://github.comreinauer/plugins

TRMNL plugins

non-exhaustive collection of open source TRMNL plugins. in sharing these assets we intend to provide transparency in how TRMNL manages user data with respect to 3rd party integrations.

native plugin preview images and configuration options: https://usetrmnl.com/integrations

community Recipes: https://usetrmnl.com/recipes

Native plugin examples

native plugin structure:

  1. file plugin_name.rb represents instance of a PluginSetting (user-owned), which belongs to a Plugin (global, immutable)
  2. screens are generated by first invoking Plugins::<PluginName>.new(plugin_setting).locals
  3. the locals hash / JSON object contains all the values needed for rendering a screen
  4. files inside /views interpolate values from locals using ERB syntax (<%= var %>)
  5. views prefixed with _, for example _common, are called "partials" (or 'components' in other frameworks)
  6. shared code is not intended to "just work" but to showcase which values, and how, are extracted from 3rd party apps for TRMNL screen generation

Plugin utilities

Community plugins

to be featured here, add trmnl topic to your repo, then open a PR or join the developer-only Discord server (link inside TRMNL UI).

About

e-ink dashboard plugin logic

https://docs.usetrmnl.com


Languages

Language:HTML 68.3%Language:Ruby 31.7%