- Introduced `FetchNostrProfileJob` for retrieving and updating user Nostr profiles.
- Added Hungarian translations (`auth.php`, `passwords.php`, `validation.php`, and others) for improved localization.
- Integrated Laravel Horizon for enhanced queue management (`HorizonServiceProvider` added, `composer.json` updated).
- Updated German and Spanish language files to fix duplicate keys.
- Minor route addition for testing Nostr profile job dispatch.
- Implemented automatic creation of fallback users with default properties during login if no existing user is found.
- Standardized the redirect logic for the dashboard route with consistent parameter handling.
- Improved readability of route definitions by formatting parameters across multiple lines.
- Moved domain image selection logic into `get_domain_image` helper for reusability.
- Simplified `app-logo-icon.blade.php` and `SeoDataAttribute` by replacing inline logic with the new helper.
- Improved maintainability and consistency for handling `lang_country` sessions.
- Introduced `meetups.map-world` route for global meetup map view.
- Updated `meetups.map` route to include dynamic filtering based on country.
- Enhanced sidebar with icons and flags for improved navigation clarity.
- Replaced inline language selection logic in `profile.blade.php` with `<x-einundzwanzig.language-selector>`.
- Introduced Hungarian (`hu.json`) translations for improved multilingual support.
- Updated `DomainMiddleware` to include settings for Hungarian locale and portal branding.
- Introduced conditional logic to set SEO images dynamically based on `lang_country` session.
- Added fallback to regional defaults or "lat.png" for South American countries.
- Updated SEO definitions to utilize `domainImage` for consistent localization.
- Ensured unauthenticated users are redirected to the login page upon accessing the dashboard.
- Resolved misplaced `Livewire\Volt\Component` import in the file.
- Added `label` attributes to timezone and country choosers for improved accessibility.
- Renamed `meetups.landingpage-event` route to `meetups.landingpage-event-old` for clarity and potential deprecation.
- Removed redundant `heading` attribute from sidebar's navlist group for cleaner rendering.
- Replaced dynamic app name with static "Einundzwanzig Portal" in the logo component.
- Added translations for "Einundzwanzig Portal" in German, Dutch, Portuguese, English, and Spanish language files.
- Added Laravel Nightwatch for advanced monitoring and user sampling.
- Customized Livewire update route with rate-limiting middleware.
- Introduced a global fallback route with 404 response and sampling middleware.
- Enabled event listening for health diagnosis with Nightwatch sampling adjustments.
- Refined lazy loading prevention in local environments.
- Introduced `lang/pt` and `lang/nl` directories with translations for `auth.php`, `pagination.php`, `passwords.php`, and `validation.php`.
- Extended existing Spanish (`es.json`) and German (`de.json`) translations with additional keys and values.
- Integrated Laravel Nightwatch package for enhanced language coverage and insights.
- Updated `composer.json` and `composer.lock` to include the new package.
- Updated settings route links to include `country` parameter dynamically resolved from session.
- Improved relational queries by adding `city.country` to meetups map and `coursesEvents.course` to lecturers data.
- Added `DomainMiddleware` to dynamically set locale, language-country session, and app name based on domain.
- Updated views and components to leverage `lang_country` session for language and region-specific content.
- Enhanced country parameter retrieval with `config('app.domain_country')` as fallback.
- Refined language filtering by scanning available language files dynamically.
- Added language-specific assets and translations (`nl.json`, `es.json`) with improved language-region associations.
- Updated `app-logo-icon` to display region-specific images or default SVGs.
- Improved views with cleaner, dynamic rendering and session-aware functionalities.
- Split `from` and `to` fields in courses into `fromDate`, `fromTime`, `toDate`, and `toTime` for improved flexibility.
- Refactored meetups to use `startDate` and `startTime` instead of `start`.
- Enhanced validation to handle new date and time fields.
- Applied user-specific timezone conversions for event dates and times.
- Updated views to utilize new date and time pickers for consistent scheduling.
- Introduced a `SetTimezone` middleware to dynamically apply user-specific timezones.
- Added a `timezone chooser` component for users to select their timezone.
- Enhanced date and time display in views with `asDate`, `asTime`, and `asDateTime` methods.
- Updated `AppServiceProvider` to leverage `preventLazyLoading` in local environments and set custom `Carbon` instance for dates.
- Expanded configuration with `user-timezone`.
- Integrated timezone support into meetups and events for consistent scheduling.
- Updated multiple views to conditionally render actions based on authentication state for a better user experience.
- Added login links where actions require authentication.
- Added `meetup-popup` Blade component to display detailed meetup information.
- Updated map markers to show custom popup HTML with event and contact links.
- Enhanced map query with additional fields and upcoming event details.
- Styled Leaflet popups for better appearance.
- Added `#[SeoDataAttribute]` annotations to Livewire components for SEO management.
- Extended translations in English, Spanish, and German for better localization support.
- Introduced `config/seo.php` to centralize SEO settings.
- Implemented `SeoTrait` for dynamic SEO management.
- Added `SeoDataAttribute` to set SEO metadata at the class level.
- Updated various views to integrate dynamic SEO handling.
- Included fallback settings for titles, descriptions, images, and more.