Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 3 additions & 3 deletions .claude/settings.local.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"enableAllProjectMcpServers": true,
"enabledMcpjsonServers": [
"laravel-boost"
],
"enableAllProjectMcpServers": true
}
]
}
15 changes: 15 additions & 0 deletions .docker/traefik/config.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
http:
middlewares:
vite-cors:
headers:
accessControlAllowOriginList:
- "*"
accessControlAllowMethods:
- "GET"
- "POST"
- "OPTIONS"
accessControlAllowHeaders:
- "*"
accessControlAllowCredentials: true
accessControlMaxAge: 100
addVaryHeader: true
7 changes: 5 additions & 2 deletions .dockerignore
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,7 @@ node_modules

# Laravel
.mcp.json
boost.json
.env.example
.env.testing
phpstan.neon
Expand All @@ -13,13 +14,12 @@ tests
stubs
app-modules/**/tests
.phpunit.cache
.ai

# Ide
.editorconfig
.prettierignore
.prettierrc
*.md
*/**/.md
.idea
.vscode
.junie
Expand All @@ -34,3 +34,6 @@ app-modules/**/tests

# Others
art
.ai
.docker
auth.json
2 changes: 1 addition & 1 deletion .editorconfig
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ trim_trailing_whitespace = true
[*.md]
trim_trailing_whitespace = false

[*{.yml,.scss,.js,.json,.css}]
[*{.yml,.yaml,.css,.js,.json}]
indent_size = 2

[docker-compose*.yml]
Expand Down
72 changes: 41 additions & 31 deletions .env.example
Original file line number Diff line number Diff line change
Expand Up @@ -5,59 +5,61 @@ APP_DEBUG=true
APP_DOMAIN=laravelcm.local
APP_URL=http://laravelcm.local
ASSET_URL=https://laravelcm.local
APP_LOCALE=fr
APP_FALLBACK_LOCALE=fr

APP_PORT=8080
APP_SERVICE=laravelcm

APP_LOCALE=fr
APP_FALLBACK_LOCALE=fr
APP_FAKER_LOCALE=fr_FR

APP_MAINTENANCE_DRIVER=file
# APP_MAINTENANCE_STORE=database

PHP_CLI_SERVER_WORKERS=4

BCRYPT_ROUNDS=12

LOG_CHANNEL=stack
LOG_STACK=single,nightwatch
LOG_STACK=single,stderr
LOG_DEPRECATIONS_CHANNEL=null
LOG_LEVEL=debug
LOG_SOCKET_URL=buggregator:9913

# Ray Configuration
RAY_HOST=ray@buggregator
RAY_PORT=8000
# Sentry
SENTRY_LARAVEL_DSN=http://sentry@buggregator:8000/1
SENTRY_TRACES_SAMPLE_RATE=1.0
#Var Dumper
VAR_DUMPER_FORMAT=server
VAR_DUMPER_SERVER=tcp://buggregator:9912
# Inspector
INSPECTOR_URL=http://inspector@buggregator:8000
INSPECTOR_API_KEY=test
INSPECTOR_INGESTION_KEY=1test
INSPECTOR_ENABLE=true

DB_CONNECTION=pgsql
DB_HOST=pgsql
DB_PORT=5432
DB_DATABASE=laravelcm
DB_USERNAME=sail
DB_PASSWORD=password

SESSION_DRIVER=database
SESSION_LIFETIME=120
SESSION_ENCRYPT=false
SESSION_PATH=/
SESSION_DOMAIN=null

BROADCAST_DRIVER=log
BROADCAST_CONNECTION=log

MEDIA_DISK=media
FILESYSTEM_DISK="${MEDIA_DISK}"
FILAMENT_PATH=cpanel

QUEUE_CONNECTION=database
BROADCAST_CONNECTION=log
CACHE_DRIVER=file
SESSION_DRIVER=database
SESSION_LIFETIME=1400

MEMCACHED_HOST=127.0.0.1
CACHE_DRIVER=database
# CACHE_PREFIX=

MEMCACHED_HOST=memcached

