World Clock plugin screenshot
Dark mode ready
Multilingual support
Supports v5.x

World Clock

A beautiful card widget to display world clocks by timezone.

Tags: Widget
Supported versions:
4.x 3.x
João Paulo Leite Nascimento avatar Author: João Paulo Leite Nascimento

Documentation

Version:

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

The Filament World Clock plugin designed to showcase global timezones in a card format is a user-friendly tool that allows users to effortlessly display current times across various regions worldwide.

Screenshot of Application Feature

#Compatibility

Package Version Filament Version
1.x 3.x
2.x 4.x
3.x 5.x

#Installation

You can install the package via composer:

composer require joaopaulolndev/filament-world-clock

[!NOTE] to publish the assets is necessary to run the command below:

php artisan vendor:publish --tag=filament-world-clock-assets --force

Optionally, you can publish the views using

php artisan vendor:publish --tag="filament-world-clock-views"

Optionally, you can publish the translations using

php artisan vendor:publish --tag="filament-world-clock-translations"

You can publish the flags

[!NOTE] to publish the flags is necessary to run the command below:

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

#Usage

Add in AdminPanelProvider.php

use Joaopaulolndev\FilamentWorldClock\FilamentWorldClockPlugin;

->plugins([
    FilamentWorldClockPlugin::make()
        ->timezones([
            'America/New_York',
            'America/Sao_Paulo',
            'Asia/Tokyo',
        ])
])

Optionally, you can add more configs as example below:

use Joaopaulolndev\FilamentWorldClock\FilamentWorldClockPlugin;

FilamentWorldClockPlugin::make()
    ->timezones([
        'America/New_York',
        'America/Sao_Paulo',
        'Asia/Tokyo',
    ])
    ->setTimeFormat('H:i') //Optional time format default is: 'H:i'
    ->shouldShowTitle(false) //Optional show title default is: true
    ->setTitle('Hours') //Optional title default is: 'World Clock'
    ->setDescription('Different description') //Optional description default is: 'Show hours around the world by timezone'
    ->setQuantityPerRow(1) //Optional quantity per row default is: 1
    ->setColumnSpan('full') //Optional column span default is: '1/2'
    ->setSort(10)

#Custom Flags

Flags are automatically resolved for all valid PHP timezones using DateTimeZone::getLocation(). If you need to override a specific timezone flag, you can use the customFlags() method:

FilamentWorldClockPlugin::make()
    ->timezones([
        'America/New_York',
        'America/Denver',
        'Pacific/Guam',
    ])
    ->customFlags([
        'America/Denver' => '/path/to/custom-flag.svg',
        'Pacific/Guam' => asset('images/guam-flag.svg'),
    ])

[!NOTE] Custom flags take the highest priority. For timezones without a country code (e.g. Etc/UTC), a placeholder flag is used as fallback.

#Testing

composer test

#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.