承接 askdkc/breezejp 相关项目开发

从需求分析到上线部署,全程专人跟进,保证项目质量与交付效率

邮箱:yvsm@zunyunkeji.com | QQ:316430983 | 微信:yvsm316

askdkc/breezejp

Composer 安装命令:

composer require askdkc/breezejp

包简介

Laravel Starter Kit (Livewire+Breeze+Laravel UI+Jetstream)や標準のバリデーションメッセージを全て一瞬で日本語化し、言語切替機能も提供するパッケージです / This package provides all-in-one Japanese translation for Laravel StarterKit (Livewire StarterKit, Breeze, Laravel UI and Jetstream) packages and validation messages with language switching fea

README 文档

README

Latest Version on Packagist GitHub Tests Action Status GitHub Code Style Action Status Total Downloads

2026/5/19: PassKey(パスキー)機能の翻訳に対応しました🎉

スターターキットにパスキー機能が追加されたので、各メニューの日本語訳を追加しました!

2026/3/18: Laravel 13に対応しました🎉

Laravel 13でも引き続きご利用頂けます💪

2025/10/24: 2FA機能の翻訳に対応しました🎉

新しいスターターキット(Livewire版)もサポート

これは何? TL;DR

Laravelの各種スターターキット(Livewire, Breeze, Jetstream, UI)を下記2コマンドだけで自動で日本語化できちゃうパッケージです👍

composer require askdkc/breezejp --dev

php artisan breezejp

メモ:Laravel Sail(Docker)を使って開発している人は下記コマンドになります

./vendor/bin/sail composer require askdkc/breezejp --dev

./vendor/bin/sail artisan breezejp


また、下記1コマンドだけで言語切替機能も追加できます👍

php artisan breezejp --langswitch

メモ:Sailの場合

./vendor/bin/sail artisan breezejp --langswitch

