Federated Emoji

approved

by ringeringeraja33

Render and insert custom emoji from Mastodon and compatible federated instances. - This plugin has not been manually reviewed by Obsidian staff.

35 downloadsUpdated 17d agoMIT

Federated Emoji

Federated Emoji renders and inserts Mastodon-style custom emoji in Obsidian while keeping your notes as portable Markdown.

Features

  • Render :shortcode: as custom emoji in Live Preview and Reading view.
  • Search emoji by shortcode after typing : and insert a result with the keyboard or mouse.
  • Open a searchable emoji picker from the ribbon or command palette.
  • Browse emoji grouped by instance and server-provided category.
  • Import from multiple Mastodon or compatible instances, with configurable priority for duplicate shortcodes.
  • Keep the Markdown source unchanged as :shortcode:.

Setup

  1. Enable Federated Emoji under Settings → Community plugins.
  2. Open Settings → Federated Emoji.
  3. Add one instance domain per line, such as mastodon.social.
  4. Wait for the automatic refresh or select Refresh now.

Type : in a Markdown note to search, or use Open emoji picker from the ribbon or command palette.

Network use and data

The plugin sends unauthenticated GET requests to /api/v1/custom_emojis on each instance configured by the user. Responses are cached in the plugin's local data.json. The plugin does not collect telemetry, create accounts, or send note content. Emoji images are loaded from the URLs returned by the configured instances.

Compatibility

  • Minimum Obsidian version: 1.5.0
  • Desktop and mobile

Manual installation

Download main.js, manifest.json, and styles.css from a release and place them in <vault>/.obsidian/plugins/federated-emoji/.

Development

npm ci
npm run dev

Run the release checks before publishing:

npm run check

License

MIT

For plugin developers

Search results and similarity scores are powered by semantic analysis of your plugin's README. If your plugin isn't appearing for searches you'd expect, try updating your README to clearly describe your plugin's purpose, features, and use cases.