The GeoGenius package for Laravel is a lightweight, flexible package that handles geolocation, timezone management, multilingual support, and more. It automatically retrieves detailed IP-based location data, detects the user’s timezone, sets the correct locale, and even initializes a fully-functional phone input field with country picker and validation — all seamlessly integrated into your app:
laravelGeoGenius()->geo()->locateVisitor();laravelGeoGenius()->geo()->getCountry();laravelGeoGenius()->geo()->getTimezone();laravelGeoGenius()->geo()->getLatitude();
This package also supports timezone detection and conversion using the timezone service provided by this package:
// Detect user's timezone$timezone = laravelGeoGenius()->timezone()->getUserTimezone(); // Convert UTC datetime to user timezoneecho laravelGeoGenius() ->timezone() ->convertToUserTimezone('2025-09-13 15:00:00');
Main Features
- Automatic Timezone Detection — via cookies, headers, or fallback strategies
- Timezone Conversion Helpers — convert timestamps automatically
- Country Picker & Phone Validation — detect visitor’s country, show dropdown, format & validate numbers
- Lightweight & Dependency-Free — no jQuery or frontend frameworks required
- Livewire Compatible — works seamlessly with Livewire apps
- Configurable Detection Strategy — customise detection method per app requirements
- Migration & Artisan Support — add timezone column effortlessly
- Caching & Offline Support — reduces API calls and handles offline gracefully
- Multilingual Ready — built-in translation and auto-translation support
💻 You can get started with this package on GitHub: devrabiul/laravel-geo-genius