folklore / laravel-folklore
The shared foundation of Folklore's Laravel sites: entities, repositories, JSON columns with references, and opt-in modules
Requires
- php: ^8.3
- folklore/laravel-json-data: ^1.0.0-alpha.2
- illuminate/console: ^12.69|^13.30
- illuminate/contracts: ^12.69|^13.30
- illuminate/database: ^12.69|^13.30
- illuminate/pagination: ^12.69|^13.30
- illuminate/support: ^12.69|^13.30
Requires (Dev)
- cviebrock/eloquent-sluggable: ^11.0|^12.0|^13.0
- fakerphp/faker: ^1.23
- folklore/laravel-image: ^2.0.0-alpha.1
- folklore/laravel-locale: ^8.1
- folklore/laravel-mediatheque: ^2.0.0-alpha.7
- google/apiclient: ^2.18
- guzzlehttp/guzzle: ^7.15.2|^8.0.1
- larastan/larastan: ^3.0
- laravel/fortify: ^1.13
- laravel/framework: ^12.69|^13.30
- laravel/pint: ^1.18
- mockery/mockery: ^1.6
- orchestra/testbench: ^10.0|^11.0
- parsecsv/php-parsecsv: ^1.3
- phpunit/phpunit: ^11.5|^12.0
Suggests
- cviebrock/eloquent-sluggable: The pages module.
- folklore/laravel-image: The image sizes of the medias module (^2.0.0-alpha.1).
- folklore/laravel-locale: The pages module (^8.1).
- folklore/laravel-mediatheque: The medias module (^2.0.0-alpha.7), and the pages module, whose models use its HasMedias.
- google/apiclient: Google Places (^2.18), until it moves to Laravel's HTTP client.
- guzzlehttp/guzzle: Downloading media from a URL, Google Places and Customer.io (^7.15.2|^8.0.1).
- laravel/fortify: The auth module (^1.13).
- laravel/framework: The modules use parts of Laravel that a Laravel application has: HTTP, routing, auth, mail, broadcasting, views.
- parsecsv/php-parsecsv: The CSV export of Google Drive (^1.3).
- pubnub/pubnub: The pubnub module: broadcasting events through PubNub.
- ramsey/uuid: Support\ShortUuid, which every Laravel application has.
Provides
None
Conflicts
- folklore/laravel-mediatheque: <2.0.0-alpha.7
Replaces
None
This package is auto-updated.
Last update: 2026-10-27 14:17:39 UTC
README
The shared foundation of the Laravel sites built by Folklore: entities and repositories over Eloquent models, JSON columns with references to other models (through folklore/laravel-json-data), and opt-in modules for medias, pages, auth and third-party services.
Versions
| Version | Branch | Status | Requires |
|---|---|---|---|
| 2.x | v2.x (default) |
In development, released as alphas | PHP 8.3+, Laravel 12 or 13 |
| 1.x | v1.1 |
Maintained: fixes and security | PHP 8.3+, Laravel 11 to 13 |
Installation
2.x, during its pre-releases:
composer require folklore/laravel-folklore:^2.0@alpha folklore/laravel-json-data:^1.0@alpha
folklore/laravel-json-data is required by the core. Require it too while it has no stable release: a stability flag doesn't apply to the dependencies of a required package.
The modules are off by default and are turned on in config/site.php; each one suggests the packages it needs. See the architecture.
1.x:
composer require folklore/laravel-folklore:^1.1
Documentation
- docs/: architecture, decisions, the plan of 2.0 (roadmap) and the upgrade guide from 1.1.
- CHANGELOG
- AGENTS.md: how to work on this repository.
License
MIT