This is a Laravel package that enables self-hosting of Google Fonts by fetching font CSS and asset files from Google's servers, storing them locally on a configurable filesystem disk, and serving them via Blade directives. The core logic resides in the `GoogleFonts` service class, which handles downloading, caching, and rendering fonts either inline or as external stylesheets with optional preload support. The package provides a fallback mechanism to load fonts directly from Google if local storage fails. It is well-tested with Pest and snapshot assertions, supports a wide range of Laravel versions (8–13) and PHP 8.0+, and follows Spatie's typical high-quality package structure with clean separation of concerns, config-driven behavior, and a dedicated Artisan command for prefetching fonts.
Laravel Exchange Rates is a Laravel package that provides a unified interface for interacting with multiple exchange rate APIs. It implements a driver pattern to support Exchange Rates API, Exchange Rates Data API, Exchange Rate Host, and CurrencyBeacon. The package allows developers to get current and historical exchange rates, convert currencies between different denominations, and cache results to minimize API calls. Architecture follows Laravel conventions with service providers, facades, and a Manager-based driver system. The SharedDriverLogicHandler component demonstrates strong abstraction skills by eliminating code duplication across API drivers while maintaining clean separation of concerns.
This repository is a CLI tool (`api-platform`) that scaffolds new API Platform projects. It generates Symfony or Laravel project skeletons with optional Docker infrastructure, Next.js PWA, React-admin SPA, and AI agent instruction files. The tool configures API formats (JSON-LD, JSON:API, HAL) and documentation viewers (Swagger UI, ReDoc, Scalar). It fetches Docker files from a pinned commit of `dunglas/symfony-docker` and patches compose.yaml for CORS headers. The codebase is well-structured with clean abstractions, idempotent patching patterns, and comprehensive test coverage. It demonstrates professional PHP engineering using Symfony Console components and modern PHP features.
This repository provides a Vite plugin (`@defstudio/vite-livewire-plugin`) that enables hot reload for Laravel Livewire components without a full page refresh. It watches for changes in Blade templates and Livewire PHP classes, then sends a custom event to the browser. The injected client-side script listens for this event and calls `$refresh` on all Livewire components, preserving their state. The plugin also supports optional CSS/JS refresh, an opt-in checkbox for toggling hot reload, and configurable watch patterns. It is a single-file TypeScript plugin with a robust configuration parser that accepts strings, arrays, or objects. The code is well-structured, includes comprehensive tests, and follows modern Vite plugin conventions. The repository is actively maintained with recent releases and CI workflows, though the last commit date appears anomalous (future date).
Esensi/Model is a Laravel package that provides a collection of PHP traits to extend Eloquent model functionality. It implements automatic validation, encryption, hashing, type juggling, attribute purging, relationship handling, soft deleting, and sluggable features through composable traits. The architecture follows Laravel's conventions with traits that can be mixed and matched to create customized model behaviors. Each trait is self-contained with corresponding interfaces defining clear contracts, and the package includes comprehensive unit tests. The base Model class combines all traits, while SoftModel adds soft deleting capabilities. The package demonstrates good craftsmanship in trait composition, proper use of Laravel's event system via observers, and attention to edge cases in attribute handling.
Coolify is a self-hosted Platform-as-a-Service (PaaS) that enables users to deploy and manage applications, databases, and services on their own infrastructure. It serves as an open-source alternative to Heroku, Netlify, or Vercel, supporting Docker-based deployments with Git integration (GitHub, GitLab, Gitea, Bitbucket), multiple build packs (Railpack, Nixpacks), and one-click service templates. The system manages servers, reverse proxies (Traefik/Caddy), SSL certificates, scheduled backups, and multi-channel notifications (email, Discord, Slack, Telegram, Pushover, webhook). The architecture is a Laravel monolith with a Livewire + Alpine.js frontend for the v4 UI and a React + TypeScript canvas-based interface for the v5 UI. Background jobs are handled by Laravel Horizon with dedicated queues for deployments, cron tasks, and reconciliation. Real-time updates use Soketi (a Pusher-compatible WebSocket server) and Laravel Echo. The system integrates with cloud providers (Hetzner, Vultr, DigitalOcean) for server provisioning and Stripe for subscription billing. A Model Context Protocol (MCP) server exposes resources and tools for AI assistant integration. Key data flows include: webhook ingestion from Git providers triggering deployment jobs, SSH-based remote command execution on managed servers, Docker Compose parsing and environment variable injection, database backup scheduling with S3 storage, and proxy configuration generation. The v5 architecture introduces a control-plane/agent split with Flux (HTTP socket) and coold (gRPC) components for improved scalability and isolation. External dependencies include Docker, PostgreSQL, Redis, Soketi, Stripe API, cloud provider APIs, and various notification service endpoints. The codebase is actively developed with frequent schema migrations and a dual v4/v5 code path, indicating ongoing architectural evolution.
This is a Laravel package that generates RSS, Atom, and JSON feeds for Laravel applications. It provides a configuration-driven approach where developers define feed sources (models or repositories), and the package handles route registration, item resolution, and format-specific rendering. The architecture follows Laravel package conventions with a service provider, controller-based endpoints, and Blade view templates for output generation. The package supports multiple feed formats (RSS 2.0, Atom 1.0, JSON Feed 1.1) with proper MIME type handling and W3C-compliant XML output. It includes a fluent builder pattern for FeedItem construction, validation of required fields, and a Blade component for automatically generating feed link tags in HTML pages. The codebase demonstrates solid Laravel package engineering with comprehensive test coverage using Pest and snapshot testing.
Akaunting is a self-hosted accounting and invoicing platform for small businesses and freelancers. It manages invoices, bills, banking transactions, transfers, reconciliations, multi-currency, multi-tax, recurring documents, and financial reports. It includes a customer portal for invoice viewing and payment, and supports multi-company, multi-user with role-based permissions. The system is highly internationalized with 40+ language locales. The architecture is built on a custom PHP framework (Illuminate) that extends Laravel conventions. It uses an event-driven architecture with domain events, listeners, and a job queue for async processing. The frontend combines Blade templates, Vue.js components, and Livewire for interactivity. Multi-tenancy is achieved through company scoping via a global query scope. The system is extensible via a module system with an app store, and includes a CLI for maintenance tasks. Key entry points include the installation wizard (controllers under Install/), authentication flows, and core CRUD controllers for sales, purchases, banking, and settings. Data flows typically involve controllers dispatching jobs that emit events, which listeners handle to update related entities, send notifications, or trigger side effects. Reports use a filter/group/rows event system for extensibility. Import/export is handled via Excel with multi-sheet support. External dependencies include PHP 8.1+, Node 18-20, and a database (MariaDB, MySQL, PostgreSQL, SQLite). It uses Laravel Mix for asset compilation, integrates with payment gateways, email services, and error trackers (Sentry, Bugsnag), and relies on a module marketplace at api.akaunting.com.
AnonAddy (addy.io) is a self-hosted anonymous email forwarding service built with Laravel, Inertia.js, and Vue 3. In production, it allows users to create email aliases that forward to real inboxes, with support for custom domains, PGP/MIME encryption, user-defined rules (sender/subject/header conditions with actions like block, quarantine, label), and a blocklist. The system receives inbound email via a Postfix pipe, applies rules, and either forwards, replies, or sends-from aliases with rewritten headers, List-Unsubscribe banners, and optional DKIM signing. Outbound sending handles VERP bounce tracking and stores failed deliveries with deduplication. The architecture is a monolith Laravel application with a REST JSON API (used by mobile/extension clients) and a server-driven SPA frontend. Key entry points include the ReceiveEmail console command, the CustomMailer driver, and numerous API controllers under /api/v1/. The frontend uses reusable Vue components and Inertia form handling across pages for alias, recipient, domain, rule, blocklist, and settings management.
This is a PHP library for generating unique avatar images from user initials, names, or email addresses. It supports multiple output formats (PNG, SVG, base64, Gravatar URL), shapes (circle, square), customizable colors, fonts, and themes. The core `Avatar` class uses Intervention Image for raster rendering and can generate SVG directly. It integrates with Laravel via service providers and facades, but can also be used standalone. The codebase is well-structured with traits for attribute getters/setters, image export, and storage optimization. The library is actively maintained, supports PHP 8.3+, and follows modern PHP practices. Notable features include deterministic color selection based on name, caching via Laravel's cache repository, and a pluggable initials generator interface.
laravel-governor is a Laravel package that provides role-based access control (RBAC) with team and ownership support. It integrates with Laravel's native authorization system via policies and gates, offering granular permission management through an admin interface built with Blade templates and Alpine.js. The package includes Eloquent models for roles, permissions, actions, ownership, entities, groups, teams, and assignments, along with migrations, seeders, Artisan commands for setup and publishing, and traits (Governing and Governable) to add authorization capabilities to User and other models. It features a caching layer with automatic invalidation via observers to optimize permission checks, and uses middleware to dynamically register custom policy methods via reflection. The architecture follows Laravel conventions with service providers for booting, controllers for handling requests, and policies for authorization logic.
Pterodactyl Panel is a production game-server management control panel. It manages a fleet of game servers (Minecraft, Source Engine, Rust, voice servers, etc.) running in Docker on remote nodes, coordinated by the companion Wings daemon. The PHP/Laravel backend provides a session-based admin UI, a JSON:API-style application API for provisioning, a permission-scoped client API for end users, and a remote API used by Wings for server installation, transfer, backup status, and SFTP authentication. The React/TypeScript frontend handles the modern client experience—console, file manager, databases, backups, schedules, network allocations, account management, and 2FA—while the admin area remains classic Blade/jQuery views. Data flows from MySQL/MariaDB through Eloquent repositories and service classes, then to Wings over HTTP via Guzzle; Redis is used for queues, cache, and sessions, and optional anonymous telemetry is collected. Architecturally this is a Laravel monolith with a clean layered separation: FormRequest validation, service classes, Eloquent repositories behind interfaces, Fractal transformers, event/observer hooks, and a sophisticated activity-logging subsystem. The frontend is organized into reusable components, custom hooks, and pure utility functions, many of which are isolated enough to lift into other projects. The codebase is mature and actively maintained with CI, integration tests, and security patch releases, but it carries visible technical debt: a dual UI stack (Blade plus React), older React 16 tooling (easy-peasy v4, react-hot-loader), 190+ migrations spanning a decade, and a few deprecated models/fields. The repository is clearly an application, not a data/research project; although it stores substantial operational data, its purpose is real-time system control rather than analysis.
Orchid is a comprehensive Laravel admin panel framework providing a declarative screen-based architecture for building complex admin interfaces. It offers a rich set of reusable UI components including layouts (tables, tabs, modals, charts, cards), form fields (50+ types), actions (buttons, links, dropdowns), and a full permissions/role system. The frontend is powered by Bootstrap 5, Hotwire Turbo for SPA-like navigation, Stimulus controllers for interactivity, and integrates major libraries like Leaflet, Quill, CodeMirror, Cropper.js, Tom Select, and Frappe Charts. The backend provides artisan generators for scaffolding, an attachment engine with duplicate detection, a filter/sort pipeline, metric/chart helpers, and an HMAC-signed state serialization mechanism. The codebase is production-quality, actively maintained (14.x series, Laravel 11 support), with extensive unit, feature, and browser tests. It is not a data research project; it is a pure application framework for building administrative web applications.
Laravel Dusk is a browser automation and testing library for Laravel applications. It provides a fluent, expressive API for interacting with web pages via ChromeDriver or Selenium WebDriver, enabling end-to-end testing without requiring JDK or Selenium server. The library integrates deeply with Laravel's testing infrastructure (PHPUnit/Pest), offering a TestCase base class, console commands for installation and ChromeDriver management, and a rich set of assertions and interactions (clicking, typing, waiting, screenshots, Vue component inspection). It is architecturally a library that wraps the php-webdriver package, adding Laravel-specific conveniences such as environment management, cookie encryption, authentication helpers, and page/component abstractions. The codebase is well-structured with traits for separation of concerns, macroable support for extensibility, and comprehensive unit and browser test coverage.
Laravel Sail is a command-line package that provides a Docker-powered local development environment for Laravel applications. It generates a Docker Compose file with a PHP application container and optional services such as MySQL, PostgreSQL, Redis, Meilisearch, Mailpit, and many more. The package includes console commands (`sail:install`, `sail:add`, `sail:publish`) that scaffold the Docker configuration and update the application's `.env` file with appropriate host and credential settings. It also publishes Dockerfiles for multiple PHP versions (8.0 through 8.5) and database initialization scripts. The architecture is a simple Laravel package consisting of a service provider, three console commands, and a trait for reusable Docker Compose interaction logic. The `bin/sail` bash script acts as a CLI wrapper that proxies commands (like `artisan`, `composer`, `node`, `npm`, `mysql`, etc.) into the running Docker container. Sail does not run a persistent service itself; it is purely a scaffolding and management tool executed during development setup. The codebase is well-structured, follows Laravel conventions, and is actively maintained with frequent releases. It demonstrates strong engineering practices for a development tool, though its primary value lies in configuration generation rather than novel algorithmic work.
This repository is a Laravel package that extends the framework's localization capabilities to include country-specific formatting. It provides a middleware that automatically detects the user's preferred language and country from browser headers or user profile, sets session variables, and offers a facade with methods to retrieve localized date formats, currency symbols, country names, and emoji flags. It also includes a language switcher controller and listens to login events to persist user preferences. The architecture follows Laravel's service provider pattern, with a main LangCountry class that reads data from bundled JSON files for each supported locale. The package integrates with Carbon for date formatting and provides Carbon macros for convenient use. The codebase is well-tested with 100% coverage, typed, and follows PSR-12 coding standards. The most reusable component is the PreferredLanguage service, which encapsulates the logic of parsing the Accept-Language header and matching against allowed locales with quality weighting and fallback. This could be extracted into a standalone library for browser language detection in any PHP project.
This is a Laravel service provider package that integrates the full-featured Aimeos e-commerce system into Laravel applications. It provides route definitions (admin backend via JQAdm, GraphQL API, JSON REST API, MCP bridge, frontend catalog/checkout/account pages), controllers that delegate to Aimeos HTML/JSONAPI clients, CLI commands for setup, account management, job execution, and cache clearing, and a set of service container bindings (aimeos.shop, aimeos.context, aimeos.config, etc.) that wire Laravel's session, mail, filesystem, and database managers into Aimeos' context. The architecture is that of a thin integration layer: the actual e-commerce logic (products, orders, customers, pricing, basket, checkout, shipping, payments, subscriptions, SEO, multi-vendor, multi-warehouse) lives in the separate aimeos-core and ai-* packages. This package handles Laravel-specific concerns like routing, authentication, configuration merging, and view rendering. It also includes a MCP (Model Context Protocol) bridge that exposes Aimeos admin tools through Laravel's optional MCP SDK, a resolver controller for URL-based content routing (catalog categories, products, CMS pages), and a set of facades for frontend controllers. The code is well-structured, follows PSR-4, uses scoped service bindings, and has comprehensive test coverage.
This is a Laravel package that integrates the HTMLPurifier library to sanitize and purify HTML input, primarily for XSS protection. It provides a service provider, a facade, a global helper function (`clean()`), and custom Eloquent casts (`CleanHtml`, `CleanHtmlInput`, `CleanHtmlOutput`) for automatic sanitization on model attributes. The core `Purifier` class wraps HTMLPurifier with Laravel's config and filesystem, supporting dynamic configuration, custom HTML definitions, and a non-string bypass option. The package is well-tested and supports Laravel 5.8 through 13.0, with active maintenance and low technical drift.
This is a Filament PHP plugin that integrates ApexCharts into Filament's widget system. It provides a base `ApexChartWidget` class with traits for features such as defer loading, filtering (simple select and custom form schema via Filament Schemas), dark mode, header/subheading, footer, content height, loading indicator, and polling. An Artisan command (`make:filament-apex-charts`) generates widget stubs for 20+ chart types (area, bar, boxplot, bubble, candlestick, column, donut, heatmap, line, mixed, pie, polarArea, radar, radialbar, rangeArea, scatter, sunburst, timelineRangeBars, treemap, funnel). The frontend is powered by an Alpine.js component that initializes ApexCharts and listens for Livewire events to update options reactively. The package includes a build step for its JavaScript asset (compiled via esbuild) and a test suite using Pest. The architecture follows Laravel package development best practices with separation of concerns via traits and a service provider. The code is well-maintained, supports modern PHP 8.2, Laravel 11-13, Filament 4/5, and Livewire 3/4.
This Laravel package provides an Eloquent-like interface for AWS DynamoDB, allowing developers to use familiar ORM methods with DynamoDB while maintaining compatibility with Laravel's ecosystem. The package implements a sophisticated query builder that translates Eloquent-style conditions into efficient DynamoDB operations, intelligently choosing between Query and Scan operations and selecting optimal indexes when available. Key features include support for simple and composite keys, global/secondary indexes, asynchronous operations via AWS SDK promises, query scopes, and automatic attribute marshaling/unmarshaling. The architecture follows Laravel conventions with service providers, facades, and a base DynamoDbModel class. Notable components include a condition analyzer that optimizes query operations and a parser subsystem that correctly builds DynamoDB expression syntax with proper attribute name/value handling.