REDIS_HOST=127.0.0.1
REDIS_CLIENT=phpredis
REDIS_HOST=redis
REDIS_PASSWORD=null
REDIS_PORT=6379

MAIL_MAILER=smtp
MAIL_HOST=mailhog
MAIL_MAILER=log
MAIL_SCHEME=null
MAIL_HOST=buggregator
MAIL_PORT=1025
MAIL_USERNAME=null
MAIL_PASSWORD=null
Expand All @@ -70,17 +72,19 @@ AWS_ACCESS_KEY_ID=sail
AWS_SECRET_ACCESS_KEY=password
AWS_DEFAULT_REGION=us-east-1
AWS_BUCKET=laravelcm
AWS_ENDPOINT="http://minio:9000"
AWS_URL="http://localhost:9000/laravelcm"
AWS_ENDPOINT=https://minio:9000
AWS_URL=https://${APP_DOMAIN}:${FORWARD_MINIO_PORT:-9000}/${AWS_BUCKET}
AWS_USE_PATH_STYLE_ENDPOINT=true
AWS_ROOT_DIRECTORY=public

PUSHER_APP_ID=
PUSHER_APP_KEY=
PUSHER_APP_SECRET=
PUSHER_APP_CLUSTER=mt1

MIX_PUSHER_APP_KEY="${PUSHER_APP_KEY}"
MIX_PUSHER_APP_CLUSTER="${PUSHER_APP_CLUSTER}"
VITE_APP_NAME="${APP_NAME}"
VITE_PUSHER_APP_KEY="${PUSHER_APP_KEY}"
VITE_PUSHER_APP_CLUSTER="${PUSHER_APP_CLUSTER}"

GITHUB_CLIENT_ID=
GITHUB_CLIENT_SECRET=
Expand Down Expand Up @@ -116,3 +120,9 @@ SSH_TUNNEL_PRIVATE_KEY="-----BEGIN OPENSSH PRIVATE KEY-----
oi!jkdiososbXCbnNzaC1rZXktdjEABG5vbmUAAAAEbm9uZQAAAAAAAAFwAAAAdzc2gtcn
... (votre clé SSH privée complète ici) ...
-----END OPENSSH PRIVATE KEY-----"

# Laravel Octane configuration
OCTANE_SERVER=off

WWWUSER=1000
WWWGROUP=1000
11 changes: 11 additions & 0 deletions .gemini/settings.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
{
"mcpServers": {
"laravel-boost": {
"command": "vendor/bin/sail",
"args": [
"artisan",
"boost:mcp"
]
}
}
}
18 changes: 9 additions & 9 deletions .github/ISSUE_TEMPLATE/config.yml
Original file line number Diff line number Diff line change
@@ -1,11 +1,11 @@
blank_issues_enabled: false
contact_links:
- name: Get Help
url: https://laravel.cm/forum/new-thread
about: If you need help with your project create a topic on our forum.
- name: Bug Report
url: https://github.com/laravelcm/issues
about: 'For projects issues, suggest changes on our issues repository.'
- name: Feature Request
url: https://github.com/laravelcm/laravel.cm/discussions/new?category=ideas
about: Share ideas for new features
- name: Get Help
url: https://laravel.cm/forum/new-thread
about: If you need help with your project create a topic on our forum.
- name: Bug Report
url: https://github.com/laravelcm/issues
about: "For projects issues, suggest changes on our issues repository."
- name: Feature Request
url: https://github.com/laravelcm/laravel.cm/discussions/new?category=ideas
about: Share ideas for new features
17 changes: 14 additions & 3 deletions .github/actions/setup/action.yml
Original file line number Diff line number Diff line change
@@ -1,25 +1,36 @@
name: CI Setup
description: "Sets up the environment for jobs during CI workflow"

inputs:
flux-username:
description: "Flux UI Pro username"
required: true
flux-license-key:
description: "Flux UI Pro license key"
required: true

