• Stars
    star
    240
  • Rank 168,229 (Top 4 %)
  • Language
    PHP
  • License
    MIT License
  • Created about 2 years ago
  • Updated 7 months ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

A package to easily to display countries & languages flags in your Laravel Blade views

Blade Flags For Countries & Languages

Tests Code Style Latest Stable Version Total Downloads

A package to easily make use of TwEmoji Countries & Languages Flags in your Laravel Blade views.

For a full list of available icons see the SVG directory or preview all the available flags, check the gallery.

Requirements

  • PHP 8.0 or higher
  • Laravel 9.0 or higher

Installation

composer require outhebox/blade-flags

Blade Icons

Blade Flags uses Blade Icons under the hood. Please refer to the Blade Icons readme for additional functionality. We also recommend to enable icon caching with this library.

🎞️ here are video tutorial

How to install and how to implement the package.

πŸ“Ί Watch a 3-minute video by Povilas Korop showcasing the package.

Flutter version

If you are looking for a Flutter version of this package, check dash_flags, a Flutter package that provides a set of flags for all countries and languages. by Moaz El-sawaf.

Latest Stable Version

Configuration

Blade Flags also offers the ability to use features from Blade Icons like default classes, default attributes, etc. If you'd like to configure these, publish the blade-flags.php config file:

php artisan vendor:publish --tag=blade-flags-config

Usage

Icons can be used as self-closing Blade components which will be compiled to SVG icons:

<x-flag-country-br />
<x-flag-country-cn />
<x-flag-country-gb />
<x-flag-country-ru />
<x-flag-country-us />

...produces this:

<x-flag-language-en />
<x-flag-language-ar />
<x-flag-language-es />

...produces this:

You can also pass classes to your icon components:

<x-flag-country-us class="w-6 h-6"/>

Dynamic Examples

You can also use dynamic values to render icons:

  • For country flags:
<x-dynamic-component component="flag-country-{{ $country->iso2_code }}" />
  • For language flags:
<x-dynamic-component component="flag-language-{{ $langauge->code }}" />

Raw SVG Icons

If you want to use the raw SVG icons as assets, you can publish them using:

php artisan vendor:publish --tag=blade-flags --force

Then use them in your views like:

<img src="{{ asset('vendor/blade-flags/country-us.svg') }}" width="32" height="32"/>
<img src="{{ asset('vendor/blade-flags/language-en.svg') }}" width="32" height="32"/>

Changelog

Check out the CHANGELOG in this repository for all the recent changes.

License

Blade Flags is open-sourced software licensed under the MIT license.