さらにSvelte版スターターキットは下記1コマンドでテンプレートごと日本語化(ランタイム翻訳化)できます👍 (詳細

php artisan breezejp --svelte

便利だと思ったらサポートしてね

ko-fi

テーブルオブコンテンツ

はじめに

このパッケージはLaravel Breezeを日本語化するパッケージとして誕生しましたが、現在ではLaravel 12のスターターキット(Livewire版)、Breeze、Jetstream、Laravel UIに対応しています😁 また、Laravelが持つ各種バリデーションメッセージを日本語化するので、Breeze等をインストールしていない環境でも実は便利に使えます😏

基本的な機能を確認するにはLaravelのスターターキットのいずれかをインストールした後にこのパッケージをインストールしてください(以降の使い方の解説がその前提で書かれているため)

動作としてはLaravelのlangディレクトリ配下に日本語化に必要な翻訳ファイルを出力し、config内の言語設定も自動で日本語に変えています🇯🇵

翻訳について:
翻訳内容を修正したい場合には、このREADMEの日本語のカスタマイズをご確認願います🙇‍♂️

使い方

まずはLaravel Breezeのインストール

composer require laravel/breeze --dev

php artisan breeze:install blade --dark

(もしダークモードが不要な人は👇のように末尾の --darkオプション無しで実行してね)

php artisan breeze:install blade

php artisan migrate

そしてこのBreezejpパッケージのインストール

composerを使ってインストールしてください:

composer require askdkc/breezejp --dev

下記のコマンドで必要な言語ファイルの出力が実行されます:

php artisan breezejp

出力内容:

Laravel Breeze用に日本語翻訳ファイルを準備します
config/app.phpのlocaleをjaにします

 GitHubリポジトリにスターの御協力をお願いします🙏 (yes/no) [yes]: 
 
 (ブラウザが開いてこのGitHubリポが開きます。スター頂けると励みになります)
 
 Thank you! / ありがとう💓
日本語ファイルのインストールが完了しました!

Laravelの言語設定やタイムゾーン設定が自動で行われます

Breezejpはphp artisan breezejpコマンド実行時にLaravelの設定ファイル.envのlocaleを自動でenからjaに変更します👍

ついでにTimezoneの設定も日本向けに直します🕛

具体的にはインストール時に自動でこうなりますので、特に何もしないでもOK👀✨💓

---.env:インストール前---

'APP_TIMEZONE=UTC'

'APP_LOCALE=en'

'APP_FAKER_LOCALE=en_US'

php artisan breezejp の実行後

---config/app.php:インストール後---

'APP_TIMEZONE=Asia/Tokyo'

'APP_LOCALE=ja'

'APP_FAKER_LOCALE=ja_JP'

---config/app.php:インストール前---

'timezone' => 'UTC',

php artisan breezejp の実行後

---config/app.php:インストール後---

'timezone' => 'Asia/Tokyo',

動作確認

LaravelにアクセスするとBreezeの各メニューやバリデーションメッセージが日本語化されています

Laravelを起動して

php artsan serve

http://localhost:8000/ にアクセス

  • ユーザ登録画面

image

  • ログイン画面

image

  • 各種警告メッセージも日本語化されてます

image

  • Breezeから送信されるメールアドレス確認通知メールの日本語化や

image

  • パスワードリセット通知のメールの日本語化も対応

image

  • breeze v1.15から追加されたProfile画面の日本語化も対応

image


  • Breezejp v1.64からページネーションの日本語化にも対応しました

pagination

Laravel 12の新しいスターターキット(Livewire)のサポート

Laravel 12からの新しいLivewire版スターターキットに自分が送った多言語対応への追加修正PR(#24#39)がマージされたので、全体的に日本語化対応が進みました🎉

image

Svelteスターターキットのサポート / Svelte Starter Kit Support

Svelte版スターターキットはLivewire版と違いUIの英語テキストがハードコードされていて__()による翻訳が効きません。そこで下記コマンドを実行すると、t()翻訳ヘルパー(resources/js/lib/i18n.ts)の設置・lang/ja.jsonのInertia props共有・各.svelteテンプレートのt()呼び出しへの書き換えまで自動で行い、ランタイム翻訳(Livewireの__()相当)を組み込みます👍

php artisan breezejp --svelte

メモ:Sailの場合

./vendor/bin/sail artisan breezejp --svelte

通常のphp artisan breezejp実行時もSvelteスターターキットを自動検出して日本語化を提案します

--langswitchと組み合わせれば言語切替もSvelte UIでそのまま機能します(翻訳が見つからないキーは英語のまま表示されるので安全です)

注意: このコマンドはresources/js以下の.svelteファイルとapp/Http/Middleware/HandleInertiaRequests.phpを書き換えます。実行前にgitでコミットしておくことをお勧めします(再実行しても二重書き換えはされません)

Svelte独自の翻訳を追加する

Svelte側で追加の文言を翻訳する場合は、lang/ja.jsonに英語の文言をキーとして追加し、t()で呼び出します

  • lang/ja.json追加例
{
    "Settings": "設定",
    "Export data": "データをエクスポート"
}
  • svelteファイル追加例
<script lang="ts">
    import { t } from '@/lib/i18n';
</script>

<button>{t('Export data')}</button>
  • :placeholder形式の値も指定できます
{
    "Hello, :name": "こんにちは、:nameさん"
}
<p>{t('Hello, :name', { name: user.name })}</p>

翻訳キーが見つからない場合は、キー自身がそのまま表示されます。翻訳追加後は、現在のlocaleに対応するJSONファイル(例:lang/ja.json)へ同じキーを追加してください

補足として、breezejp --svelteは既存の.svelteテンプレートを自動変換するコマンドなので、 **後から追加する独自画面では上記のt()を直接使う** という区別も明確になります

パッケージの更新

Laravelで新規のバリデーションルールが追加された際に、情報が追えていれば、このパッケージも更新します

新たな翻訳ファイルを適用したい場合には以下のようにします

composer update
php artisan breezejp

注意: 次のセクションの「日本語のカスタマイズ」をしている時は、Breezejpの新規テンプレートで言語ファイルが上書きされますので、この上書きインストールは実施せずに個別修正で対応願います

日本語のカスタマイズ

言語ファイルは下記ディレクトリに出力されていますので、こちらのファイルの中身を修正することで自由にカスタマイズ可能です

.
└─ lang
   ├── ja.json ← Breezeの各画面の日本語ファイル / メール通知の翻訳もこちら
   └─ ja
       ├── auth.php ← 認証画面の警告メッセージの日本語ファイル
       ├── pagination.php ← ページ送りの日本語ファイル
       ├── passwords.php ← 認証画面のパスワード関係の日本語ファイル
       └── validation.php ← 各種バリデーションの日本語ファイル

テスト方法

composer test
composer analyse

メールのテスト方法

Laravel Breeze(Laravel UI、そしてJetstream)はユーザ登録されたメールアドレスを確認するメールやパスワードリセットをユーザ自身で出来るパスワードリセットメールを送信します

mailpitを使うやり方

mailpitを使えば上記のメールの日本語化が問題なく出来ているかをお手軽に可能です
(MAIL_MAILER=logという方法もありますが、日本語はlogファイル内で文字化けてしまい辛い🫠)

メモ: 2023/2/1にLaravelの.envのサンプルがmailhogからmailpitに変更されました
mailpitは旧来のmailhogの機能強化版ですが、使い方は一緒です

  • Laravelは標準の.envファイルにmailpitを使用するサンプルが書かれているので、こいつをちょっといじります
MAIL_MAILER=smtp
MAIL_HOST=localhost //ここをlocalhostに変えてね
MAIL_PORT=1025
MAIL_USERNAME=null
MAIL_PASSWORD=null
MAIL_ENCRYPTION=null
MAIL_FROM_ADDRESS="hello@example.com"
MAIL_FROM_NAME="${APP_NAME}"
  • macOSの場合はHomebrewをお使いだと思うので、brewでmailpitを入れます(まだ入れてないなら)
brew tap axllent/apps
brew install mailpit

メモ:Macじゃない人はこちら


  • mailpitを起動します
mailpit

メモ:(初回はネットワーク接続を許可する?とポップアップが出るので許可してください)


  • メール送信テスト

Breezeのlog in > パスワード忘れた?リンクから登録に使用したメールアドレスを入力しパスワードリセットリンクを送信します

image

  • mailpit確認画面にアクセスします

ブラウザを開いてhttp://localhost:8025にアクセスします

image

便利💓

mailhogを使うやり方

mailpitに置き換わるまではLaravelではmailhogを使ったメールテストのやり方が一般的でした
(mailpitはこのmailhogが元になっているので使い方が完全に一緒です)

  • .envファイルを下記のようにちょっといじります
MAIL_MAILER=smtp
MAIL_HOST=localhost //ここをlocalhostに変えてね
MAIL_PORT=1025
MAIL_USERNAME=null
MAIL_PASSWORD=null
MAIL_ENCRYPTION=null
MAIL_FROM_ADDRESS="hello@example.com"
MAIL_FROM_NAME="${APP_NAME}"
  • macOSの場合はHomebrewをお使いだと思うので、brewでmailhogを入れます(まだ入れてないなら)
brew install mailhog

メモ:Macじゃない人はこちら


  • mailhogを起動します
mailhog

メモ:(初回はネットワーク接続を許可する?とポップアップが出るので許可してください)


  • mailhog確認画面にアクセスします

ブラウザを開いてhttp://localhost:8025にアクセスします

image

あら、便利💓

mailtrapを使うやり方

古いバージョンのLaravelではMailtrapが.envにサンプルで書かれていたので、Mailtrapを使う方法も書いておきます

  • まずはサインアップ

Mailtrapにアクセスしてサインアップします(GitHubアカウント連携とか楽で良いです) image

  • メールボックスの作成 SandboxにあるSetup Inboxをクリックします

image

  • 右上にあるAdd Projectをクリックします

image

  • Project Nameを適当に入力(Laravelとか)してAddをクリックします

image

  • Add Inboxをクリックしてインボックスを作成します

image

image

  • 作成したインボックスをクリックします

image

  • IntegrationsをクリックしてLaravel 7+を選択します

image

  • Laravelの.env用の認証情報が表示されます (*下記の情報はサンプルで既に破棄済みです)

image

.envファイルの下記をMailtrapの認証情報に合わせて変更します

MAIL_MAILER=smtp //mailtrapを貼り付け
MAIL_HOST=smtp.mailtrap.io //mailtrapを貼り付け
MAIL_PORT=2525  //mailtrapを貼り付け
MAIL_USERNAME=生成されたUSERNAME  //mailtrapを貼り付け
MAIL_PASSWORD=生成されたPASSWORD  //mailtrapを貼り付け
MAIL_ENCRYPTION=tls  //mailtrapを貼り付け
MAIL_FROM_ADDRESS="hello@example.com"
MAIL_FROM_NAME="${APP_NAME}"
  • メールを送るとMailtrapのインボックス内に表示されます

image

あらあら、便利💓

Laravel Langと何が違うの?

確かに🦀 https://laravel-lang.comってのが世の中にありましたね。。。
(作る前に存在を知っておけば良かったぜ🤦‍♂️)

このBreezejpパッケージのメリットとしては、今のところ次の3点です:

  • breezejpコマンド一発で言語設定含めて日本語化完了(手間が段違い)
  • この日本語READMEの分かりやすさ(そうであって欲しい)
  • Breezeが送るメールに余計なカンマが含まれたりする👇部分が修正されてる(ときめかないカンマ全部消した💅)

image

あとはLaravel Langと動きも殆ど一緒(単に言語ファイルをlangに作ってくれる)なので、出力されたファイルを必要に応じて自由にカスタマイズしてご利用願います💓

おまけ

ついでにJetstreamの日本語化もできちゃいます🤫

jetstream

言語の切り替えサンプルアプリ

せっかく日本語に対応したので、例えば元の英語と日本語を切り替えられる方が便利よね?となるかと思います😁

そのためのサンプルアプリ:Language Switcher Sample (言語切り替えサンプル)を作成しましたので、ご参考にしてください💓

251501263-d807d110-971e-44c0-a284-9e1b57c73894

言語の切り替え機能のインストール

サンプルアプリなんて面倒だよ、さっさと言語切り替え使いたいよ!という人のために、言語切り替え機能をインストールする方法をご紹介します🤗

php artisan breezejp --langswitch

後は /language/{locale} にアクセスするだけで言語が切り替わるので、そこを叩くリクエストを送ってご利用ください

Laravelアプリの起動

php artisan serve
  • 日本語に切り替える例
http://127.0.0.1:8000/language/ja
  • 英語に切り替える例
http://127.0.0.1:8000/language/en

これでLaravel Breezeの各種メニューの言語が切り替わるのが確認できると思います🤯

簡単でしょ?😁

変更履歴

最近の変更履歴についてはCHANGELOGを参照してください

貢献について

このパッケージに貢献したい人はCONTRIBUTINGを参考にしてください

セキュリティや脆弱性について

セキュリティポリシーを見て、必要な情報を送ってくれると助かります

貢献者

ライセンス

The MIT License (MIT). Please see License File for more information.

パッケージ作りに興味がある人は

こちらにパッケージの作り方を書いたので参考にしてみてね

askdkc/breezejp 适用场景与选型建议

askdkc/breezejp 是一款 基于 PHP 开发的 Composer 扩展包,目前已累计 280.93k 次下载、GitHub Stars 达 593, 最近一次更新时间为 2022 年 10 月 25 日, 在 PHP 生态内属于活跃度较高的组件。

它主要适用于以下技术方向: 「translation」 「laravel」 「japanese」 「breeze」 「laravel ui」 「jetstream」 等业务场景。在实际项目中,围绕这些方向常见需要落地的问题包括:接口对接、性能调优、并发安全、与既有框架(Laravel / ThinkPHP / Yii / Webman 等)的兼容适配,以及生产环境的日志埋点与稳定性保障。

我们在过去多个企业项目中使用过 askdkc/breezejp 或与其功能相近的方案,如果你在选型或落地过程中遇到问题,例如 版本兼容、二次改造、私有化封装、与内部系统对接、生产 BUG 排查,欢迎联系我们协助评估。

围绕 askdkc/breezejp 我们能提供哪些服务?
定制开发 / 二次开发

基于 askdkc/breezejp 在你已有业务上做功能扩展、字段裁剪、UI 适配、与内部账号 / 权限 / 日志系统的深度对接。

BUG 修复 & 性能优化

线上偶发问题、内存泄漏、慢查询、并发异常等排查修复;针对高流量场景做缓存、队列、索引层面的调优。

项目外包 & 长期维护

承接完整的项目从需求 → 设计 → 开发 → 上线 → 长期运维;也可按月提供技术保姆服务。

yvsm@zunyunkeji.com QQ:316430983 微信:yvsm316 西安尊云信息科技 · 专注 PHP / Go / 分布式系统研发

统计信息

  • 总下载量: 280.93k
  • 月度下载量: 0
  • 日度下载量: 0
  • 收藏数: 593
  • 点击次数: 35
  • 依赖项目数: 1
  • 推荐数: 0

GitHub 信息

  • Stars: 593
  • Watchers: 2
  • Forks: 10
  • 开发语言: PHP

其他信息

  • 授权协议: MIT
  • 更新时间: 2022-10-25