Skip to content

Commit ddd9a93

Browse files
committed
Merge branch '5.x' into 6.x
2 parents cbf85a6 + 6d650aa commit ddd9a93

436 files changed

Lines changed: 3215 additions & 3270 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

.github/ISSUE_TEMPLATE/bug_report.yml

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,6 @@
11
name: Bug report
22
description: Report a problem you're experiencing
33
labels: bug,unconfirmed,medium priority
4-
projects: ['filamentphp/2']
54
body:
65
- type: markdown
76
attributes:

.github/ISSUE_TEMPLATE/unexpected_major_version_breaking_change.yml

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,6 @@
11
name: Missing v5 upgrade guide step
22
description: If a breaking change is not documented in the upgrade guide and not automatically upgraded by the script, report it here
33
labels: unexpected major version breaking change,unconfirmed,high priority
4-
projects: ['filamentphp/2']
54
body:
65
- type: markdown
76
attributes:

CLAUDE.md

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -262,10 +262,19 @@ Screenshots are in `docs-assets/screenshots/`. To add new screenshots:
262262
export PUPPETEER_SKIP_CHROMIUM_DOWNLOAD=true
263263
export PUPPETEER_EXECUTABLE_PATH=$(which chromium)
264264
node script.js "schemas/layout/my-component/*" # Filter pattern
265+
node script.js --parallel "tables/*" # Process in parallel (add =N for a specific worker count)
265266
```
266267

267268
**Important:** The script expects `http://127.0.0.1:8000`. Don't use a custom port.
268269

270+
**Important:** Set up the app first with `php artisan migrate:fresh --seed && php artisan storage:link` — seeding also copies the file upload demos' sample images from `database/seed-images/` to the `public` disk.
271+
272+
`--parallel` starts its own servers on ports 8001+ (no `php artisan serve` needed), each with its own copy of the seeded database, because many demos mutate the database on mount and would corrupt each other's screenshots if they shared one. The pristine database is restored before every page load, so each screenshot always sees freshly seeded data — this makes parallel mode the most reliable way to run large batches (in serial mode, a demo that truncates tables can 404 later entries, e.g. tenancy or resource pages, until you reseed). Screenshots using the `configure` option run serially after the parallel pool because they mutate a PHP file shared by every server.
273+
274+
Schema entries without a `before` callback that share the same URL, viewport, and theme are captured from a single page load, and one browser process is shared across the whole run. If an entry needs an isolated page load (e.g. its demo mutates state when rendered), give it a `before` callback.
275+
276+
Pages are captured with `prefers-reduced-motion: reduce` and with CSS animations, transitions, and the input caret disabled, so screenshots never depend on which animation frame they caught (e.g. spinning loading indicators, modal fade-ins, caret blinking).
277+
269278
5. **Use in docs** with `<AutoScreenshot name="schemas/layout/my-component/simple" alt="Description" version="5.x" />`
270279

271280
Screenshots are generated in `images/light/` and `images/dark/`. Use natural, realistic content - not test-like examples.

docs-assets/app/.editorconfig

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,5 +14,5 @@ trim_trailing_whitespace = false
1414
[*.{yml,yaml}]
1515
indent_size = 2
1616

17-
[docker-compose.yml]
17+
[{compose,docker-compose}.{yml,yaml}]
1818
indent_size = 4

docs-assets/app/.env

Lines changed: 28 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -4,31 +4,50 @@ APP_KEY=base64:/RjsPfTKUG/cV+SQjSOfCfgFPZ85Zmwywiz5yevEZ0s=
44
APP_DEBUG=true
55
APP_URL=http://127.0.0.1:8000
66

7+
APP_LOCALE=en
8+
APP_FALLBACK_LOCALE=en
9+
APP_FAKER_LOCALE=en_US
10+
11+
APP_MAINTENANCE_DRIVER=file
12+
# APP_MAINTENANCE_STORE=database
13+
14+
# PHP_CLI_SERVER_WORKERS=4
15+
16+
BCRYPT_ROUNDS=12
17+
718
LOG_CHANNEL=stack
19+
LOG_STACK=single
820
LOG_DEPRECATIONS_CHANNEL=null
921
LOG_LEVEL=debug
1022

1123
DB_CONNECTION=sqlite
1224

13-
BROADCAST_DRIVER=log
14-
CACHE_DRIVER=file
15-
FILESYSTEM_DISK=local
16-
QUEUE_CONNECTION=sync
1725
SESSION_DRIVER=file
1826
SESSION_LIFETIME=120
27+
SESSION_ENCRYPT=false
28+
SESSION_PATH=/
29+
SESSION_DOMAIN=null
30+
31+
BROADCAST_CONNECTION=log
32+
FILESYSTEM_DISK=local
33+
QUEUE_CONNECTION=sync
34+
35+
CACHE_STORE=file
36+
# CACHE_PREFIX=
1937

