Main Site monitor
UPFrontend
Blade templates
Tailwind CSS v4
Alpine.js
Vite 7 (
laravel-vite-plugin)Font Awesome (npm packages)
Backend
PHP 8.2+
Laravel 12
Filament 5 (admin panel)
PostgreSQL 16
Redis 7 (queue/cache)
Mailables + Jobs + Scheduler
DevOps / Runtime
Docker + Docker Compose
Nginx + PHP-FPM
Dedicated services for worker and scheduler
Mailhog for local email testing
Traefik override for production (
docker-compose.traefik.yml)
Monitoring
Command:
projects:check-status(scheduled every 5 minutes)Uptime/response time logging per project
DOWN notification job:
App\Jobs\SendProjectDownNotificationJobAlert email:
App\Mail\ProjectDownMail
Newsletter (latest updates included)
Admin resources: Campaigns, Subscribers, Lists, Templates
Template builder with blocks and image support from URL/upload/media
Real queue-based sending:
campaign ->
SendNewsletterCampaignJobrecipient ->
SendNewsletterRecipientJob
Scheduler for planned campaigns:
command
newsletters:dispatch-scheduledruns every minute
Public unsubscribe endpoint with token:
GET /newsletter/unsubscribe/{token}
GDPR / Cookies
GDPR checkbox for public forms
Server-side validation: newsletter subscription requires consent
Consent persistence (
gdpr_consent, text, timestamp) on the subscriberCookie consent banner on the homepage (accept/reject)
Cookies Policy + Privacy Policy pages with content/hero configurable from admin
Admin panel
Navigation by groups:
Dashboard, Projects, Page, Forms, Settings, MEDIA, GDPR, Widgets, Newsletter, LOG
Useful settings already exposed:
General (including header texts)
SEO, Footer, reCaptcha, Tags
GDPR settings + policy pages
Language texts, Email settings, Site settings