Download the PHP package sowrensen/svg-avatar-generator without Composer
On this page you can find all versions of the php package sowrensen/svg-avatar-generator. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Download sowrensen/svg-avatar-generator
More information about sowrensen/svg-avatar-generator
Files in sowrensen/svg-avatar-generator
Package svg-avatar-generator
Short Description Offline SVG avatar generator for Laravel
License MIT
Homepage https://github.com/sowrensen/svg-avatar-generator
Informations about the package svg-avatar-generator
Offline SVG Avatar Generator for Laravel
If you find this package useful, please consider to โญ it. That would be lit!
Generating SVG avatars on the fly is nothing new. There are tons of free/paid services and packages available to do that. So, why another package for same task?
Well, this one has some subtle but nifty advantages over available packages, here's a few of them:
- [x] Supports custom font. ๐งฃ
- [x] Supports gradient background. ๐ฆ
- [x] Supports random gradients based on defined presets in config. ๐ฆ
- [x] Multiple shapes: rectangular, rounded-rectangular, or circular. ๐
- [x] Ability to customize initials and extractor. โ๐ผ
- [x] No external api call is required, it's totally offline. ๐ฐ๏ธ
- [x] Unlike some other available options, doesn't require heavy-weight image processing libraries like Intervention. ๐งบ
- [x] Doesn't have any binary dependency, so nothing needs to be installed on server. ๐๏ธ
Requirements
Laravel | PHP | SVGAvatarGenerator |
---|---|---|
11.x | >=8.2 | 2.x |
9.x-10.x | >=8.1 | 1.x |
Installation
Install the package via composer:
For older versions:
[!CAUTION] Breaking change: Named color support, e.g. red, green in
foreground
andgradient_colors
is dropped since version 2.0. If you're using such names in config or in code, you should change them to hexadecimal code or keep using version 1.x releases.
Optionally, you can publish the config file with:
[!IMPORTANT] You should republish the config file after updating.
Usage
As model accessor
The usage of this package is stupidly simple. Use the svg-avatar.php
config file to set your preferred decoration.
Then use the Facade to generate an avatar on the fly. The recommended way to achieve that is defining an accessor in
your model:
[!TIP] If your accessor is different from the original attribute, you might want to put it in
$appends
array so that it loads automatically with your model.
Override default config
If you want you can generate an avatar totally different from your configured style. It has all helpful methods to make that possible:
Customize initials
You can define the second initial using studly case. For example,
Provided string | Produced initial |
---|---|
John Doe | JD |
JohnDoe | JD |
Johndoe | JO |
JohndoE | JE |
Customize Extractor
The default initial extractor class produces results shown above. However, if you want something different, you can create your own Extractor class. To do so create a new class that implements Sowren\SvgAvatarGenerator\Extractors\Extractor
interface. An ideal place to put this class would be under App\Extractors
namespace in your app directory.
After doing that, set the class as default extractor in config.
Sample Output
Testing
Run following command to execute test cases:
Changelog
Please see respective CHANGELOG-x.x
file for more information on what has changed recently.
License
The MIT License (MIT). Please see License File for more information.
All versions of svg-avatar-generator with dependencies
spatie/laravel-package-tools Version ^1.13.0
illuminate/contracts Version ^11.0