2038
MEMCACHED_HOST=127.0.0.1
2139

40+
REDIS_CLIENT=phpredis
2241
REDIS_HOST=127.0.0.1
2342
REDIS_PASSWORD=null
2443
REDIS_PORT=6379
2544

26-
MAIL_MAILER=smtp
27-
MAIL_HOST=mailpit
28-
MAIL_PORT=1025
45+
MAIL_MAILER=log
46+
MAIL_SCHEME=null
47+
MAIL_HOST=127.0.0.1
48+
MAIL_PORT=2525
2949
MAIL_USERNAME=null
3050
MAIL_PASSWORD=null
31-
MAIL_ENCRYPTION=null
3251
MAIL_FROM_ADDRESS="hello@example.com"
3352
MAIL_FROM_NAME="${APP_NAME}"
3453

@@ -38,16 +57,4 @@ AWS_DEFAULT_REGION=us-east-1
3857
AWS_BUCKET=
3958
AWS_USE_PATH_STYLE_ENDPOINT=false
4059

41-
PUSHER_APP_ID=
42-
PUSHER_APP_KEY=
43-
PUSHER_APP_SECRET=
44-
PUSHER_HOST=
45-
PUSHER_PORT=443
46-
PUSHER_SCHEME=https
47-
PUSHER_APP_CLUSTER=mt1
48-
49-
VITE_PUSHER_APP_KEY="${PUSHER_APP_KEY}"
50-
VITE_PUSHER_HOST="${PUSHER_HOST}"
51-
VITE_PUSHER_PORT="${PUSHER_PORT}"
52-
VITE_PUSHER_SCHEME="${PUSHER_SCHEME}"
53-
VITE_PUSHER_APP_CLUSTER="${PUSHER_APP_CLUSTER}"
60+
VITE_APP_NAME="${APP_NAME}"

docs-assets/app/.env.example

Lines changed: 29 additions & 27 deletions
Original file line numberDiff line numberDiff line change
@@ -4,36 +4,50 @@ APP_KEY=
44
APP_DEBUG=true
55
APP_URL=http://localhost
66

7+
APP_LOCALE=en
8+
APP_FALLBACK_LOCALE=en
9+
APP_FAKER_LOCALE=en_US
10+
11+
APP_MAINTENANCE_DRIVER=file
12+
# APP_MAINTENANCE_STORE=database
13+
14+
# PHP_CLI_SERVER_WORKERS=4
15+
16+
BCRYPT_ROUNDS=12
17+
718
LOG_CHANNEL=stack
19+
LOG_STACK=single
820
LOG_DEPRECATIONS_CHANNEL=null
921
LOG_LEVEL=debug
1022

11-
DB_CONNECTION=mysql
12-
DB_HOST=127.0.0.1
13-
DB_PORT=3306
14-
DB_DATABASE=laravel
15-
DB_USERNAME=root
16-
DB_PASSWORD=
23+
DB_CONNECTION=sqlite
1724

18-
BROADCAST_DRIVER=log
19-
CACHE_DRIVER=file
20-
FILESYSTEM_DISK=local
21-
QUEUE_CONNECTION=sync
2225
SESSION_DRIVER=file
2326
SESSION_LIFETIME=120
27+
SESSION_ENCRYPT=false
28+
SESSION_PATH=/
29+
SESSION_DOMAIN=null
30+
31+
BROADCAST_CONNECTION=log
32+
FILESYSTEM_DISK=local
33+
QUEUE_CONNECTION=sync
34+
35+
CACHE_STORE=file
36+
# CACHE_PREFIX=
2437

2538
MEMCACHED_HOST=127.0.0.1
2639

40+
REDIS_CLIENT=phpredis
2741
REDIS_HOST=127.0.0.1
2842
REDIS_PASSWORD=null
2943
REDIS_PORT=6379
3044

31-
MAIL_MAILER=smtp
32-
MAIL_HOST=mailpit
33-
MAIL_PORT=1025
45+
MAIL_MAILER=log
46+
MAIL_SCHEME=null
47+
MAIL_HOST=127.0.0.1
48+
MAIL_PORT=2525
3449
MAIL_USERNAME=null
3550
MAIL_PASSWORD=null
36-
MAIL_ENCRYPTION=null
3751
MAIL_FROM_ADDRESS="hello@example.com"
3852
MAIL_FROM_NAME="${APP_NAME}"
3953

@@ -43,16 +57,4 @@ AWS_DEFAULT_REGION=us-east-1
4357
AWS_BUCKET=
4458
AWS_USE_PATH_STYLE_ENDPOINT=false
4559

