LaravelPackages.net
Acme Inc.
Toggle sidebar
sfolador/ai-email-suggest

This package helps user to fix typos in email addresses by using openai api to suggest a valid email address.

21
5
1.0.10
About sfolador/ai-email-suggest

sfolador/ai-email-suggest is a Laravel package for this package helps user to fix typos in email addresses by using openai api to suggest a valid email address.. It currently has 5 GitHub stars and 21 downloads on Packagist (latest version 1.0.10). Install it with composer require sfolador/ai-email-suggest. Discover more Laravel packages by sfolador or browse all Laravel packages to compare alternatives.

Last updated

Latest Version on Packagist GitHub Tests Action Status GitHub Code Style Action Status Total Downloads

Never worry about typos in email addresses in Laravel

This package provides a simple way to suggest email addresses based on a given email address. The typical use case is when a user enters an email address with typos, i.e.: [email protected]. This package uses OpenAI to suggest an email addresses that are likely to be correct.

Installation

You can install the package via composer:

composer require sfolador/ai-email-suggest

You can publish the config file with:

php artisan vendor:publish --tag="ai-email-suggest-config"

This is the contents of the published config file:

return [
    'model' => 'text-davinci-003',
    'openai_key' => env('OPENAI_KEY'),
    'default_route' => 'ai-email-suggest',
    'use_cache' => true,
    // If you want to use the chatgpt API,
    // you need to set the following value to true:
    'use_chatgpt_api' => false,
    'throttle' => [
        'enabled' => false,
        'max_attempts' => 60,
        'prefix' => 'ai-email-suggest',
    ],
];

Remember to set your OpenAI key in your .env file.

Usage

$aiEmailSuggest = AiEmailSuggest::suggest('[email protected]');
// $aiEmailSuggest = '[email protected]'

It's possible to use this package from the frontend by invoking the route: "/ai-email-suggest" in POST by passing the email as a parameter. The response will be a JSON with the suggested email, such as:

{
  "suggestion": "[email protected]"
}

Cache clear

If you use a Cache driver that supports tags, you can clear the cache by invoking the command:

php artisan ai-email-suggest:clear-cache

ChatGTP

You can use the new ChatGPT API by setting the config value use_chatgpt_api to true.

Testing

composer test

TODO

  • [X] Add caching to avoid too many requests to OpenAI
  • [X] Add throttling to avoid too many requests to OpenAI
  • [X] Add support for cache clear

Changelog

Please see CHANGELOG for more information on what has changed recently.

Contributing

Please see CONTRIBUTING for details.

Security Vulnerabilities

Please review our security policy on how to report security vulnerabilities.

Credits

License

The MIT License (MIT). Please see License File for more information.

Star History Chart