fork/craft-altify

Generates alt texts for images using different services that can be chosen from.

v1.0.0-beta.4 2024-04-26 09:09 UTC

This package is auto-updated.

Last update: 2024-04-26 09:13:11 UTC


README

Fork Logo

Alt text generator plugin for Craft CMS

Generates alt texts for images using different services that can be chosen from.

Requirements

This plugin requires Craft CMS 4.5.0 or later, and PHP 8.0.2 or later.

In order to use an alt text generator service, you'll need an api key or other credentials depending on the authentication method used.

Installation

You can install this plugin from the Plugin Store or with Composer.

From the Plugin Store

Go to the Plugin Store in your project’s Control Panel and search for “alt”. Then press “Install”.

With Composer

Open your terminal and run the following commands:

# go to the project directory
cd /path/to/my-project.test

# tell Composer to load the plugin
composer require fork/craft-altify

# tell Craft to install the plugin
./craft plugin/install alt

Usage

By default, this plugin uses the BLIP Model via Hugging Face Inference API. You will need an API Key to be able to use it. It is receommended to set it via ENV variable, but it is also possible to set it directly in the plugin's settings.

In order to use another model, go to the plugin settings and choose one of those available. You can also set the model via ENV variable. This can be a class name, or one of the following names.

Out-of-the-box Available models

Model name Link Config name
BLIP (large) https://huggingface.co/Salesforce/blip-image-captioning-large BLIP large model (Hugging Face)
BLIP (base) https://huggingface.co/Salesforce/blip-image-captioning-base BLIP base model (Hugging Face)
... ... ...

Out-of-the-box Available translation services

Model name Link Config name
DeepL https://developers.deepl.com/docs DeepL
OPUS MT (EN → DE) https://huggingface.co/Helsinki-NLP/opus-mt-en-de OPUS MT En -> De
Google T5 small (EN → DE) https://huggingface.co/google-t5/t5-small T5 small En -> De
... ... ...

Implementing own alt text generator services

You can implement your own alt text generator service by implementing the interface fork\alt\connectors\alttextgeneration\AltTextGeneratorInterface and configuring this plugin to use it by setting your own generator's class name via ENV variable.

In a future release it should be possible to register alt text generators with an event.

TODO

  • Make translation services site based to respect languages
  • Implement more alt text generation services
  • Maybe implement a self-hosted alt text generation service
  • Maybe implement an alt text generation service running in browser with TensorFlow JS
  • Implement an alt text generator registering event
  • Make public on GitHub, release on Packagist and the Craft Plugin Store
Fork Logo Brought to you by Fork Unstable Media GmbH