46-
PUSHER_APP_ID=
47-
PUSHER_APP_KEY=
48-
PUSHER_APP_SECRET=
49-
PUSHER_HOST=
50-
PUSHER_PORT=443
51-
PUSHER_SCHEME=https
52-
PUSHER_APP_CLUSTER=mt1
53-
54-
VITE_PUSHER_APP_KEY="${PUSHER_APP_KEY}"
55-
VITE_PUSHER_HOST="${PUSHER_HOST}"
56-
VITE_PUSHER_PORT="${PUSHER_PORT}"
57-
VITE_PUSHER_SCHEME="${PUSHER_SCHEME}"
58-
VITE_PUSHER_APP_CLUSTER="${PUSHER_APP_CLUSTER}"
60+
VITE_APP_NAME="${APP_NAME}"

docs-assets/app/.gitignore

Lines changed: 18 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,19 +1,30 @@
1+
*.log
2+
.DS_Store
3+
.env.backup
4+
.env.production
5+
.phpactor.json
6+
.phpunit.result.cache
7+
/.codex
8+
/.cursor/
9+
/.fleet
10+
/.idea
11+
/.nova
112
/.phpunit.cache
13+
/.vscode
14+
/.zed
15+
/auth.json
216
/node_modules
317
/public/build
418
/public/css/filament
19+
/public/fonts-manifest.dev.json
520
/public/fonts/filament
621
/public/hot
722
/public/js/filament
823
/public/storage
924
/storage/*.key
25+
/storage/pail
1026
/vendor
27+
_ide_helper.php
1128
Homestead.json
1229
Homestead.yaml
13-
auth.json
14-
npm-debug.log
15-
yarn-error.log
16-
.phpunit.result.cache
17-
/.fleet
18-
/.idea
19-
/.vscode
30+
Thumbs.db

docs-assets/app/.npmrc

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1,2 @@
1-
min-release-age=7
1+
ignore-scripts=true
2+
audit=true

docs-assets/app/README.md

Lines changed: 10 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -25,29 +25,21 @@ Laravel is accessible, powerful, and provides tools required for large, robust a
2525

2626
Laravel has the most extensive and thorough [documentation](https://laravel.com/docs) and video tutorial library of all modern web application frameworks, making it a breeze to get started with the framework.
2727

28-
You may also try the [Laravel Bootcamp](https://bootcamp.laravel.com), where you will be guided through building a modern Laravel application from scratch.
28+
In addition, [Laracasts](https://laracasts.com) contains thousands of video tutorials on a range of topics including Laravel, modern PHP, unit testing, and JavaScript. Boost your skills by digging into our comprehensive video library.
2929

30-
If you don't feel like reading, [Laracasts](https://laracasts.com) can help. Laracasts contains over 2000 video tutorials on a range of topics including Laravel, modern PHP, unit testing, and JavaScript. Boost your skills by digging into our comprehensive video library.
30+
You can also watch bite-sized lessons with real-world projects on [Laravel Learn](https://laravel.com/learn), where you will be guided through building a Laravel application from scratch while learning PHP fundamentals.
3131

32-
## Laravel Sponsors
32+
## Agentic Development
3333

34-
We would like to extend our thanks to the following sponsors for funding Laravel development. If you are interested in becoming a sponsor, please visit the Laravel [Patreon page](https://patreon.com/taylorotwell).
34+
Laravel's predictable structure and conventions make it ideal for AI coding agents like Claude Code, Cursor, and GitHub Copilot. Install [Laravel Boost](https://laravel.com/docs/ai) to supercharge your AI workflow:
3535

36-
### Premium Partners
36+
```bash
37+
composer require laravel/boost --dev
3738

38-
- **[Vehikl](https://vehikl.com/)**
39-
- **[Tighten Co.](https://tighten.co)**
40-
- **[Kirschbaum Development Group](https://kirschbaumdevelopment.com)**
41-
- **[64 Robots](https://64robots.com)**
42-
- **[Cubet Techno Labs](https://cubettech.com)**
43-
- **[Cyber-Duck](https://cyber-duck.co.uk)**
44-
- **[Many](https://www.many.co.uk)**
45-
- **[Webdock, Fast VPS Hosting](https://www.webdock.io/en)**
46-
- **[DevSquad](https://devsquad.com)**
47-
- **[Curotec](https://www.curotec.com/services/technologies/laravel/)**
48-
- **[OP.GG](https://op.gg)**
49-
- **[WebReinvent](https://webreinvent.com/?utm_source=laravel&utm_medium=github&utm_campaign=patreon-sponsors)**
50-
- **[Lendio](https://lendio.com)**
39+
php artisan boost:install
40+
```
41+
42+
Boost provides your agent 15+ tools and skills that help agents build Laravel applications while following best practices.
5143

5244
## Contributing
5345

docs-assets/app/app/Console/Kernel.php

Lines changed: 0 additions & 27 deletions
This file was deleted.

0 commit comments

Comments
 (0)