runs:
using: composite
steps:
- name: 🐘 Setup PHP
uses: shivammathur/setup-php@v2
with:
php-version: "8.4"
php-version: 8.4
extensions: dom, curl, libxml, mbstring, zip, pcntl, pdo, pdo_pgsql, bcmath, soap, intl, gd, exif, iconv, imagick
tools: composer:v2
coverage: none
coverage: xdebug
- name: ℹ Setup Problem Matches
shell: sh
run: |
echo "::add-matcher::${{ runner.tool_cache }}/php.json"
echo "::add-matcher::${{ runner.tool_cache }}/phpunit.json"
- name: Add Flux Credentials Loaded From ENV
shell: sh
run: composer config http-basic.composer.fluxui.dev "${{ inputs.flux-username }}" "${{ inputs.flux-license-key }}"
- name: 🗂 Get composer cache directory
id: composer-cache
shell: sh
run: echo "::set-output name=dir::$(composer config cache-files-dir)"
run: echo "dir=$(composer config cache-files-dir)" >> $GITHUB_OUTPUT
- name: Cache dependencies
uses: actions/cache@v4
with:
Expand Down
1 change: 0 additions & 1 deletion .github/workflows/dependabot-auto-merge.yml
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,6 @@ jobs:
runs-on: ubuntu-latest
if: ${{ github.actor == 'dependabot[bot]' }}
steps:

- name: Dependabot metadata
id: metadata
uses: dependabot/fetch-metadata@v2.3.0
Expand Down
37 changes: 25 additions & 12 deletions .github/workflows/quality.yml
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,6 @@ on:
push:
branches:
- main
- develop
pull_request:

concurrency:
Expand All @@ -13,48 +12,62 @@ concurrency:

jobs:
pint:
runs-on: ubuntu-22.04
runs-on: ubuntu-latest
steps:
- name: 👀 Checkout
uses: actions/checkout@v6
- name: 🪄 Setup
- name: 🪄 Setup PHP
uses: ./.github/actions/setup
with:
flux-username: ${{ secrets.FLUX_USERNAME }}
flux-license-key: ${{ secrets.FLUX_LICENSE_KEY }}
- name: 🔮 Install Composer Dependencies
run: composer install --no-progress --no-interaction --prefer-dist --optimize-autoloader
- name: Install Node Dependencies & Build Assets
run: npm install && npm run build
- name: 🕵️‍♂️ Run Laravel Pint
run: ./vendor/bin/pint
run: composer test:lint

phpstan:
runs-on: ubuntu-22.04
runs-on: ubuntu-latest
steps:
- name: 👀 Checkout
uses: actions/checkout@v6
- name: 🪄 Setup
uses: ./.github/actions/setup
with:
flux-username: ${{ secrets.FLUX_USERNAME }}
flux-license-key: ${{ secrets.FLUX_LICENSE_KEY }}
- name: 🔮 Install Composer Dependencies
run: composer install --no-progress --no-interaction --prefer-dist --optimize-autoloader
- name: 🕵️‍♂️ Run PHPStan
run: composer types -- --ansi --no-interaction --no-progress --error-format=github
run: composer test:types

rector:
runs-on: ubuntu-22.04
type-coverage:
runs-on: ubuntu-latest
steps:
- name: 👀 Checkout
uses: actions/checkout@v6
- name: 🪄 Setup
- name: 🪄 Setup PHP
uses: ./.github/actions/setup
with:
flux-username: ${{ secrets.FLUX_USERNAME }}
flux-license-key: ${{ secrets.FLUX_LICENSE_KEY }}
- name: 🔮 Install Composer Dependencies
run: composer install --no-progress --no-interaction --prefer-dist --optimize-autoloader
- name: 🕵️‍♂️ Run Rector
run: composer rector:preview
- name: 🕵️‍♂️ Run PHPStan
run: composer test:type-coverage

composer:
runs-on: ubuntu-22.04
runs-on: ubuntu-latest
steps:
- name: 👀 Checkout
uses: actions/checkout@v6
- name: 🪄 Setup
uses: ./.github/actions/setup
with:
flux-username: ${{ secrets.FLUX_USERNAME }}
flux-license-key: ${{ secrets.FLUX_LICENSE_KEY }}
- name: 🕵️‍♂️ Run Composer Validate
run: composer validate
- name: 🕵️‍♂️ Run Composer Audit
Expand Down
Loading