laravel new --using revolution/self-ordering
composer create-project revolution/self-ordering {name}
オープンソースのセルフオーダーシステム
スマホで注文するセルフオーダーの普及。
ここで定義してるセルフオーダーをテーブルオーダーと呼ぶこともあるし、店舗側で用意しているタブレットでの注文をセルフオーダーと呼ぶこともある。
言葉の定義は世の中的にもまだ固まってないけどここで提供するのはWebシステム一つで実現できるセルフオーダー。
スマホのカメラでQRコードを読み込んで、スマホのブラウザで注文システムを表示。アプリのインストールや会員登録は不要。
ver | PHP | Laravel |
---|---|---|
1.x | ^7.4/^8.0 | 8.x |
2.x | ^8.0 | 9.x/10.x |
3.x | ^8.1 | 10.x |
4.x | ^8.2 | 11.x |
5.x | ^8.2 | 12.x |
「Laravelでセルフオーダーシステムを作るためのスターターキット」なので必ずLaravelの新規プロジェクトを作るところから始めてください。ordering:install
コマンドでファイルが上書きされます。
curl -s "https://laravel.build/self-ordering-project" | bash
cd ./self-ordering-project
composer require revolution/self-ordering
php artisan ordering:install --vercel
# Vercel用のファイルが不要なら--vercelを付けない
php artisan ordering:install
npm install && npm run build
./vendor/bin/sail up -d
簡単に始めるためのプロジェクトテンプレート。
https://github.com/kawax/self-ordering-starter
ORDERING_MENU_DRIVER=array
ORDERING_ADMIN_PASSWORD=
ORDERING_DESCRIPTION=""
ORDERING_MICROCMS_API_KEY=
ORDERING_MICROCMS_ENDPOINT=https://
/
のルートはQRコード表示に使う。
//Route::get('/', function () {
// return view('welcome');
//});
Route::view('/', 'ordering::help');
インストール後にページを増やすのは自由。
新規プロジェクトにインストールしているはずなのでこのパッケージだけアンインストールはできません。プロジェクトごと終了。
上記の手順でインストール後に必要なことは「メニューデータの管理方法」と「注文情報の送信先」 を決める。
店舗側でメニューを変更するなら microCMS が一番簡単だろうからmicroCMSにアカウントを作って進める。
メールやLINE Notifyなど「注文された時にすぐに気付ける方法」を選ぶ。
基本的にはLaravelの通知機能を使う。
レポジトリ2つをローカルにgit clone
git clone https://github.com/kawax/self-ordering
git clone https://github.com/kawax/self-ordering-starter self-ordering-develop
cd ./self-ordering-develop
starter側のcomposer.jsonでローカルのパッケージを使うように指定。
"repositories": [
{
"type": "path",
"url": "../self-ordering"
}
],
"require": {
"revolution/self-ordering": "*"
},
Sailを使うならdocker-compose.ymlのvolumesも変更。
volumes:
- '.:/var/www/html'
- '../self-ordering:/var/www/self-ordering'
composer install
cp .env.example .env
php artisan key:generate
npm i && npm run build
starter側を起動しながらパッケージ側で作業する。
./vendor/bin/sail up -d
MIT