← Todas las extensiones

Mensajería · Sprig

Giphy

por Mango

Busca en GIPHY y añade un GIF animado al borrador de tu mensaje.

Instalar en Mango 3.110 KB · Mango 3.1
Versión
0.1.12
Tipo de ejecución
Panel de redacción
Grove API
1
Actualizado
2026-09-17

Permisos solicitados

3 permisos

  • Mantener datos localesAlmacena datos de extensión en este dispositivo en su propio espacio aislado.
  • Mantener secretos en el llaveroAlmacena valores privados en un espacio de nombres Keychain reservado para esta extensión.
  • Agregar comandos de barra inclinadaRegistra sus propios comandos y puede mostrar tarjetas de resultados de comandos nativos.

Acceso a la red

Hosts declarados

Grove bloquea todos los destinos de red excepto estos orígenes declarados:

  • https://api.giphy.com
  • https://giphy-analytics.giphy.com
  • https://media.giphy.com
  • https://media0.giphy.com
  • https://media1.giphy.com
  • https://media2.giphy.com
  • https://media3.giphy.com
  • https://media4.giphy.com

Desde la extensión

README · Inglés

Giphy

Giphy is a Grove composer utility for Mango. Open it from the message field’s + menu, search or browse trending GIFs, and choose one to add its URL to the current draft. It uses GIPHY’s REST API directly; no third-party SDK is bundled. The /gif command in version 0.1.10 requires Mango 3.1 or newer. Older Mango versions can still install the extension and open its picker from the + menu.

Giphy also declares an on-demand /gif command. Mango can discover it without keeping the composer utility running in the background:

  • /gif opens trending GIFs.
  • /gif cats or /gif search cats opens the picker with cats filled in.
  • /gif first cats adds the first matching GIF URL directly to the draft.

Nothing is sent automatically. Both selecting a tile and using first return the URL to Mango’s ordinary composer for review.

Version 0.1.12 prevents iPhone search-field zoom and asks compatible Mango 3.1 builds to hand an already-open composer keyboard to search. Closing returns to the draft. Opening the picker with the keyboard hidden leaves it hidden until you tap search. Older hosts still support browsing and manual search focus.

The Sprig includes a shared, revocable beta API key. If its hourly quota is busy, open Grove Manager → Giphy → Settings and add a personal GIPHY API key. Personal keys are saved in Mango’s per-Sprig Keychain namespace and never written to the package or ordinary web storage. The bundled key is lightly obfuscated to avoid casual extraction, but—as with every browser-delivered API key—it is not a secret and GIPHY’s revocable quota remains the boundary.

The picker stores a stable pseudonymous customer id in Giphy’s isolated Grove web storage. Search requests and GIPHY’s documented visible/click analytics are sent directly to GIPHY so result ranking can improve. The picker only adds a URL to Mango’s draft, so it does not claim that the GIF was sent. No IRC identity, network id, channel, nickname, message history, or draft text is sent to GIPHY.

GIPHY and the GIPHY name are trademarks of Giphy, Inc. Use of the service is subject to the GIPHY API Terms and GIPHY Privacy Policy.

npm install
npm run build
npm run package
manifest.jsonchat.mangoirc.grove.giphy
{
  "grove": 1,
  "id": "chat.mangoirc.grove.giphy",
  "name": "Giphy",
  "version": "0.1.12",
  "description": "Search GIPHY and add an animated GIF to your message draft.",
  "author": {
    "name": "Mango",
    "url": "https://mangoirc.chat"
  },
  "readme": "README.md",
  "entry": "index.html",
  "settings": "settings.html",
  "presentation": {
    "surfaces": [
      "composer"
    ],
    "defaultSurface": "composer",
    "minSize": {
      "width": 320,
      "height": 220
    },
    "defaultSize": {
      "width": 520,
      "height": 500
    }
  },
  "contributions": {
    "uploadProviders": [],
    "commands": [
      {
        "name": "gif",
        "summary": "Find a GIF and add it to the draft",
        "usage": "[search|first] [keywords]",
        "subcommands": [
          {
            "name": "search",
            "summary": "Open the GIF picker with a search",
            "usage": "<keywords>"
          },
          {
            "name": "first",
            "summary": "Add the first search result to the draft",
            "usage": "<keywords>"
          }
        ]
      }
    ]
  },
  "capabilities": [
    "storage",
    "storage.secure",
    "commands.register"
  ],
  "hostPermissions": [
    "https://api.giphy.com",
    "https://giphy-analytics.giphy.com",
    "https://media.giphy.com",
    "https://media0.giphy.com",
    "https://media1.giphy.com",
    "https://media2.giphy.com",
    "https://media3.giphy.com",
    "https://media4.giphy.com"
  ]
}